diff --git a/.files b/.files index 78abf5a..fc5eae1 100644 Binary files a/.files and b/.files differ diff --git a/.rev b/.rev index a91fad7..586b7b3 100644 --- a/.rev +++ b/.rev @@ -2449,4 +2449,41 @@ See bugzilla 1167537 for the gory details. from containers 1103306 + + 05c26124be131b9fcdd987dbc84f8513 + 4.19.1 + + anag+factory + - Modernize python-rpm.spec to stop using deprecated macros + (%python_build and %python_install). + +- update to rpm-4.19.1 + +- fix Source url to match what is listed on https://rpm.org/download.html + +- disable sysusers handling for now + +- update to rpm-4.19.1 + * new spec snippet support for dynamic spec generation + * new sysusers.d integration for automated user and group handling + * new CMake build system + * removal of various deprecated and/or unused APIs + * various internal code cleanups +- refreshed patches: + * brp-compress-no-img.patch + * brp.diff + * brpcompress.diff + * build.diff + * enable-postin-scripts-error.diff + * fileattrs.diff + * findlang.diff + * findsupplements.diff + * langnoc.diff + * macrosin.diff + * platformin.diff + * posttrans.diff + * refreshtestarch.diff + * rpm-findlang-inject-metainfo.patch + 1132932 + diff --git a/brp-compress-no-img.patch b/brp-compress-no-img.patch index 7a2b78c..cd12289 100644 --- a/brp-compress-no-img.patch +++ b/brp-compress-no-img.patch @@ -7,5 +7,5 @@ + case $(file "$f") in *"image data"*) continue;; esac + case "$f" in - *.gz|*.Z) gunzip -f "$f"; check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.\(gz\|Z\)$//'`;; - *.bz2) bunzip2 -f "$f"; check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.bz2$//'`;; + *.gz|*.Z) gunzip -f "$f" || check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.\(gz\|Z\)$//'`;; + *.bz2) bunzip2 -f "$f" || check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.bz2$//'`;; diff --git a/brp.diff b/brp.diff index 7a62141..66466cb 100644 --- a/brp.diff +++ b/brp.diff @@ -1,5 +1,5 @@ ---- scripts/brp-strip-comment-note.orig 2022-04-07 11:13:19.072518377 +0000 -+++ scripts/brp-strip-comment-note 2022-12-02 13:07:03.700394762 +0000 +--- scripts/brp-strip-comment-note.orig 2023-09-19 10:10:10.000000000 +0000 ++++ scripts/brp-strip-comment-note 2023-10-09 12:22:27.504732553 +0000 @@ -15,7 +15,7 @@ esac # Strip .comment and .note sections (the latter only if it is not allocated) @@ -9,11 +9,13 @@ note="-R .note" if $OBJDUMP -h $f | grep '^[ ]*[0-9]*[ ]*.note[ ]' -A 1 | \ grep ALLOC >/dev/null; then ---- scripts/brp-strip.orig 2022-04-07 11:13:19.072518377 +0000 -+++ scripts/brp-strip 2022-12-02 13:04:21.392758270 +0000 -@@ -14,4 +14,4 @@ esac - - # Strip ELF binaries - find "$RPM_BUILD_ROOT" -type f \! -regex "${RPM_BUILD_ROOT}/*usr/lib/debug.*" \! -name "*.go" -print0 | \ -- xargs -0 -r -P$NCPUS -n32 sh -c "file \"\$@\" | sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped.*/\1/p' | grep -v 'no machine' | xargs -I\{\} $STRIP -g \{\}" ARG0 -+ xargs -0 -r -P$NCPUS -n32 sh -c "file \"\$@\" | grep -v ' shared object,' | grep -v '/lib/modules/ | sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped.*/\1/p' | grep -v 'no machine' | xargs -I\{\} $STRIP -g \{\}" ARG0 +--- scripts/brp-strip.orig 2023-09-19 10:10:10.000000000 +0000 ++++ scripts/brp-strip 2023-10-09 12:24:36.920521652 +0000 +@@ -35,6 +35,7 @@ strip_elf_binaries() + ! -regex "${RPM_BUILD_ROOT}/*usr/lib/debug.*" \ + ! -name "*.go" -links "${nlinks}" -print0 | \ + xargs -0 -r -P${nprocs} -n${MAX_ARGS} sh -c "file \"\$@\" | \ ++ grep -v ' shared object,' | grep -v '/lib/modules/ | \ + sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped.*/\1/p' | \ + grep -v 'no machine' | \ + xargs -I\{\} $STRIP -g \{\}" ARG0 diff --git a/brpcompress.diff b/brpcompress.diff index 635134e..f8284e9 100644 --- a/brpcompress.diff +++ b/brpcompress.diff @@ -49,10 +49,10 @@ - *.bz2) bunzip2 -f "$f"; b=`echo "$f" | sed -e 's/\.bz2$//'`;; - *.xz|*.lzma) unxz -f "$f"; b=`echo "$f" | sed -e 's/\.\(xz\|lzma\)$//'`;; - *.zst|*.zstd) unzstd -f --rm $f; b=`echo "$f" | sed -e 's/\.\(zst\|zstd\)$//'`;; -+ *.gz|*.Z) gunzip -f "$f"; check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.\(gz\|Z\)$//'`;; -+ *.bz2) bunzip2 -f "$f"; check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.bz2$//'`;; -+ *.xz|*.lzma) unxz -f "$f"; check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.\(xz\|lzma\)$//'`;; -+ *.zst|*.zstd) unzstd -f --rm $f; check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.\(zst\|zstd\)$//'`;; ++ *.gz|*.Z) gunzip -f "$f" || check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.\(gz\|Z\)$//'`;; ++ *.bz2) bunzip2 -f "$f" || check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.bz2$//'`;; ++ *.xz|*.lzma) unxz -f "$f" || check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.\(xz\|lzma\)$//'`;; ++ *.zst|*.zstd) unzstd -f --rm $f || check_for_hard_link $d "$f"; b=`echo "$f" | sed -e 's/\.\(zst\|zstd\)$//'`;; *) b="$f";; esac diff --git a/build-aux.tar.bz2 b/build-aux.tar.bz2 new file mode 120000 index 0000000..ebdfb2b --- /dev/null +++ b/build-aux.tar.bz2 @@ -0,0 +1 @@ +/ipfs/bafkreidj5lmjjengnltmdklas55xzrlh4vxxjvjvuarpygjtgtlyx2by6e \ No newline at end of file diff --git a/build.diff b/build.diff index 88983e2..80a2a80 100644 --- a/build.diff +++ b/build.diff @@ -1,6 +1,6 @@ ---- installplatform -+++ installplatform -@@ -118,6 +118,11 @@ +--- installplatform.orig 2023-09-19 10:10:10.000000000 +0000 ++++ installplatform 2023-10-09 12:56:44.709209329 +0000 +@@ -210,6 +210,11 @@ for ARCH in noarch `grep ^arch_canon $RP PPD="${DESTDIR}/${platformdir}/${ARCH}-${OS}" [ -d $PPD ] || mkdir -p $PPD @@ -10,5 +10,5 @@ + fi + cat $PLATFORM \ - | sed -e "s,@RPMRC_OPTFLAGS@,$RPMRC_OPTFLAGS," \ - -e "s,@RPMCANONARCH@,$CANONARCH,g" \ + | sed -e "s,=RPMRC_OPTFLAGS=,$RPMRC_OPTFLAGS," \ + -e "s,=RPMCANONARCH=,$CANONARCH,g" \ diff --git a/canongnu.diff b/canongnu.diff new file mode 100644 index 0000000..f5e1630 --- /dev/null +++ b/canongnu.diff @@ -0,0 +1,11 @@ +--- CMakeLists.txt.orig 2023-10-13 12:38:26.953411554 +0000 ++++ CMakeLists.txt 2023-10-13 12:40:11.057239934 +0000 +@@ -144,7 +144,7 @@ function(makemacros) + + set(RPMCANONVENDOR ${host_vendor}) + set(RPMCANONOS ${host_os}) +- set(RPMCANONGNU -gnu) ++ set(RPMCANONGNU -gnu CACHE STRING "gnu os suffix") + + if (ENABLE_CUTF8) + set(C_LOCALE "C.UTF-8") diff --git a/cpuid_lzcnt.patch b/cpuid_lzcnt.patch deleted file mode 100644 index 722cbe6..0000000 --- a/cpuid_lzcnt.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 6b7c58474df3b416b1acb8b58e73b7edf73b8c43 Mon Sep 17 00:00:00 2001 -From: Fabian Vogt -Date: Mon, 6 Mar 2023 17:50:42 +0100 -Subject: [PATCH] The bit for LZCNT is in CPUID 0x80000001, not 1 - -The GCC headers put bit_LZCNT into the list for CPUID 1 %ecx values, but that -corresponds to VMX. LZCNT is actually advertised in CPUID 0x80000001 %ecx, -which is also referred to as "ABM" by AMD and some other places. ---- - lib/rpmrc.c | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git lib/rpmrc.c lib/rpmrc.c -index fc2ed5fe2..66ce947ae 100644 ---- lib/rpmrc.c -+++ lib/rpmrc.c -@@ -747,7 +747,6 @@ static inline void cpuid(uint32_t op, uint32_t op2, uint32_t *eax, uint32_t *ebx - /* Features (%eax == 1) */ - /* %ecx */ - #define bit_SSE3 (1 << 0) --#define bit_LZCNT (1 << 5) - #define bit_SSSE3 (1 << 9) - #define bit_FMA (1 << 12) - #define bit_CMPXCHG16B (1 << 13) -@@ -762,6 +761,7 @@ static inline void cpuid(uint32_t op, uint32_t op2, uint32_t *eax, uint32_t *ebx - /* Extended Features (%eax == 0x80000001) */ - /* %ecx */ - #define bit_LAHF_LM (1 << 0) -+#define bit_LZCNT (1 << 5) - - /* Extended Features (%eax == 7) */ - /* %ebx */ -@@ -787,9 +787,10 @@ static int get_x86_64_level(void) - if ((op_1_ecx & op_1_ecx_lv2) == op_1_ecx_lv2 && (op_80000001_ecx & bit_LAHF_LM)) - level = 2; - -- const unsigned int op_1_ecx_lv3 = bit_LZCNT | bit_FMA | bit_MOVBE | bit_OSXSAVE | bit_AVX | bit_F16C; -+ const unsigned int op_1_ecx_lv3 = bit_FMA | bit_MOVBE | bit_OSXSAVE | bit_AVX | bit_F16C; - const unsigned int op_7_ebx_lv3 = bit_BMI | bit_AVX2 | bit_BMI2; -- if (level == 2 && (op_1_ecx & op_1_ecx_lv3) == op_1_ecx_lv3 && (op_7_ebx & op_7_ebx_lv3) == op_7_ebx_lv3) -+ if (level == 2 && (op_1_ecx & op_1_ecx_lv3) == op_1_ecx_lv3 && (op_7_ebx & op_7_ebx_lv3) == op_7_ebx_lv3 -+ && (op_80000001_ecx & bit_LZCNT)) - level = 3; - - const unsigned int op_7_ebx_lv4 = bit_AVX512F | bit_AVX512DQ | bit_AVX512CD | bit_AVX512BW | bit_AVX512VL; --- -2.39.2 - diff --git a/enable-postin-scripts-error.diff b/enable-postin-scripts-error.diff index 443c871..c7e9566 100644 --- a/enable-postin-scripts-error.diff +++ b/enable-postin-scripts-error.diff @@ -1,6 +1,6 @@ ---- lib/rpmscript.c -+++ lib/rpmscript.c -@@ -390,7 +390,7 @@ rpmRC rpmScriptRun(rpmScript script, int +--- lib/rpmscript.c.orig 2023-09-19 10:10:10.000000000 +0000 ++++ lib/rpmscript.c 2023-10-09 13:10:38.011654503 +0000 +@@ -463,7 +463,7 @@ rpmRC rpmScriptRun(rpmScript script, int if (script == NULL) return RPMRC_OK; ARGV_t args = NULL; @@ -9,7 +9,7 @@ RPMLOG_ERR : RPMLOG_WARNING; rpmRC rc; int script_type = RPMSCRIPTLET_FORK | RPMSCRIPTLET_EXEC; -@@ -637,5 +637,8 @@ rpmscriptTypes rpmScriptType(rpmScript s +@@ -723,5 +723,8 @@ rpmscriptTypes rpmScriptType(rpmScript s rpmscriptFlags rpmScriptFlags(rpmScript script) { @@ -19,11 +19,11 @@ + flags |= RPMSCRIPT_FLAG_CRITICAL; + return flags; } ---- macros.in -+++ macros.in -@@ -1293,5 +1293,10 @@ end - %{expand:%__scm_setup_%{__scm} %{!-v:-q}}\ - %{!-N:%autopatch %{-v} %{-p:-p%{-p*}}} +--- macros.in.orig 2023-10-09 13:10:35.043659922 +0000 ++++ macros.in 2023-10-09 13:10:38.015654495 +0000 +@@ -1377,5 +1377,10 @@ end + end + } +# Should errors in %post scriptlet be propagated as errors? +# diff --git a/fileattrs.diff b/fileattrs.diff index c62e237..be0667b 100644 --- a/fileattrs.diff +++ b/fileattrs.diff @@ -1,20 +1,21 @@ ---- fileattrs/elf.attr.orig 2021-09-23 19:29:51.474079693 +0000 -+++ fileattrs/elf.attr 2021-09-23 19:35:43.413332593 +0000 -@@ -1,3 +1,4 @@ +--- fileattrs/elf.attr.orig 2023-09-19 10:10:10.000000000 +0000 ++++ fileattrs/elf.attr 2023-10-09 13:07:09.252042587 +0000 +@@ -1,4 +1,4 @@ %__elf_provides %{_rpmconfigdir}/elfdeps --provides %__elf_requires %{_rpmconfigdir}/elfdeps --requires %__elf_magic ^(setuid,? )?(setgid,? )?(sticky )?ELF (32|64)-bit.*$ -+%__elf_exclude_path ^/usr/lib/debug/ ---- fileattrs/perl.attr.orig 2021-06-21 12:00:44.587611741 +0000 -+++ fileattrs/perl.attr 2021-09-23 19:29:51.474079693 +0000 +-%__elf_exclude_path ^/lib/modules/.*\.ko?(\.[[:alnum:]]*)$ ++%__elf_exclude_path (^/usr/lib/debug/)|(^/lib/modules/.*\.ko?(\.[[:alnum:]]*)$) +--- fileattrs/perl.attr.orig 2023-09-19 10:10:10.000000000 +0000 ++++ fileattrs/perl.attr 2023-10-09 12:58:36.893003334 +0000 @@ -1,3 +1,4 @@ -%__perl_requires %{_rpmconfigdir}/perl.req +# disabled for now +#%__perl_requires %{_rpmconfigdir}/perl.req %__perl_magic ^.*[Pp]erl .*$ %__perl_flags exeonly ---- fileattrs/perllib.attr.orig 2021-06-21 12:00:44.587611741 +0000 -+++ fileattrs/perllib.attr 2021-09-23 19:29:51.478079685 +0000 +--- fileattrs/perllib.attr.orig 2023-09-19 10:10:10.000000000 +0000 ++++ fileattrs/perllib.attr 2023-10-09 12:58:36.893003334 +0000 @@ -1,5 +1,6 @@ %__perllib_provides %{_rpmconfigdir}/perl.prov -%__perllib_requires %{_rpmconfigdir}/perl.req diff --git a/findlang.diff b/findlang.diff index 9ced3b4..f16c924 100644 --- a/findlang.diff +++ b/findlang.diff @@ -1,5 +1,5 @@ ---- scripts/find-lang.sh.orig 2021-06-21 12:00:44.650612737 +0000 -+++ scripts/find-lang.sh 2021-09-23 19:12:01.428275661 +0000 +--- scripts/find-lang.sh.orig 2023-09-19 10:10:10.000000000 +0000 ++++ scripts/find-lang.sh 2023-10-09 12:32:44.303726903 +0000 @@ -37,11 +37,11 @@ the top of the tree containing the files PACKAGE_NAME is the %{name} of the package. This should also be the basename of the .mo files. the output is written to @@ -15,7 +15,7 @@ --with-qt find Qt translation files --with-html find HTML files --with-man find localized man pages -@@ -65,9 +65,9 @@ else NAMES[0]=$1 +@@ -66,9 +66,9 @@ else NAMES[0]=$1 fi shift @@ -27,7 +27,7 @@ QT=# MAN=# HTML=# -@@ -89,6 +89,14 @@ while test $# -gt 0 ; do +@@ -91,6 +91,14 @@ while test $# -gt 0 ; do KDE= shift ;; @@ -42,7 +42,7 @@ --with-qt ) QT= shift -@@ -118,11 +126,13 @@ while test $# -gt 0 ; do +@@ -124,11 +132,13 @@ while test $# -gt 0 ; do shift ;; esac @@ -59,7 +59,7 @@ for NAME in ${NAMES[@]}; do -@@ -132,7 +142,7 @@ s:'"$TOP_DIR"':: +@@ -138,7 +148,7 @@ s:'"$TOP_DIR"':: '"$NO_ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*/'"$NAME"'\.mo$\):%lang(\2) \1\2\3: s:^\([^%].*\):: s:%lang(C) :: @@ -68,7 +68,7 @@ find "$TOP_DIR" -type d|sed ' s:'"$TOP_DIR"':: -@@ -140,27 +150,27 @@ s:'"$TOP_DIR"':: +@@ -146,27 +156,27 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$GNOME"'s:\(.*/share/help/\)\([^/_]\+\)\([^/]*\)\(/[a-zA-Z0-9.\_\-]\+\)$:%lang(\2) %doc \1\2\3\4/: s:^\([^%].*\):: s:%lang(C) :: @@ -103,7 +103,7 @@ find "$TOP_DIR" -type f|sed ' s:'"$TOP_DIR"':: -@@ -168,7 +178,7 @@ s:'"$TOP_DIR"':: +@@ -174,7 +184,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]\+-\([^/.]\+\)\.omf\):%lang(\2) \1: s:^[^%].*:: s:%lang(C) :: @@ -112,7 +112,7 @@ find $TOP_DIR -type d|sed ' s:'"$TOP_DIR"':: -@@ -181,14 +191,14 @@ s:'"$TOP_DIR"':: +@@ -187,14 +197,14 @@ s:'"$TOP_DIR"':: s:%lang(.*) .*/mate/help/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]\+/.*:: s:^\([^%].*\):: s:%lang(C) :: @@ -129,7 +129,7 @@ find "$TOP_DIR" -type f|sed ' s:'"$TOP_DIR"':: -@@ -196,7 +206,7 @@ s:'"$TOP_DIR"':: +@@ -202,7 +212,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$MATE"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]\+-\([^/.]\+\)\.omf\):%lang(\2) \1: s:^[^%].*:: s:%lang(C) :: @@ -138,7 +138,7 @@ KDE3_HTML=`kde-config --expandvars --install html 2>/dev/null` if [ x"$KDE3_HTML" != x ] && [ -d "$TOP_DIR$KDE3_HTML" ]; then -@@ -208,7 +218,7 @@ s:'"$TOP_DIR"':: +@@ -214,7 +224,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: s:%lang(C) :: @@ -147,7 +147,7 @@ fi KDE4_HTML=`kde4-config --expandvars --install html 2>/dev/null` -@@ -221,7 +231,7 @@ s:'"$TOP_DIR"':: +@@ -227,7 +237,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: s:%lang(C) :: @@ -156,7 +156,7 @@ fi KF5_HTML=`kf5-config --expandvars --install html 2>/dev/null` -@@ -234,7 +244,7 @@ s:'"$TOP_DIR"':: +@@ -240,7 +250,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: s:%lang(C) :: @@ -165,7 +165,7 @@ fi find "$TOP_DIR" -type d|sed ' -@@ -245,7 +255,7 @@ s:'"$TOP_DIR"':: +@@ -251,7 +261,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$HTML"'s:\(.*/doc/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: s:%lang(C) :: @@ -174,7 +174,7 @@ find "$TOP_DIR" -type f -o -type l|sed ' s:'"$TOP_DIR"':: -@@ -258,7 +268,7 @@ s:'"$TOP_DIR"':: +@@ -264,7 +274,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$QT"'s:^\([^%].*/[^/]\+_\([a-zA-Z]\+\)\.qm$\):%lang(\2) \1: s:^[^%].*:: s:%lang(C) :: @@ -183,7 +183,7 @@ find "$TOP_DIR" -type d|sed ' s:'"$TOP_DIR"':: -@@ -266,19 +276,24 @@ s:'"$TOP_DIR"':: +@@ -272,22 +282,25 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+$\):%lang(\2) \1*: s:^\([^%].*\):: s:%lang(C) :: @@ -207,8 +207,9 @@ + rm -f $MO_NAME_NEW exit 1 fi -+ + +sort -u $MO_NAME_NEW >> $MO_NAME +rm -f $MO_NAME_NEW -+ - exit 0 + + if [[ "$SUBPKGS" == "NO" ]]; then + exit 0 diff --git a/findsupplements.diff b/findsupplements.diff index 0fdc416..1630b2b 100644 --- a/findsupplements.diff +++ b/findsupplements.diff @@ -1,25 +1,15 @@ ---- scripts/Makefile.am.orig 2022-04-07 11:13:19.072518377 +0000 -+++ scripts/Makefile.am 2022-12-02 13:21:08.886566747 +0000 -@@ -18,7 +18,7 @@ EXTRA_DIST = \ - rpm.daily rpm.log rpm.supp rpm2cpio.sh \ - rpm_macros_provides.sh \ - tgpg vpkg-provides.sh \ -- find-requires find-provides \ -+ find-requires find-provides find-supplements \ - ocamldeps.sh \ - pkgconfigdeps.sh \ - fontconfig.prov script.req -@@ -30,7 +30,7 @@ rpmconfig_SCRIPTS = \ - brp-remove-la-files \ - check-files check-prereqs \ - check-buildroot check-rpaths check-rpaths-worker \ -- find-lang.sh find-requires find-provides \ -+ find-lang.sh find-requires find-provides find-supplements \ - perl.prov perl.req \ - pkgconfigdeps.sh \ - ocamldeps.sh \ ---- scripts/find-supplements.orig 2022-12-02 13:21:08.886566747 +0000 -+++ scripts/find-supplements 2022-12-02 13:21:08.886566747 +0000 +--- scripts/CMakeLists.txt.orig 2023-10-09 13:14:50.011193421 +0000 ++++ scripts/CMakeLists.txt 2023-10-09 13:15:00.395174379 +0000 +@@ -5,6 +5,7 @@ install(PROGRAMS + check-files check-prereqs + check-buildroot check-rpaths check-rpaths-worker + find-lang.sh find-requires find-provides ++ find-supplements + perl.prov perl.req + pkgconfigdeps.sh + ocamldeps.sh +--- scripts/find-supplements.orig 2023-10-09 13:14:37.371216603 +0000 ++++ scripts/find-supplements 2023-10-09 13:14:37.371216603 +0000 @@ -0,0 +1,3 @@ +#!/bin/sh + diff --git a/langnoc.diff b/langnoc.diff index 44a14f9..5045dad 100644 --- a/langnoc.diff +++ b/langnoc.diff @@ -1,6 +1,6 @@ ---- macros.in.orig 2021-09-23 19:54:19.515028659 +0000 -+++ macros.in 2021-09-23 19:54:25.495016311 +0000 -@@ -1150,6 +1150,7 @@ package or when debugging this package.\ +--- macros.in.orig 2023-10-09 13:07:58.463949074 +0000 ++++ macros.in 2023-10-09 13:08:04.079938403 +0000 +@@ -1192,6 +1192,7 @@ Supplements: (%{name} = %{version}-%{r # %files -f %{name}.lang # %find_lang %{_rpmconfigdir}/find-lang.sh %{buildroot} @@ -8,9 +8,9 @@ # Commands + opts to use for retrieving remote files # Proxy opts can be set through --httpproxy/--httpport popt aliases, ---- scripts/find-lang.sh.orig 2021-09-23 19:54:19.507028675 +0000 -+++ scripts/find-lang.sh 2021-09-23 19:54:25.495016311 +0000 -@@ -75,6 +75,8 @@ MO= +--- scripts/find-lang.sh.orig 2023-10-09 13:07:58.475949051 +0000 ++++ scripts/find-lang.sh 2023-10-09 13:08:04.079938403 +0000 +@@ -77,6 +77,8 @@ SUBPKGS=NO MO_NAME=${NAMES[0]}.lang ALL_NAME=# NO_ALL_NAME= @@ -19,8 +19,8 @@ while test $# -gt 0 ; do case "${1}" in --with-gnome ) -@@ -118,6 +120,14 @@ while test $# -gt 0 ; do - NO_ALL_NAME=# +@@ -124,6 +126,14 @@ while test $# -gt 0 ; do + SUBPKGS=YES shift ;; + --with-only-C ) @@ -34,7 +34,7 @@ * ) if [ $MO_NAME != ${NAMES[$#]}.lang ]; then NAMES[${#NAMES[@]}]=$MO_NAME -@@ -158,6 +168,8 @@ s:'"$TOP_DIR"':: +@@ -164,6 +174,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*\.mo$\):%lang(\2) \1\2\3: '"$NO_ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*/'"$NAME"'\.mo$\):%lang(\2) \1\2\3: s:^\([^%].*\):: @@ -43,7 +43,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW -@@ -166,19 +178,23 @@ s:'"$TOP_DIR"':: +@@ -172,19 +184,23 @@ s:'"$TOP_DIR"':: '"$NO_ALL_NAME$GNOME"'s:\(.*/share/help/\)\([^/_]\+\)\([^/]*\)\(/'"$NAME"'\)$:%lang(\2) %doc \1\2\3\4/: '"$ALL_NAME$GNOME"'s:\(.*/share/help/\)\([^/_]\+\)\([^/]*\)\(/[a-zA-Z0-9.\_\-]\+\)$:%lang(\2) %doc \1\2\3\4/: s:^\([^%].*\):: @@ -69,7 +69,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW -@@ -194,6 +210,8 @@ s:'"$TOP_DIR"':: +@@ -200,6 +216,8 @@ s:'"$TOP_DIR"':: '"$NO_ALL_NAME$GNOME"'s:\(.*/omf/'"$NAME"'/'"$NAME"'-\([^/.]\+\)\.omf\):%lang(\2) \1: '"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]\+-\([^/.]\+\)\.omf\):%lang(\2) \1: s:^[^%].*:: @@ -78,7 +78,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW -@@ -234,6 +252,8 @@ s:'"$TOP_DIR"':: +@@ -240,6 +258,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+/\):: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: @@ -87,7 +87,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW fi -@@ -247,6 +267,8 @@ s:'"$TOP_DIR"':: +@@ -253,6 +273,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+/\):: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: @@ -96,7 +96,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW fi -@@ -284,6 +306,8 @@ s:'"$TOP_DIR"':: +@@ -290,6 +312,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$QT"'s:^\([^%].*/[^/]\+_\([a-zA-Z]\+[_@].*\)\.qm$\):%lang(\2) \1: '"$ALL_NAME$QT"'s:^\([^%].*/[^/]\+_\([a-zA-Z]\+\)\.qm$\):%lang(\2) \1: s:^[^%].*:: @@ -105,7 +105,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW -@@ -292,6 +316,8 @@ s:'"$TOP_DIR"':: +@@ -298,6 +322,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+/\):: '"$ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+$\):%lang(\2) \1*: s:^\([^%].*\):: @@ -114,7 +114,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW -@@ -299,6 +325,8 @@ find "$TOP_DIR" -type f -o -type l|sed - +@@ -305,6 +331,8 @@ find "$TOP_DIR" -type f -o -type l|sed - s:'"$TOP_DIR"':: '"$NO_ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+/'"$NAME"'\.[a-z0-9].*\):%lang(\2) \1*: s:^\([^%].*\):: diff --git a/libmagic-exceptions.patch b/libmagic-exceptions.patch deleted file mode 100644 index 0568792..0000000 --- a/libmagic-exceptions.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 4e244280db8d780ac90313785598487f888b8924 Mon Sep 17 00:00:00 2001 -From: Martin Liska -Date: Wed, 15 Mar 2023 19:15:00 +0100 -Subject: [PATCH] add more libmagic exceptions for HTML, SVG and PNG - -I noticed there are ~150K .html files in all libreoffice rpm files -and the detection is significantly delaying package build. Thus, I -introduce more exceptions for commonly used file formats. ---- - build/rpmfc.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git build/rpmfc.c build/rpmfc.c -index 763a68603..cd9e64348 100644 ---- build/rpmfc.c -+++ build/rpmfc.c -@@ -1181,6 +1181,9 @@ static const struct skipped_extension_s skipped_extensions[] = { - { ".h", "C Header", "text/x-c" }, - { ".la", "libtool library file", "text/plain" }, - { ".pc", "pkgconfig file", "text/plain" }, -+ { ".html", "HTML document", "text/html" }, -+ { ".png", "PNG image data", "image/png" }, -+ { ".svg", "SVG Scalable Vector Graphics image", "image/svg+xml" }, - { NULL, NULL, NULL } - }; - --- -2.39.2 - diff --git a/localetag.diff b/localetag.diff index e6d88bf..225337e 100644 --- a/localetag.diff +++ b/localetag.diff @@ -139,7 +139,7 @@ decoding works, otherwise iso-8859-1. /** + * Retrieve text and convert to locale. + */ -+static int localeTag(Header h, rpmTag tag, rpmtd td) ++static int localeTag(Header h, rpmTag tag, rpmtd td, headerGetFlags hgflags) +{ + int rc; + rc = headerGet(h, tag, td, HEADERGET_ALLOC); @@ -172,14 +172,14 @@ decoding works, otherwise iso-8859-1. return i18nTag(h, RPMTAG_DESCRIPTION, td, hgflags); } -+static int changelognameTag(Header h, rpmtd td) ++static int changelognameTag(Header h, rpmtd td, headerGetFlags hgflags) +{ -+ return localeTag(h, RPMTAG_CHANGELOGNAME, td); ++ return localeTag(h, RPMTAG_CHANGELOGNAME, td, hgflags); +} + -+static int changelogtextTag(Header h, rpmtd td) ++static int changelogtextTag(Header h, rpmtd td, headerGetFlags hgflags) +{ -+ return localeTag(h, RPMTAG_CHANGELOGTEXT, td); ++ return localeTag(h, RPMTAG_CHANGELOGTEXT, td, hgflags); +} + /** diff --git a/macrosin.diff b/macrosin.diff index 7fb35d2..414330f 100644 --- a/macrosin.diff +++ b/macrosin.diff @@ -1,8 +1,6 @@ -Index: macros.in -=================================================================== ---- macros.in.orig -+++ macros.in -@@ -148,6 +148,7 @@ +--- macros.in.orig 2023-10-09 12:34:52.359518015 +0000 ++++ macros.in 2023-10-09 12:34:56.915510497 +0000 +@@ -161,6 +161,7 @@ %{?_unique_debug_names:--unique-debug-suffix "-%{VERSION}-%{RELEASE}.%{_arch}"} \\\ %{?_unique_debug_srcs:--unique-debug-src-base "%{name}-%{VERSION}-%{RELEASE}.%{_arch}"} \\\ %{?_find_debuginfo_dwz_opts} \\\ @@ -10,8 +8,8 @@ Index: macros.in %{?_find_debuginfo_opts} \\\ %{?_debugsource_packages:-S debugsourcefiles.list} \\\ "%{_builddir}/%{?buildsubdir}"\ -@@ -187,7 +188,8 @@ package or when debugging this package.\ - %endif\ +@@ -211,7 +212,8 @@ Supplements: (%{name} = %{version}-%{r + %files langpack-%{1}\ %{nil} -%_defaultdocdir %{_datadir}/doc @@ -20,7 +18,7 @@ Index: macros.in %_defaultlicensedir %{_datadir}/licenses # Following macros for filtering auto deps must not be used in spec files. -@@ -247,7 +249,8 @@ package or when debugging this package.\ +@@ -277,7 +279,8 @@ Supplements: (%{name} = %{version}-%{r %_tmppath %{_var}/tmp # Path to top of build area. @@ -30,7 +28,7 @@ Index: macros.in #============================================================================== # ---- Optional rpmrc macros. -@@ -349,7 +352,7 @@ package or when debugging this package.\ +@@ -379,7 +382,7 @@ Supplements: (%{name} = %{version}-%{r # "w.ufdio" uncompressed # #%_source_payload w9.gzdio @@ -39,7 +37,7 @@ Index: macros.in # Algorithm to use for generating file checksum digests on build. # If not specified or 0, MD5 is used. -@@ -459,6 +462,19 @@ package or when debugging this package.\ +@@ -489,6 +492,19 @@ Supplements: (%{name} = %{version}-%{r # #%_include_minidebuginfo 1 @@ -59,7 +57,7 @@ Index: macros.in # # Include a .gdb_index section in the .debug files. # Requires _enable_debug_packages and gdb-add-index installed. -@@ -491,39 +507,39 @@ package or when debugging this package.\ +@@ -521,39 +537,39 @@ Supplements: (%{name} = %{version}-%{r # Same as for "separate" but if the __debug_package global is set then # the -debuginfo package will have a compatibility link for the main # ELF /usr/lib/debug/.build-id/xx/yyy -> /usr/lib/.build-id/xx/yyy @@ -106,7 +104,7 @@ Index: macros.in # # Use internal dependency generator rather than external helpers? -@@ -542,6 +558,7 @@ package or when debugging this package.\ +@@ -572,6 +588,7 @@ Supplements: (%{name} = %{version}-%{r %__find_requires %{_rpmconfigdir}/find-requires #%__find_conflicts ??? #%__find_obsoletes ??? @@ -114,7 +112,7 @@ Index: macros.in # # Path to file attribute classifications for automatic dependency -@@ -926,7 +943,7 @@ package or when debugging this package.\ +@@ -984,7 +1001,7 @@ Supplements: (%{name} = %{version}-%{r %_build_vendor %{_host_vendor} %_build_os %{_host_os} %_host @host@ @@ -123,7 +121,7 @@ Index: macros.in %_host_cpu @host_cpu@ %_host_vendor @host_vendor@ %_host_os @host_os@ -@@ -1045,11 +1062,13 @@ package or when debugging this package.\ +@@ -1109,11 +1126,13 @@ Supplements: (%{name} = %{version}-%{r #------------------------------------------------------------------------------ # arch macro for all supported 32-bit ARM processors diff --git a/platformin.diff b/platformin.diff index 9617bb1..469adee 100644 --- a/platformin.diff +++ b/platformin.diff @@ -1,5 +1,5 @@ ---- platform.in.orig 2014-06-26 06:51:54.822818260 +0000 -+++ platform.in 2014-08-04 12:38:55.389245494 +0000 +--- platform.in.orig 2023-09-19 10:10:10.000000000 +0000 ++++ platform.in 2023-10-09 12:37:30.431256940 +0000 @@ -41,7 +41,7 @@ %_oldincludedir @oldincludedir@ %_infodir @infodir@ @@ -8,26 +8,26 @@ +%_initddir %{_sysconfdir}/init.d # Deprecated misspelling, present for backwards compatibility. %_initrddir %{_initddir} - %_rundir @RUNDIR@ -@@ -83,3 +83,21 @@ - @apple@# - @apple@%_use_internal_dependency_generator 0 - @apple@%__so dylib -+@suse@#--------------------------------------------------------------------- -+@suse@# Expanded at end of %prep -+@suse@# -+@suse@%__id_u %{__id} -u -+@suse@%__chown_Rhf %{__chown} -Rhf -+@suse@%__chgrp_Rhf %{__chgrp} -Rhf -+@suse@%_fixowner [ `%{__id_u}` = '0' ] && %{__chown_Rhf} root -+@suse@%_fixgroup [ `%{__id_u}` = '0' ] && %{__chgrp_Rhf} root -+@suse@%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w -+@suse@ -+@suse@#--------------------------------------------------------------------- -+@suse@# Expanded at start of %build -+@suse@# -+@suse@%__spec_build_pre %{___build_pre}\ -+@suse@%{?buildroot: %__rm -rf "$RPM_BUILD_ROOT"\ -+@suse@ %__mkdir_p `dirname "$RPM_BUILD_ROOT"`\ -+@suse@ %__mkdir "$RPM_BUILD_ROOT"\ -+@suse@} + %_rundir @rundir@ +@@ -96,3 +96,21 @@ + =apple=# + =apple=%_use_internal_dependency_generator 0 + =apple=%__so dylib ++=suse=#--------------------------------------------------------------------- ++=suse=# Expanded at end of %prep ++=suse=# ++=suse=%__id_u %{__id} -u ++=suse=%__chown_Rhf %{__chown} -Rhf ++=suse=%__chgrp_Rhf %{__chgrp} -Rhf ++=suse=%_fixowner [ `%{__id_u}` = '0' ] && %{__chown_Rhf} root ++=suse=%_fixgroup [ `%{__id_u}` = '0' ] && %{__chgrp_Rhf} root ++=suse=%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w ++=suse= ++=suse=#--------------------------------------------------------------------- ++=suse=# Expanded at start of %build ++=suse=# ++=suse=%__spec_build_pre %{___build_pre}\ ++=suse=%{?buildroot: %__rm -rf "$RPM_BUILD_ROOT"\ ++=suse= %__mkdir_p `dirname "$RPM_BUILD_ROOT"`\ ++=suse= %__mkdir "$RPM_BUILD_ROOT"\ ++=suse=} diff --git a/posttrans.diff b/posttrans.diff index de786f5..3ff3631 100644 --- a/posttrans.diff +++ b/posttrans.diff @@ -1,5 +1,5 @@ ---- include/rpm/rpmcli.h.orig 2022-04-07 11:13:18.983517774 +0000 -+++ include/rpm/rpmcli.h 2022-12-02 13:43:44.899359176 +0000 +--- include/rpm/rpmcli.h.orig 2023-09-19 10:10:10.000000000 +0000 ++++ include/rpm/rpmcli.h 2023-10-12 11:43:59.662617302 +0000 @@ -306,6 +306,7 @@ enum rpmInstallFlags_e { INSTALL_ALLMATCHES = (1 << 9), /*!< from --allmatches */ INSTALL_REINSTALL = (1 << 10), /*!< from --reinstall */ @@ -24,9 +24,9 @@ */ extern struct rpmInstallArguments_s rpmIArgs; ---- include/rpm/rpmts.h.orig 2022-12-02 13:27:05.109729552 +0000 -+++ include/rpm/rpmts.h 2022-12-02 13:27:08.881720646 +0000 -@@ -249,6 +249,15 @@ int rpmtsOrder(rpmts ts); +--- include/rpm/rpmts.h.orig 2023-10-12 11:43:35.870664176 +0000 ++++ include/rpm/rpmts.h 2023-10-12 11:43:59.662617302 +0000 +@@ -253,6 +253,15 @@ int rpmtsOrder(rpmts ts); int rpmtsRun(rpmts ts, rpmps okProbs, rpmprobFilterFlags ignoreSet); /** \ingroup rpmts @@ -42,9 +42,9 @@ * Reference a transaction set instance. * @param ts transaction set * @return new transaction set reference ---- lib/poptI.c.orig 2022-04-07 11:13:19.010517957 +0000 -+++ lib/poptI.c 2022-12-02 13:27:08.877720656 +0000 -@@ -273,6 +273,10 @@ struct poptOption rpmInstallPoptTable[] +--- lib/poptI.c.orig 2023-09-19 10:10:10.000000000 +0000 ++++ lib/poptI.c 2023-10-12 11:43:59.662617302 +0000 +@@ -283,6 +283,10 @@ struct poptOption rpmInstallPoptTable[] &rpmIArgs.installInterfaceFlags, (INSTALL_RESTORE), N_("restore package(s)"), N_("+") }, @@ -55,9 +55,9 @@ POPT_TABLEEND }; ---- lib/psm.c.orig 2022-12-02 13:27:05.093729590 +0000 -+++ lib/psm.c 2022-12-02 13:27:08.877720656 +0000 -@@ -826,7 +826,7 @@ static rpmRC rpmPackageErase(rpmts ts, r +--- lib/psm.c.orig 2023-10-12 11:43:35.850664215 +0000 ++++ lib/psm.c 2023-10-12 11:43:59.662617302 +0000 +@@ -1001,7 +1001,7 @@ static rpmRC rpmPackageErase(rpmts ts, r } if (rc) break; @@ -66,8 +66,8 @@ /* Prepare post transaction uninstall triggers */ rpmtriggersPrepPostUnTransFileTrigs(psm->ts, psm->te); } ---- lib/rpminstall.c.orig 2022-09-02 05:48:29.712846716 +0000 -+++ lib/rpminstall.c 2022-12-02 13:27:08.877720656 +0000 +--- lib/rpminstall.c.orig 2023-09-19 10:10:10.000000000 +0000 ++++ lib/rpminstall.c 2023-10-12 11:43:59.662617302 +0000 @@ -6,6 +6,8 @@ #include @@ -77,7 +77,7 @@ #include #include #include /* rpmReadPackageFile, vercmp etc */ -@@ -812,3 +814,32 @@ int rpmInstallSource(rpmts ts, const cha +@@ -830,3 +832,32 @@ int rpmInstallSource(rpmts ts, const cha return rc; } @@ -110,8 +110,8 @@ + argvFree(manifest); + return rc; +} ---- lib/rpmtriggers.c.orig 2022-04-07 11:13:19.020518024 +0000 -+++ lib/rpmtriggers.c 2022-12-02 13:27:08.877720656 +0000 +--- lib/rpmtriggers.c.orig 2023-09-19 10:10:10.000000000 +0000 ++++ lib/rpmtriggers.c 2023-10-12 11:43:59.662617302 +0000 @@ -1,5 +1,6 @@ #include "system.h" @@ -160,8 +160,8 @@ if (tm == RPMSCRIPT_FILETRIGGER) { priorityTag = RPMTAG_FILETRIGGERPRIORITIES; } else { ---- lib/rpmtriggers.h.orig 2022-04-07 11:13:19.020518024 +0000 -+++ lib/rpmtriggers.h 2022-12-02 13:27:08.881720646 +0000 +--- lib/rpmtriggers.h.orig 2023-09-19 10:10:10.000000000 +0000 ++++ lib/rpmtriggers.h 2023-10-12 11:43:59.662617302 +0000 @@ -27,6 +27,10 @@ rpmtriggers rpmtriggersCreate(unsigned i RPM_GNUC_INTERNAL rpmtriggers rpmtriggersFree(rpmtriggers triggers); @@ -173,8 +173,8 @@ /* * Prepare post trans uninstall file triggers. After transcation uninstalled * files are not saved anywhere. So we need during uninstalation of every ---- lib/rpmts_internal.h.orig 2022-04-07 11:13:19.021518031 +0000 -+++ lib/rpmts_internal.h 2022-12-02 13:44:39.803225928 +0000 +--- lib/rpmts_internal.h.orig 2023-09-19 10:10:10.000000000 +0000 ++++ lib/rpmts_internal.h 2023-10-12 11:43:59.662617302 +0000 @@ -94,6 +94,8 @@ struct rpmts_s { int min_writes; /*!< macro minimize_writes used */ @@ -184,9 +184,9 @@ }; #ifdef __cplusplus ---- lib/transaction.c.orig 2022-08-30 11:42:23.784853830 +0000 -+++ lib/transaction.c 2022-12-02 13:27:08.881720646 +0000 -@@ -1478,6 +1478,8 @@ static int rpmtsSetup(rpmts ts, rpmprobF +--- lib/transaction.c.orig 2023-09-19 10:10:10.000000000 +0000 ++++ lib/transaction.c 2023-10-12 11:44:28.398560689 +0000 +@@ -1475,6 +1475,8 @@ static int rpmtsSetup(rpmts ts, rpmprobF /* Get available space on mounted file systems. */ (void) rpmtsInitDSI(ts); @@ -195,7 +195,7 @@ return 0; } -@@ -1856,22 +1858,26 @@ int rpmtsRun(rpmts ts, rpmps okProbs, rp +@@ -1858,27 +1860,31 @@ int rpmtsRun(rpmts ts, rpmps okProbs, rp /* Actually install and remove packages */ nfailed = rpmtsProcess(ts); @@ -206,9 +206,15 @@ /* Run %posttrans scripts unless disabled */ - if (!(rpmtsFlags(ts) & (RPMTRANS_FLAG_NOPOSTTRANS))) { + if (!ts->dump_posttrans && !(rpmtsFlags(ts) & (RPMTRANS_FLAG_NOPOSTTRANS))) { - rpmlog(RPMLOG_DEBUG, "running post-transaction scripts\n"); + rpmlog(RPMLOG_DEBUG, "running %%posttrans scripts\n"); runTransScripts(ts, PKG_POSTTRANS); } + /* Run %postuntrans scripts unless disabled */ +- if (!(rpmtsFlags(ts) & RPMTRANS_FLAG_NOPOSTUNTRANS)) { ++ if (!ts->dump_posttrans && !(rpmtsFlags(ts) & RPMTRANS_FLAG_NOPOSTUNTRANS)) { + rpmlog(RPMLOG_DEBUG, "running %%postuntrans scripts\n"); + runTransScripts(ts, PKG_POSTUNTRANS); + } /* Run %transfiletriggerpostun scripts unless disabled */ - if (!(rpmtsFlags(ts) & (RPMTRANS_FLAG_NOPOSTTRANS|RPMTRANS_FLAG_NOTRIGGERIN))) { @@ -226,7 +232,7 @@ runTransScripts(ts, PKG_TRANSFILETRIGGERIN); } /* Final exit code */ -@@ -1894,3 +1900,110 @@ exit: +@@ -1901,3 +1907,117 @@ exit: sigaction(SIGPIPE, &oact, NULL); return rc; } @@ -278,7 +284,10 @@ + tsMembers tsmem = rpmtsMembers(ts); + rpmtxn txn = NULL; + /* Ignore SIGPIPE for the duration of transaction */ -+ rpmsqAction_t oact = rpmsqSetAction(SIGPIPE, RPMSQ_IGN); ++ struct sigaction act, oact; ++ memset(&act, 0, sizeof(act)); ++ act.sa_handler = SIG_IGN; ++ sigaction(SIGPIPE, &act, &oact); + /* Force default 022 umask during transaction for consistent results */ + mode_t oldmask = umask(022); + @@ -319,9 +328,13 @@ + if (!(txn = rpmtxnBegin(ts, RPMTXN_WRITE))) + goto exit; + ++ if (rpmChrootSet(rpmtsRootDir(ts))) ++ goto exit; ++ + /* run posttrans scripts */ + rpmlog(RPMLOG_DEBUG, "running post-transaction scripts\n"); + runTransScripts(ts, PKG_POSTTRANS); ++ runTransScripts(ts, PKG_POSTUNTRANS); + /* run %transfiletriggerin scripts */ + runFileTriggers(ts, NULL, RPMSENSE_TRIGGERIN, RPMSCRIPT_TRANSFILETRIGGER, 0); + /* run %transfiletriggerpostun scrips */ @@ -333,12 +346,12 @@ +exit: + (void) umask(oldmask); + rpmtxnEnd(txn); -+ rpmsqSetAction(SIGPIPE, oact); ++ sigaction(SIGPIPE, &oact, NULL); + rpmtsEmpty(ts); + return rc; +} ---- rpm.c.orig 2022-04-07 11:13:19.067518343 +0000 -+++ rpm.c 2022-12-02 13:55:52.969592594 +0000 +--- tools/rpm.c.orig 2023-09-19 10:10:10.000000000 +0000 ++++ tools/rpm.c 2023-10-12 11:43:59.662617302 +0000 @@ -21,6 +21,7 @@ enum modes { MODE_ERASE = (1 << 2), MODE_RESTORE = (1 << 4), diff --git a/python-rpm.changes b/python-rpm.changes index cb2bd11..1a59fa4 100644 --- a/python-rpm.changes +++ b/python-rpm.changes @@ -1,4 +1,15 @@ ------------------------------------------------------------------- +Mon Oct 30 14:13:37 UTC 2023 - Matej Cepl + +- Modernize python-rpm.spec to stop using deprecated macros + (%python_build and %python_install). + +------------------------------------------------------------------- +Wed Oct 11 17:07:14 CEST 2023 - mls@suse.de + +- update to rpm-4.19.1 + +------------------------------------------------------------------- Tue May 30 09:07:28 UTC 2023 - Jiri Srain - add _multibuild for multiple .spec-files diff --git a/python-rpm.spec b/python-rpm.spec index 144a4ac..7bb4ba7 100644 --- a/python-rpm.spec +++ b/python-rpm.spec @@ -19,9 +19,8 @@ # Enable Python build sourced from rpm spec %global with_python 1 -%{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-rpm -Version: 4.18.0 +Version: 4.19.1 Release: 0 Summary: Python Bindings for Manipulating RPM Packages License: GPL-2.0-or-later @@ -29,10 +28,15 @@ Group: Development/Libraries/Python URL: https://rpm.org/ #Git-Clone: https://github.com/rpm-software-management/rpm BuildRequires: %{python_module devel} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module wheel} +BuildRequires: cmake +BuildRequires: fdupes BuildRequires: file-devel BuildRequires: libacl-devel BuildRequires: libbz2-devel BuildRequires: libcap-devel +BuildRequires: libdw-devel BuildRequires: libelf-devel BuildRequires: libgcrypt-devel BuildRequires: libselinux-devel @@ -66,16 +70,20 @@ that will manipulate RPM packages and databases. %{expand:%(sed -n -e '/^%%prep/,/^%%install/p' <%{_sourcedir}/rpm.spec | sed -e '1d' -e '$d')} # The build stage is already declared and pulled in from rpm.spec +cd .. +cp _build/python/setup.py python pushd python -%python_build +%pyproject_wheel popd %install pushd python -%python_install +%pyproject_install popd +%python_expand %fdupes %{buildroot}%{$python_sitearch} %files %{python_files} -%{python_sitearch}/rpm* +%{python_sitearch}/rpm +%{python_sitearch}/rpm-%{version}*-info %changelog diff --git a/python_setup.diff b/python_setup.diff new file mode 100644 index 0000000..b7353ca --- /dev/null +++ b/python_setup.diff @@ -0,0 +1,64 @@ +--- python/CMakeLists.txt.orig 2023-10-11 14:55:22.453584792 +0000 ++++ python/CMakeLists.txt 2023-10-11 14:56:41.989429746 +0000 +@@ -28,5 +28,6 @@ install(DIRECTORY examples TYPE DOC) + + set(egginfo ${PROJECT_NAME}-${PROJECT_VERSION}-py${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}.egg-info) + configure_file(rpm.egg-info.in ${egginfo} @ONLY) ++configure_file(setup.py.in setup.py @ONLY) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${egginfo} + DESTINATION ${Python3_SITEARCH}) +--- python/setup.py.in.orig 2023-10-11 14:55:17.769593923 +0000 ++++ python/setup.py.in 2023-10-11 14:58:39.401200867 +0000 +@@ -0,0 +1,52 @@ ++#!/usr/bin/env python ++ ++from distutils.core import setup, Extension ++import subprocess ++import os ++ ++def pkgconfig(what): ++ out = [] ++ cmd = 'pkg-config %s %s' % (what, '@PROJECT_NAME@') ++ pcout = subprocess.check_output(cmd.split()).decode() ++ for token in pcout.split(): ++ out.append(token[2:]) ++ return out ++ ++cflags = ['-std=c99', '-Wno-strict-aliasing'] ++additional_link_args = [] ++ ++# See if we're building in-tree ++if True: ++ cflags.append('-I../include') ++ additional_link_args.extend(['-Wl,-L../_build/rpmio', ++ '-Wl,-L../_build/lib', ++ '-Wl,-L../_build/build', ++ '-Wl,-L../_build/sign']) ++ os.environ['PKG_CONFIG_PATH'] = '../_build' ++ ++rpmmod = Extension('rpm._rpm', ++ sources = ['header-py.c', 'rpmds-py.c', 'rpmfd-py.c', ++ 'rpmii-py.c', 'rpmkeyring-py.c', ++ 'rpmmacro-py.c', 'rpmmi-py.c', 'rpmps-py.c', ++ 'rpmstrpool-py.c', 'rpmfiles-py.c', ++ 'rpmarchive-py.c', 'rpmtd-py.c', ++ 'rpmte-py.c', 'rpmts-py.c', 'rpmver-py.c', ++ 'spec-py.c', ++ 'rpmmodule.c'], ++ include_dirs = pkgconfig('--cflags'), ++ library_dirs = pkgconfig('--libs-only-L'), ++ libraries = pkgconfig('--libs-only-l') + ['rpmbuild', 'rpmsign'], ++ extra_compile_args = cflags, ++ extra_link_args = additional_link_args ++ ) ++ ++setup(name='@PROJECT_NAME@', ++ version='@PROJECT_VERSION@', ++ description='Python bindings for rpm', ++ maintainer_email='rpm-maint@lists.rpm.org', ++ url='@PROJECT_HOMEPAGE_URL@', ++ license='GNU General Public License v2', ++ packages=['rpm'], ++ ext_modules=[rpmmod] ++ ) ++ diff --git a/refreshtestarch.diff b/refreshtestarch.diff index af35f88..6f232a2 100644 --- a/refreshtestarch.diff +++ b/refreshtestarch.diff @@ -1,16 +1,10 @@ -Also test architecture in "refresh" test when not colored. This allows -updates to different architectures. - ---- lib/psm.c.orig 2019-10-02 09:54:56.180565818 +0000 -+++ lib/psm.c 2019-10-02 09:55:02.700552941 +0000 -@@ -518,9 +518,9 @@ static void markReplacedInstance(rpmts t - rpmdbSetIteratorRE(mi, RPMTAG_EPOCH, RPMMIRE_STRCMP, rpmteE(te)); - rpmdbSetIteratorRE(mi, RPMTAG_VERSION, RPMMIRE_STRCMP, rpmteV(te)); - rpmdbSetIteratorRE(mi, RPMTAG_RELEASE, RPMMIRE_STRCMP, rpmteR(te)); +--- lib/psm.c.orig 2023-09-19 10:10:10.000000000 +0000 ++++ lib/psm.c 2023-10-09 12:21:38.576812293 +0000 +@@ -709,6 +709,7 @@ void rpmpsmNotify(rpmpsm psm, int what, + static void markReplacedInstance(rpmts ts, rpmte te) + { + rpmdbMatchIterator mi = rpmtsTeIterator(ts, te, 1); + rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, rpmteA(te)); - /* XXX shouldn't we also do this on colorless transactions? */ - if (rpmtsColor(ts)) { -- rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, rpmteA(te)); - rpmdbSetIteratorRE(mi, RPMTAG_OS, RPMMIRE_STRCMP, rpmteO(te)); - } - + while (rpmdbNextIterator(mi) != NULL) { + rpmteSetDBInstance(te, rpmdbGetIteratorOffset(mi)); + break; diff --git a/remove-awk-dependency.patch b/remove-awk-dependency.patch deleted file mode 100644 index 17b7614..0000000 --- a/remove-awk-dependency.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 224095542246e762617d38e2096fdeba13d266e3 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Dirk=20M=C3=BCller?= -Date: Tue, 8 Aug 2023 13:53:38 +0200 -Subject: [PATCH] Rewrite --last to just use sed for formatting - -This is the only dependency on awk in the runtime commandline part of -rpm, which is bloating minimal container images a bit. We can rewrite -that into a single sed statement. We love you anyway, awk. ---- - rpmpopt.in | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/rpmpopt.in b/rpmpopt.in -index 8022b0f54a..1223e1a862 100644 ---- ./rpmpopt.in -+++ ./rpmpopt.in -@@ -133,8 +133,8 @@ rpm alias --filetriggerscripts --qf '\ - rpm alias --filetriggers --filetriggerscripts \ - --POPTdesc=$"list filetrigger scriptlets from package(s)" - --rpm alias --last --qf '%|INSTALLTIME?{%{INSTALLTIME}}:{000000000}| %{NVRA} %|INSTALLTIME?{%{INSTALLTIME:date}}:{(not installed)}|\n' \ -- --pipe "LC_NUMERIC=C sort -r -n | sed 's,^[0-9]\+ ,,' | awk '{printf(\"%-45s %-s\n\", $1, substr($0,length($1)+2))}' " \ -+rpm alias --last --qf '%|INSTALLTIME?{%{INSTALLTIME}}:{000000000}| %-45{NVRA} %|INSTALLTIME?{%{INSTALLTIME:date}}:{(not installed)}|\n' \ -+ --pipe "LC_NUMERIC=C sort -r -n | sed 's,^[0-9]\+ ,,' " \ - --POPTdesc=$"list package(s) by install time, most recent first" - - rpm alias --dupes --qf '%|SOURCERPM?{%{name}.%{arch}}:{%|ARCH?{%{name}}:{%{name}-%{version}}|}|\n' --pipe "sort | uniq -d" \ diff --git a/rpm-4.18.0.tar.bz2 b/rpm-4.18.0.tar.bz2 deleted file mode 120000 index f9304e3..0000000 --- a/rpm-4.18.0.tar.bz2 +++ /dev/null @@ -1 +0,0 @@ -/ipfs/bafybeiewlxc3to6pphqtchwxewmzuulzyefbomidexj4u37apopekezone \ No newline at end of file diff --git a/rpm-4.19.1.tar.bz2 b/rpm-4.19.1.tar.bz2 new file mode 120000 index 0000000..66ecd0c --- /dev/null +++ b/rpm-4.19.1.tar.bz2 @@ -0,0 +1 @@ +/ipfs/bafybeifwykghooxfr2v3ldwdpgffgxl75lygoqr64moapp5ol5owlsad34 \ No newline at end of file diff --git a/rpm-findlang-inject-metainfo.patch b/rpm-findlang-inject-metainfo.patch index cf21af7..7e042fa 100644 --- a/rpm-findlang-inject-metainfo.patch +++ b/rpm-findlang-inject-metainfo.patch @@ -1,14 +1,14 @@ ---- scripts/find-lang.sh.orig 2018-01-31 13:37:22.810352621 +0000 -+++ scripts/find-lang.sh 2018-01-31 13:39:38.117990971 +0000 -@@ -32,6 +32,7 @@ Additional options: +--- scripts/find-lang.sh.orig 2023-10-09 13:11:05.219604799 +0000 ++++ scripts/find-lang.sh 2023-10-09 13:12:38.787433946 +0000 +@@ -47,6 +47,7 @@ Additional options: --with-man find localized man pages --all-name match all package/domain names --without-mo do not find locale files -+ --metainfo create a metainfo.xml file for AppStream ++ --metainfo create a metainfo.xml file for AppStream + --generate-subpackages move language files in one sub package per language EOF exit 1 - } -@@ -62,6 +63,7 @@ ALL_NAME=# +@@ -79,6 +80,7 @@ ALL_NAME=# NO_ALL_NAME= ONLY_C=# NO_C=# @@ -16,7 +16,7 @@ while test $# -gt 0 ; do case "${1}" in --with-gnome ) -@@ -113,6 +115,11 @@ while test $# -gt 0 ; do +@@ -134,6 +136,11 @@ while test $# -gt 0 ; do NO_C= shift ;; @@ -28,7 +28,7 @@ * ) if [ $MO_NAME != ${NAMES[$#]}.lang ]; then NAMES[${#NAMES[@]}]=$MO_NAME -@@ -323,6 +330,24 @@ if ! grep -q / $MO_NAME_NEW; then +@@ -344,6 +351,24 @@ if ! grep -q / $MO_NAME_NEW; then exit 1 fi diff --git a/rpm.changes b/rpm.changes index b0cfe16..4c63c4e 100644 --- a/rpm.changes +++ b/rpm.changes @@ -1,4 +1,59 @@ ------------------------------------------------------------------- +Wed Dec 13 17:39:13 UTC 2023 - Dirk Müller + +- fix Source url to match what is listed on https://rpm.org/download.html + +------------------------------------------------------------------- +Fri Oct 27 15:42:09 CEST 2023 - mls@suse.de + +- disable sysusers handling for now + +------------------------------------------------------------------- +Wed Oct 11 17:07:14 CEST 2023 - mls@suse.de + +- update to rpm-4.19.1 + * new spec snippet support for dynamic spec generation + * new sysusers.d integration for automated user and group handling + * new CMake build system + * removal of various deprecated and/or unused APIs + * various internal code cleanups +- refreshed patches: + * brp-compress-no-img.patch + * brp.diff + * brpcompress.diff + * build.diff + * enable-postin-scripts-error.diff + * fileattrs.diff + * findlang.diff + * findsupplements.diff + * langnoc.diff + * macrosin.diff + * platformin.diff + * posttrans.diff + * refreshtestarch.diff + * rpm-findlang-inject-metainfo.patch + * rpmqpack.diff + * rpmrc.diff + * selinux_transactional_update.patch + * localetag.diff + * weakdepscompat.diff + * zstdpool.diff +- deleted patches: + * cpuid_lzcnt.patch + * libmagic-exceptions.patch + * remove-awk-dependency.patch + * whatrequires-doc.diff + * x86_64-microarchitectures.patch +- new patches: + * python_setup.diff + * rpmsort_reverse.diff + * canongnu.diff +- new file: + * build-aux.tar.bz2 (taken from rpm-4.18) +- fix --runposttrans not working correctly with the --root + option [bnc#1216091] + +------------------------------------------------------------------- Tue Aug 8 12:39:25 UTC 2023 - Dirk Müller - add remove-awk-dependency.patch to be able to drop awk dependency @@ -132,7 +187,7 @@ Mon Jun 27 11:01:54 UTC 2022 - Ludwig Nussel ------------------------------------------------------------------- Tue May 31 19:58:07 UTC 2022 - Dirk Müller -- drop requires-ge-macro.diff: this is already in rpm-config-SUSE +- drop requires-ge-macro.diff: this is already in rpm-config-SUSE - enable-postin-scripts-error.diff: refresh ------------------------------------------------------------------- @@ -152,24 +207,24 @@ Wed Mar 30 08:54:50 UTC 2022 - Martin Liška Mon Mar 14 10:50:39 UTC 2022 - Dirk Müller - drop rpm-deptracking.patch, this is already upstream and - we were just adding it twice + we were just adding it twice ------------------------------------------------------------------- Tue Mar 8 19:31:27 UTC 2022 - Dirk Müller - use fileprovide /usr/bin/gzip for "rpm-build" to make alternative - providers possible + providers possible ------------------------------------------------------------------- Wed Feb 23 22:44:33 UTC 2022 - Dirk Müller - add leave-malloc-check-set.diff to actually use MALLOC_CHECK_ during - build + build ------------------------------------------------------------------- Tue Feb 1 12:47:02 UTC 2022 - Dirk Müller -- invoke find-lang.sh with bash, it is a bash script (bsc#1195391) +- invoke find-lang.sh with bash, it is a bash script (bsc#1195391) ------------------------------------------------------------------- Fri Jan 28 17:00:15 CEST 2022 - simon.vogl@gmx.net @@ -208,7 +263,7 @@ Thu Sep 23 20:57:45 CEST 2021 - mls@suse.de - update to rpm-4.17.0 - dropped support for berkeley db - archive unpacking failures no longer leave garbage -- unified built-in and user-define macro syntax and calling conventions +- unified built-in and user-define macro syntax and calling conventions - python generators and debuginfo extraction has been split into a separate upstream project - support for ed25519 signatures @@ -218,7 +273,7 @@ Thu Sep 23 20:57:45 CEST 2021 - mls@suse.de * singlefilemode.diff * verbosearg.diff - modified patches: - * usr-lib-sysimage-rpm.patch + * usr-lib-sysimage-rpm.patch * localetag.diff * brp.diff * findlang.diff @@ -323,7 +378,7 @@ Wed Nov 18 10:46:03 CET 2020 - mls@suse.de ------------------------------------------------------------------- Tue Oct 27 10:08:05 CET 2020 - Callum Farmer -- RPM no longer ships config.sub and config.guess, just copy it +- RPM no longer ships config.sub and config.guess, just copy it from Libtool since it is identical ------------------------------------------------------------------- @@ -641,7 +696,7 @@ Mon Sep 17 11:04:48 UTC 2018 - Martin Liška Wed Aug 8 05:12:24 UTC 2018 - bwiedemann@suse.com - Add reproducible-debuginfo.patch to generate debuginfo - in a reproducible way + in a reproducible way ------------------------------------------------------------------- Fri Jul 20 13:15:28 CEST 2018 - mls@suse.de @@ -857,7 +912,7 @@ Fri Dec 1 17:15:13 CET 2017 - mls@suse.de ------------------------------------------------------------------- Thu Nov 23 13:41:13 UTC 2017 - rbrown@suse.com -- Replace references to /var/adm/fillup-templates with new +- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468) ------------------------------------------------------------------- @@ -871,7 +926,7 @@ Tue Nov 7 14:27:32 UTC 2017 - rbrown@suse.com ------------------------------------------------------------------- Mon Nov 6 13:53:45 UTC 2017 - mls@suse.de -- Make %post compatibility symlink creation more resiliant +- Make %post compatibility symlink creation more resiliant ------------------------------------------------------------------- Mon Nov 6 10:05:10 UTC 2017 - rbrown@suse.com @@ -938,7 +993,7 @@ Wed Jul 5 16:28:46 CEST 2017 - ngompa13@gmail.com shared state content in Red Hat/Fedora; Mageia; and Debian/Ubuntu. The old path (/usr/com) isn't recognized by FHS, whereas /var/lib is recognized as suitable for this purpose. -- Change the RPM binary payload from old-lzma to xz, +- Change the RPM binary payload from old-lzma to xz, in line with payload settings for RH/Fedora and Mageia - Backport upstream commit to read changelog entries with full timestamps @@ -1182,7 +1237,7 @@ Mon Sep 8 18:51:28 CEST 2014 - mls@suse.de rpmtsRun() calls (RhBug:1076552, RhBug:1128359) * fix %autopatch options getting expanded twice * add support for %autosetup -S git_am (RhBug:1082038) -- dropped patches: gentlyadjustmacros.diff, rundir.diff, +- dropped patches: gentlyadjustmacros.diff, rundir.diff, m68k.patch, debugedit-m68k.patch ------------------------------------------------------------------- @@ -1269,7 +1324,7 @@ Mon Dec 2 16:18:36 UTC 2013 - adrian@suse.de ------------------------------------------------------------------- Fri Nov 29 11:54:44 UTC 2013 - dvaleev@suse.com -- Rename and extend auto-config-update-aarch64.diff to +- Rename and extend auto-config-update-aarch64.diff to auto-config-update-aarch64-ppc64le.diff to apply same hack to powerpc64le architecture @@ -1374,12 +1429,12 @@ Fri Jul 12 15:36:43 CEST 2013 - mls@suse.de ------------------------------------------------------------------- Tue Jul 2 09:53:02 UTC 2013 - dmueller@suse.com -- extend the armv7hl hack also to armv6hl +- extend the armv7hl hack also to armv6hl ------------------------------------------------------------------- Thu Jun 27 22:03:51 UTC 2013 - dmueller@suse.com -- add support for armv6hl target +- add support for armv6hl target ------------------------------------------------------------------- Sun Jun 23 19:03:27 UTC 2013 - schwab@linux-m68k.org @@ -1417,7 +1472,7 @@ Wed May 8 14:56:15 UTC 2013 - dmueller@suse.com Mon Apr 22 22:00:14 UTC 2013 - dmueller@suse.com - add auto-config-update-aarch64.diff: - * optionally automatically update config.guess/sub during build + * optionally automatically update config.guess/sub during build ------------------------------------------------------------------- Fri Apr 5 18:47:53 UTC 2013 - dmueller@suse.com @@ -1436,7 +1491,7 @@ Fri Apr 5 12:39:12 UTC 2013 - idonmez@suse.com ------------------------------------------------------------------- Sat Mar 30 13:53:48 UTC 2013 - coolo@suse.com -- which is essential for man packages +- which is essential for man packages ------------------------------------------------------------------- Mon Mar 25 13:38:45 UTC 2013 - schwab@suse.de @@ -1474,15 +1529,15 @@ Wed Jan 2 13:46:17 UTC 2013 - dmueller@suse.com * Fix locale dependent behavior in rpm2cpio.sh (RhBug:878363) * Add --undefine cli switch for undefining macros (related to RhBug:876308) * Fix warnings when building with gcc >= 4.7 - * Permit key imports on transactions where signature checking is + * Permit key imports on transactions where signature checking is disabled, regression of sorts introduced in 4.10.0 (RhBug:856225) * Fix RPMPROB_FILTER_FORCERELOCATE aka --badreloc, regression introduced in 4.9.0 (RhBug:828784) - * Verify files from non-installed packages again, regression introduced + * Verify files from non-installed packages again, regression introduced in 4.9.0 (RhBug:826589) - * Fix large (> 4GB) package support, regression introduced in + * Fix large (> 4GB) package support, regression introduced in 4.9.0 (RhBug:844936) - * Only create the first instance of a file shared between multiple + * Only create the first instance of a file shared between multiple packages on install (speedup + improved verification timestamp behavior) * Report config and missinok flags too in deptype format extension * Fix relative path handling in --whatprovides query @@ -1494,7 +1549,7 @@ Wed Jan 2 13:46:17 UTC 2013 - dmueller@suse.com * Fix bogus "unclosed %if" error when %include is used in conditionals * Report starting line for unclosed %if errors in spec * Always print out package dependencies on build - * Restore pre-4.10.0 fdFree() behavior, ie return the fd itself while + * Restore pre-4.10.0 fdFree() behavior, ie return the fd itself while references exist, returning NULL introduced fd leak regressions. * Remove up-streamed patches: - obsoletesdeptag.diff, fdopen_strncat.diff, powerpc-fix-platform.diff, missingok.diff @@ -1506,7 +1561,7 @@ Tue Nov 20 18:47:06 UTC 2012 - dimstar@opensuse.org with -o parameter. Non-unique does not make sense when not passing -u/-g (useradd/groupadd) and fails on newer pwdutils/ shadowurils implementations. The macro does not allow for a - uid/gid being passed. + uid/gid being passed. ------------------------------------------------------------------- Mon Nov 12 10:29:13 UTC 2012 - coolo@suse.com @@ -1546,7 +1601,7 @@ Tue Oct 16 18:39:11 CEST 2012 - ro@suse.de - new patch: powerpc-fix-platform.diff fix platform detection for ppc vs ppc64 (failed on ppc64 with - personality changed to ppc) + personality changed to ppc) ------------------------------------------------------------------- Wed Oct 10 07:03:41 UTC 2012 - adrian@suse.de @@ -1565,7 +1620,7 @@ Mon Sep 24 11:43:13 UTC 2012 - coolo@suse.com - put an end date as echo into %run_permissions %run_suseconfig - %suse_update_config + %suse_update_config ------------------------------------------------------------------- Mon Sep 17 10:12:03 UTC 2012 - coolo@suse.com @@ -1609,7 +1664,7 @@ Wed Jul 4 18:04:54 CEST 2012 - fcrozat@suse.com ------------------------------------------------------------------- Wed Jun 13 13:24:28 CEST 2012 - ro@suse.de -- set suse_version to 1220 +- set suse_version to 1220 ------------------------------------------------------------------- Thu May 24 20:42:30 UTC 2012 - adrian@suse.de @@ -1733,7 +1788,7 @@ Mon Dec 12 11:02:10 UTC 2011 - coolo@suse.com Fri Dec 9 13:55:31 UTC 2011 - coolo@suse.com - do not hardcode brp check list, but call everything below - /usr/lib/rpm/brp-suse.d - and move our own brp scripts to + /usr/lib/rpm/brp-suse.d - and move our own brp scripts to brp-check-suse ------------------------------------------------------------------- @@ -1746,7 +1801,7 @@ Tue Nov 15 21:36:05 UTC 2011 - crrodriguez@opensuse.org - The %configure macro should use --disable-dependency-tracking that feature makes no sense when building rpms and only generates - extra I/O and uglify log files. Fedora uses it since + extra I/O and uglify log files. Fedora uses it since redhat-rpm-config version 9.1.0 too. ------------------------------------------------------------------- @@ -1763,7 +1818,7 @@ Wed Oct 19 18:28:39 CEST 2011 - mls@suse.de ------------------------------------------------------------------- Fri Sep 30 06:42:49 UTC 2011 - adrian@suse.de -- enforce armv7hl plattform by default, despite the kernel only +- enforce armv7hl plattform by default, despite the kernel only reports armv7l via uname. - make armv7hl backward compatible to armv7l @@ -1803,12 +1858,12 @@ Mon Aug 15 01:04:17 CEST 2011 - ro@suse.de - workaround in mono-find-requires: use >= as operator when finding .NET 1.0 dependencies, the .NET 1.5 libraries are compatible (note mono-find-requires and mono-find-provides as used by the - internal dependency generator are really outdated) + internal dependency generator are really outdated) ------------------------------------------------------------------- Wed Aug 10 02:40:22 UTC 2011 - crrodriguez@opensuse.org -- Do not use -fno-strict-aliasing globally, the code +- Do not use -fno-strict-aliasing globally, the code already does in places where really needed. ------------------------------------------------------------------- @@ -1980,7 +2035,7 @@ Fri Oct 29 15:03:50 CEST 2010 - mls@suse.de Mon Oct 4 17:34:52 UTC 2010 - cristian.rodriguez@opensuse.org - Enable libcap support so we can use the %caps macro in spec - files to set POSIX capabilities. + files to set POSIX capabilities. ------------------------------------------------------------------- Wed Sep 8 11:35:46 CEST 2010 - ro@suse.de @@ -2086,7 +2141,7 @@ Fri Oct 23 17:56:28 CEST 2009 - mls@suse.de ------------------------------------------------------------------- Tue Sep 8 02:40:55 CEST 2009 - crrodriguez@suse.de -- make lang_package(s) Noarch +- make lang_package(s) Noarch ------------------------------------------------------------------- Fri Sep 4 11:32:33 CEST 2009 - mls@suse.de @@ -2168,7 +2223,7 @@ Tue Jun 9 11:53:50 CEST 2009 - mmarek@suse.cz ------------------------------------------------------------------- Mon Apr 6 02:09:43 CEST 2009 - ro@suse.de -- fix typo in brp-symlink (bnc#457908) +- fix typo in brp-symlink (bnc#457908) ------------------------------------------------------------------- Tue Mar 31 11:25:14 CEST 2009 - mmarek@suse.cz @@ -2194,7 +2249,7 @@ Wed Feb 18 11:04:35 CET 2009 - jblunck@suse.de ------------------------------------------------------------------- Mon Feb 16 17:10:31 CET 2009 - ro@suse.de -- fix sort call in finddebuginfo again +- fix sort call in finddebuginfo again ------------------------------------------------------------------- Wed Feb 11 14:01:51 CET 2009 - coolo@suse.de @@ -2236,7 +2291,7 @@ Fri Dec 19 15:26:30 CET 2008 - mls@suse.de ------------------------------------------------------------------- Thu Dec 11 17:18:49 CET 2008 - ro@suse.de -- brp-symlink: whitelist kde4 doc path (bnc#457908) +- brp-symlink: whitelist kde4 doc path (bnc#457908) ------------------------------------------------------------------- Thu Dec 11 08:14:27 CET 2008 - agruen@suse.de @@ -2254,7 +2309,7 @@ Tue Dec 9 16:45:44 CET 2008 - schwab@suse.de ------------------------------------------------------------------- Mon Dec 1 12:35:39 CET 2008 - ro@suse.de -- add rpm to baselibs.conf (for net-snmp) +- add rpm to baselibs.conf (for net-snmp) - append a "nil" after suse_install_update_script and _message ------------------------------------------------------------------- @@ -2307,7 +2362,7 @@ Thu Nov 13 18:16:14 CET 2008 - agruen@suse.de ------------------------------------------------------------------- Fri Nov 7 15:03:25 CET 2008 - ro@suse.de -- update gcc flags to current set +- update gcc flags to current set ------------------------------------------------------------------- Fri Oct 31 18:59:25 CET 2008 - coolo@suse.de @@ -2358,7 +2413,7 @@ Tue Sep 16 01:01:30 CEST 2008 - ro@suse.de - fix find-debuginfo.sh and debugsource-package.diff to even apply (directory depth) -- add hack from jblunck using home made elfcmp +- add hack from jblunck using home made elfcmp ------------------------------------------------------------------- Mon Sep 15 20:32:32 CEST 2008 - jblunck@suse.de @@ -2377,7 +2432,7 @@ Thu Sep 11 15:33:52 CEST 2008 - mls@suse.de - update to 4.4.2.3 to get rid of >50 patches - make changelog cutter configurable -- update rpm-suse_macros +- update rpm-suse_macros ------------------------------------------------------------------- Fri Sep 5 16:56:23 CEST 2008 - dmueller@suse.de @@ -2392,7 +2447,7 @@ Mon Aug 25 14:48:28 CEST 2008 - prusnak@suse.cz ------------------------------------------------------------------- Thu Aug 21 01:49:00 CEST 2008 - ro@suse.de -- update rpm-suse_macros +- update rpm-suse_macros ------------------------------------------------------------------- Wed Aug 20 12:39:53 CEST 2008 - agruen@suse.de @@ -2446,14 +2501,14 @@ Wed Apr 16 17:57:43 CEST 2008 - jblunck@suse.de ------------------------------------------------------------------- Thu Apr 10 12:50:33 CEST 2008 - ro@suse.de -- added baselibs.conf file for xxbit packages +- added baselibs.conf file for xxbit packages ------------------------------------------------------------------- Thu Apr 10 12:32:46 CEST 2008 - jw@suse.de - added whatrequires-doc.diff Adds a hint to the misleading --whatrequires option, pointing to - the more useful -e --test. + the more useful -e --test. Motivated by a talk thread started by Hubert. ------------------------------------------------------------------- @@ -2476,13 +2531,13 @@ Wed Apr 9 12:56:57 CEST 2008 - jblunck@suse.de ------------------------------------------------------------------- Fri Mar 28 14:54:04 CET 2008 - coolo@suse.de -- leave the rpm package itself with bzip payload to +- leave the rpm package itself with bzip payload to avoid blocking updates from within running system ------------------------------------------------------------------- Thu Mar 27 14:43:24 CET 2008 - coolo@suse.de -- switch payload default to lzma -2 +- switch payload default to lzma -2 - flag GNOME docu as %doc (bnc#358838) ------------------------------------------------------------------- @@ -2511,7 +2566,7 @@ Fri Mar 14 18:05:18 CET 2008 - coolo@suse.de ------------------------------------------------------------------- Thu Mar 13 08:11:47 CET 2008 - coolo@suse.de -- support lzma payload using liblzma +- support lzma payload using liblzma ------------------------------------------------------------------- Thu Feb 21 21:58:39 CET 2008 - mls@suse.de @@ -2521,12 +2576,12 @@ Thu Feb 21 21:58:39 CET 2008 - mls@suse.de ------------------------------------------------------------------- Thu Jan 31 15:12:55 CET 2008 - ro@suse.de -- brp-symlink: whitelist /opt/kde3/share/doc*/HTML/*/common +- brp-symlink: whitelist /opt/kde3/share/doc*/HTML/*/common ------------------------------------------------------------------- Mon Jan 28 16:35:46 CET 2008 - ro@suse.de -- finddebuginfo.diff: disable debuginfo for mono at the moment +- finddebuginfo.diff: disable debuginfo for mono at the moment ------------------------------------------------------------------- Mon Jan 21 12:27:18 CET 2008 - mls@suse.de @@ -2552,8 +2607,8 @@ Mon Dec 3 13:38:20 CET 2007 - dmueller@suse.de ------------------------------------------------------------------- Fri Nov 16 20:46:42 CET 2007 - dmueller@suse.de -- shorten changelogs in binary rpms (#308569) - * saves 4.3MB for the one CD media +- shorten changelogs in binary rpms (#308569) + * saves 4.3MB for the one CD media ------------------------------------------------------------------- Thu Oct 11 13:37:16 CEST 2007 - schwab@suse.de @@ -2574,7 +2629,7 @@ Mon Sep 3 13:27:57 CEST 2007 - dmueller@suse.de ------------------------------------------------------------------- Fri Aug 31 18:41:04 CEST 2007 - dmueller@suse.de -- implement supplements for lang_packages (#306412) +- implement supplements for lang_packages (#306412) ------------------------------------------------------------------- Fri Aug 10 16:40:10 CEST 2007 - dmueller@suse.de @@ -2672,7 +2727,7 @@ Sun Apr 8 23:22:12 CEST 2007 - schwab@suse.de ------------------------------------------------------------------- Sat Mar 24 12:22:23 CET 2007 - ro@suse.de -- added libbz2-devel to BuildRequires and Requires for -devel +- added libbz2-devel to BuildRequires and Requires for -devel ------------------------------------------------------------------- Fri Mar 23 16:14:28 CET 2007 - dmueller@suse.de @@ -2799,7 +2854,7 @@ Tue Sep 19 13:47:56 CEST 2006 - rguenther@suse.de ------------------------------------------------------------------- Tue Aug 15 00:59:12 CEST 2006 - ro@suse.de -- workaround for gettext using MKINSTALLDIRS in configure.ac +- workaround for gettext using MKINSTALLDIRS in configure.ac ------------------------------------------------------------------- Wed Jun 14 15:55:36 CEST 2006 - mls@suse.de @@ -2851,7 +2906,7 @@ Mon Mar 20 14:51:02 CET 2006 - agruen@suse.de Sun Mar 19 20:27:11 CET 2006 - agruen@suse.de - Allow paths relative to %_sourcedir in - %suse_kernel_module_package. + %suse_kernel_module_package. ------------------------------------------------------------------- Sat Mar 18 08:24:12 CET 2006 - agruen@suse.de @@ -2892,7 +2947,7 @@ Fri Mar 10 21:18:38 CET 2006 - agruen@suse.de ------------------------------------------------------------------- Fri Mar 10 16:36:15 CET 2006 - dmueller@suse.de -- patch for improved debuginfo extraction (#150940) +- patch for improved debuginfo extraction (#150940) ------------------------------------------------------------------- Thu Mar 9 16:23:23 CET 2006 - agruen@suse.de @@ -2930,7 +2985,7 @@ Sun Feb 19 13:35:40 CET 2006 - agruen@suse.de ------------------------------------------------------------------- Sat Feb 18 15:17:50 CET 2006 - ro@suse.de -- allow debuginfo packages also for noarch (for mono,java) +- allow debuginfo packages also for noarch (for mono,java) ------------------------------------------------------------------- Fri Feb 17 15:00:28 CET 2006 - mls@suse.de @@ -3077,13 +3132,13 @@ Wed Dec 7 04:27:28 CET 2005 - agruen@suse.de ------------------------------------------------------------------- Tue Nov 22 01:17:34 CET 2005 - ro@suse.de -- change NO_BRP_STRIP_DEBUG to NO_DEBUGINFO_STRIP_DEBUG +- change NO_BRP_STRIP_DEBUG to NO_DEBUGINFO_STRIP_DEBUG - fix patchrpm code not to modify immutable header parts ------------------------------------------------------------------- Fri Nov 18 13:05:33 CET 2005 - ro@suse.de -- honor NO_BRP_STRIP_DEBUG in find-debuginfo.sh +- honor NO_BRP_STRIP_DEBUG in find-debuginfo.sh ------------------------------------------------------------------- Sat Oct 29 00:28:08 CEST 2005 - mls@suse.de @@ -3096,12 +3151,12 @@ Sat Oct 29 00:28:08 CEST 2005 - mls@suse.de ------------------------------------------------------------------- Mon Oct 24 02:34:43 CEST 2005 - ro@suse.de -- find-requires/find-provides: fix MONO_PATH +- find-requires/find-provides: fix MONO_PATH ------------------------------------------------------------------- Thu Oct 20 17:57:28 CEST 2005 - ro@suse.de -- find-requires/find-provides: update mono hooks +- find-requires/find-provides: update mono hooks ------------------------------------------------------------------- Wed Sep 7 18:13:11 CEST 2005 - matz@suse.de @@ -3170,7 +3225,7 @@ Wed Apr 6 08:01:58 CEST 2005 - meissner@suse.de ------------------------------------------------------------------- Tue Apr 5 11:48:14 CEST 2005 - bg@suse.de -- add noarch to valid hppa architectures +- add noarch to valid hppa architectures ------------------------------------------------------------------- Thu Mar 24 15:53:12 CET 2005 - uli@suse.de @@ -3230,7 +3285,7 @@ Fri Feb 4 00:50:00 CET 2005 - ro@suse.de ------------------------------------------------------------------- Thu Feb 3 17:09:32 CET 2005 - ro@suse.de -- hppa may install noarch +- hppa may install noarch ------------------------------------------------------------------- Wed Feb 2 01:09:53 CET 2005 - schwab@suse.de @@ -3240,7 +3295,7 @@ Wed Feb 2 01:09:53 CET 2005 - schwab@suse.de ------------------------------------------------------------------- Mon Jan 31 16:41:54 CET 2005 - adrian@suse.de -- handle also ??_?? languages in %find_lang. +- handle also ??_?? languages in %find_lang. ------------------------------------------------------------------- Fri Jan 28 17:21:22 CET 2005 - coolo@suse.de @@ -3276,7 +3331,7 @@ Fri Dec 3 16:11:03 CET 2004 - mls@suse.de ------------------------------------------------------------------- Thu Nov 25 23:47:44 CET 2004 - ro@suse.de -- fix build with python-2.4 +- fix build with python-2.4 ------------------------------------------------------------------- Tue Nov 16 00:26:15 CET 2004 - ro@suse.de @@ -3510,7 +3565,7 @@ Fri Oct 10 15:25:26 CEST 2003 - sf@suse.de ------------------------------------------------------------------- Fri Oct 10 01:26:57 CEST 2003 - ro@suse.de -- ignore "linux-gate.so" in ldd output (on 2.6 systems) +- ignore "linux-gate.so" in ldd output (on 2.6 systems) ------------------------------------------------------------------- Wed Oct 8 15:22:01 CEST 2003 - schwab@suse.de @@ -3630,7 +3685,7 @@ Fri Jun 20 11:13:46 CEST 2003 - kukuk@suse.de ------------------------------------------------------------------- Thu Jun 19 17:31:03 CEST 2003 - ro@suse.de -- fix build (gettext and definition of mkinstalldirs) +- fix build (gettext and definition of mkinstalldirs) ------------------------------------------------------------------- Mon Jun 16 10:10:27 CEST 2003 - kukuk@suse.de @@ -3735,7 +3790,7 @@ Thu May 8 21:27:03 CEST 2003 - mls@suse.de ------------------------------------------------------------------- Mon Apr 7 12:36:55 CEST 2003 - ro@suse.de -- fix for new head(1) syntax +- fix for new head(1) syntax ------------------------------------------------------------------- Mon Mar 10 10:55:29 CET 2003 - mls@suse.de @@ -3823,7 +3878,7 @@ Mon Nov 11 16:34:57 CET 2002 - ma@suse.de ------------------------------------------------------------------- Fri Oct 25 14:58:24 CEST 2002 - sf@suse.de -- corrected %_libdir-macro (rpm-3.0.6-platform.diff) +- corrected %_libdir-macro (rpm-3.0.6-platform.diff) ------------------------------------------------------------------- Mon Oct 21 10:47:49 CEST 2002 - schwab@suse.de @@ -3845,7 +3900,7 @@ Wed Oct 2 15:29:39 MEST 2002 - mls@suse.de ------------------------------------------------------------------- Sat Aug 24 11:37:29 CEST 2002 - ro@suse.de -- fix popt-devel requires +- fix popt-devel requires ------------------------------------------------------------------- Sun Aug 18 10:19:51 CEST 2002 - olh@suse.de @@ -3941,7 +3996,7 @@ Tue Jul 2 16:36:05 CEST 2002 - ke@suse.de ------------------------------------------------------------------- Fri Jun 21 00:03:09 CEST 2002 - ro@suse.de -- automake is 1.6.2 +- automake is 1.6.2 ------------------------------------------------------------------- Wed Jun 12 11:31:55 CEST 2002 - bk@suse.de @@ -3975,7 +4030,7 @@ Fri May 17 18:25:34 CEST 2002 - olh@suse.de ------------------------------------------------------------------- Wed May 15 14:15:41 CEST 2002 - ro@suse.de -- update brp-x86_64-linux +- update brp-x86_64-linux ------------------------------------------------------------------- Wed May 15 12:53:29 CEST 2002 - mfabian@suse.de @@ -3994,16 +4049,16 @@ Fri Apr 26 16:58:57 CEST 2002 - sf@suse.de - fixed brp-x86_64-linux script - added *.a-files to brp-script -- look _only_ for files or links with names *.a, *.so* +- look _only_ for files or links with names *.a, *.so* - added /opt/gnome/lib and /opt/kde/lib ------------------------------------------------------------------- Wed Apr 24 16:01:11 CEST 2002 - sf@suse.de -- added script to show requires and provides with 64 bit +- added script to show requires and provides with 64 bit (like s390 and sparc64) -- rpm will now stop (on x86_64) if a 64-bit binary - (or a link to one) is found in +- rpm will now stop (on x86_64) if a 64-bit binary + (or a link to one) is found in $RPM_BUILD_ROOT{, /usr, /usr/X11R6}/lib ------------------------------------------------------------------- @@ -4045,7 +4100,7 @@ Thu Apr 11 15:40:54 MEST 2002 - mls@suse.de Wed Apr 10 18:22:23 CEST 2002 - sf@suse.de - added x86_64 architecture -- added --libdir to autogen.sh to copy the libs depending on +- added --libdir to autogen.sh to copy the libs depending on architecture (lib / lib64) ------------------------------------------------------------------- @@ -4061,7 +4116,7 @@ Fri Mar 22 20:23:59 MET 2002 - mls@suse.de ------------------------------------------------------------------- Wed Mar 20 00:16:36 CET 2002 - ro@suse.de -- modified config.diff for currently used optflags (#15123) +- modified config.diff for currently used optflags (#15123) ------------------------------------------------------------------- Mon Mar 18 17:08:16 CET 2002 - schwab@suse.de @@ -4109,18 +4164,18 @@ Mon Feb 18 18:10:49 CET 2002 - ro@suse.de ------------------------------------------------------------------- Mon Feb 11 23:22:33 CET 2002 - ro@suse.de -- tar option for bz2 is now "j" (re-added) +- tar option for bz2 is now "j" (re-added) ------------------------------------------------------------------- Mon Feb 11 22:16:33 CET 2002 - ma@suse.de -- unk_ugname_cached.diff: Upon building a package, unpacking sources +- unk_ugname_cached.diff: Upon building a package, unpacking sources by calling tar from the spec file, may lead to files with unknown - user/group names. If those files are to be included in the final + user/group names. If those files are to be included in the final package, it's not appropriate to simply map unknown user/group names to the builders user/group (usg. root). This behaviour has been disabled - and building the package will fail. There are ample means to propperly - define file attributes. If a spec file does not use them, although it + and building the package will fail. There are ample means to propperly + define file attributes. If a spec file does not use them, although it should, it's considered broken. Unknown user/group names lead to NULL entries in rpms user/group name cache, which may cause a segmentation fault on cache lookup. This has been fixed. @@ -4128,7 +4183,7 @@ Mon Feb 11 22:16:33 CET 2002 - ma@suse.de ------------------------------------------------------------------- Sat Jan 26 11:37:18 CET 2002 - ro@suse.de -- apply configure-diff also on s390x +- apply configure-diff also on s390x ------------------------------------------------------------------- Mon Jan 21 22:34:19 CET 2002 - bk@suse.de @@ -4184,7 +4239,7 @@ Thu Nov 22 18:53:31 MET 2001 - mls@suse.de ------------------------------------------------------------------- Thu Nov 15 17:50:07 CET 2001 - ma@suse.de -- Fixed: copyFile() in rpmchecksig didn't recognize 'No space left on +- Fixed: copyFile() in rpmchecksig didn't recognize 'No space left on device' condition, when creating tempfiles. rpm reported that the signature was not ok instead. (#12294) @@ -4197,7 +4252,7 @@ Thu Nov 8 13:42:24 CET 2001 - adrian@suse.de ------------------------------------------------------------------- Sat Nov 3 00:50:01 CET 2001 - ro@suse.de -- accept automake 1.5 (still needs depcomp added) +- accept automake 1.5 (still needs depcomp added) ------------------------------------------------------------------- Tue Sep 4 11:53:10 CEST 2001 - schwab@suse.de @@ -4229,7 +4284,7 @@ Mon Jul 2 13:45:06 CEST 2001 - ma@suse.de Wed Jun 20 12:33:32 CEST 2001 - ma@suse.de - Don't define popt version via macro. Abuild does not like it (#8224). -- Patches for rpmrc.in (ia64.dif,ppc64.rpmrc.diff) incorporated +- Patches for rpmrc.in (ia64.dif,ppc64.rpmrc.diff) incorporated into config.diff. - Patches for brp scripts (strip_no_lib.dif) and sparc64-linux.{req,prov} scripts (sparc64.dif) incorporated into pkg_build.diff. @@ -4237,7 +4292,7 @@ Wed Jun 20 12:33:32 CEST 2001 - ma@suse.de ------------------------------------------------------------------- Wed Jun 13 15:42:07 UTC 2001 - bk@suse.de -- rpm-3.0.6.config.diff: add s390x support +- rpm-3.0.6.config.diff: add s390x support ------------------------------------------------------------------- Mon Jun 11 19:23:54 CEST 2001 - olh@suse.de @@ -4287,12 +4342,12 @@ Fri Apr 6 18:33:29 CEST 2001 - kukuk@suse.de ------------------------------------------------------------------- Thu Mar 29 01:13:14 CEST 2001 - ro@suse.de -- provides/requires script: add "-n200" to xargs arguments +- provides/requires script: add "-n200" to xargs arguments ------------------------------------------------------------------- Mon Feb 26 00:50:46 CET 2001 - ro@suse.de -- no optimization for alpha for now ... +- no optimization for alpha for now ... ------------------------------------------------------------------- Wed Feb 14 11:23:56 CET 2001 - ma@suse.de @@ -4466,7 +4521,7 @@ Thu Mar 2 16:23:41 CET 2000 - schwab@suse.de ------------------------------------------------------------------- Mon Feb 28 18:06:21 CET 2000 - ma@suse.de -- remove 'libNoVersion' in find-requires +- remove 'libNoVersion' in find-requires ------------------------------------------------------------------- Wed Feb 23 21:28:01 CET 2000 - schwab@suse.de @@ -4476,7 +4531,7 @@ Wed Feb 23 21:28:01 CET 2000 - schwab@suse.de ------------------------------------------------------------------- Mon Feb 7 17:07:57 CET 2000 - ma@suse.de -- rebuilddb fix +- rebuilddb fix - set info/mandir macros to /usr/share/... ------------------------------------------------------------------- @@ -4489,7 +4544,7 @@ Wed Feb 2 18:31:11 CET 2000 - ma@suse.de Sat Nov 13 13:08:53 MET 1999 - kukuk@suse.de - Add sparc64 directory -- Fix installation into RPM_BUILD_ROOT directory +- Fix installation into RPM_BUILD_ROOT directory ------------------------------------------------------------------- Mon Nov 8 19:58:14 MET 1999 - kukuk@suse.de @@ -4499,7 +4554,7 @@ Mon Nov 8 19:58:14 MET 1999 - kukuk@suse.de ------------------------------------------------------------------- Thu Nov 4 16:55:45 CET 1999 - bs@suse.de -- fixed bug in find-requires regarding pseudo scripts +- fixed bug in find-requires regarding pseudo scripts starting with "#! --" ------------------------------------------------------------------- @@ -4526,7 +4581,7 @@ Thu Sep 9 12:15:28 CEST 1999 - bs@suse.de ------------------------------------------------------------------- Mon Jul 19 16:00:50 MEST 1999 - ma@suse.de -- again rebuilddb.patch +- again rebuilddb.patch ------------------------------------------------------------------- Wed Jul 14 14:30:15 MEST 1999 - ro@suse.de @@ -4570,7 +4625,7 @@ Mon Apr 26 18:00:01 MEST 1999 - ro@suse.de ------------------------------------------------------------------- Mon Apr 12 15:34:40 MEST 1999 - ro@suse.de -- update to 2.93 +- update to 2.93 ------------------------------------------------------------------- Fri Mar 19 00:46:37 MET 1999 - ro@suse.de @@ -4645,8 +4700,8 @@ Thu Nov 5 18:41:54 MET 1998 - ma@suse.de - new version 2.5.4 - fix for rebuilddb - fix for %config(noreplace) -- RPM-Changes html document that describes the important changes - in RPM since what is documented in Maximum RPM. +- RPM-Changes html document that describes the important changes + in RPM since what is documented in Maximum RPM. ------------------------------------------------------------------- Tue Nov 3 17:07:32 MET 1998 - ro@suse.de @@ -4695,13 +4750,13 @@ Mon Oct 27 15:29:41 MET 1997 - ma@suse.de - patch: always 'chdir /' before executing scripts. - patch: remove empty dirs when installing a symlink - patch: ignore errors when installing a symlink and called from YaST -- de.po update +- de.po update ------------------------------------------------------------------- Thu Aug 7 17:46:48 MEST 1997 - ma@suse.de - duplicate '--nodeps' entry in rpm manpage deleted. -- quick patch to allow installing rpm v1 packages. +- quick patch to allow installing rpm v1 packages. - workaround to skip installing a symlink (Jul 15 1997) is disabeled, unless environment variable RPM_IgnoreFailedSymlinks is set. diff --git a/rpm.spec b/rpm.spec index d040f01..7cad717 100644 --- a/rpm.spec +++ b/rpm.spec @@ -19,11 +19,12 @@ #Compat macro for new _fillupdir macro introduced in Nov 2017 %{?!_fillupdir:%define _fillupdir /var/adm/fillup-templates} -%global librpmsover 9 +%global librpmsover 10 Name: rpm BuildRequires: binutils BuildRequires: bzip2 +BuildRequires: cmake BuildRequires: file-devel BuildRequires: findutils BuildRequires: gcc @@ -56,16 +57,17 @@ Requires: rpm-config-SUSE Summary: The RPM Package Manager License: GPL-2.0-or-later Group: System/Packages -Version: 4.18.0 +Version: 4.19.1 Release: 0 URL: https://rpm.org/ #Git-Clone: https://github.com/rpm-software-management/rpm -Source: http://ftp.rpm.org/releases/rpm-4.17.x/rpm-%{version}.tar.bz2 +Source: https://ftp.osuosl.org/pub/rpm/releases/rpm-4.19.x/rpm-%{version}.tar.bz2 Source5: rpmsort Source8: rpmconfigcheck Source9: sysconfig.services-rpm Source12: baselibs.conf Source13: rpmconfigcheck.service +Source14: build-aux.tar.bz2 # quilt patches start here Patch5: usr-lib-sysimage-rpm.patch Patch13: ignore-auxv.diff @@ -108,12 +110,9 @@ Patch131: posttrans.diff Patch133: zstdpool.diff Patch134: zstdthreaded.diff Patch135: selinux_transactional_update.patch -Patch136: x86_64-microarchitectures.patch -Patch137: cpuid_lzcnt.patch -Patch138: libmagic-exceptions.patch -Patch139: remove-awk-dependency.patch -# touches a generated file -Patch180: whatrequires-doc.diff +Patch136: rpmsort_reverse.diff +Patch137: python_setup.diff +Patch138: canongnu.diff Patch6464: auto-config-update-aarch64-ppc64le.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build # @@ -209,6 +208,9 @@ Provides and requires generator for .pl files and modules. %prep %setup -q -n rpm-%{version} +%ifarch aarch64 ppc64le riscv64 +tar xf %{SOURCE14} +%endif rm -rf sqlite %patch -P 5 -P 12 -P 13 -P 18 @@ -223,8 +225,7 @@ rm -rf sqlite %patch -P 100 -P 102 -P 103 %patch -P 117 %patch -P 122 -P 123 -%patch -P 131 -P 133 -P 134 -P 135 -P 136 -P 137 -P 138 -P 139 -%patch -P 180 +%patch -P 131 -P 133 -P 134 -P 135 -P 136 -P 137 -P 138 %ifarch aarch64 ppc64le riscv64 %patch6464 @@ -240,51 +241,50 @@ export LDFLAGS="-Wl,-Bsymbolic-functions -ffunction-sections" export CFLAGS="-g -O0 -fno-strict-aliasing -ffunction-sections" %endif +mkdir _build +cd _build +cmake .. \ %ifarch %arm -BUILDTARGET="--build=%{_target_cpu}-suse-linux-gnueabi" -%elifarch x86_64 %x86_64 -BUILDTARGET="--build=x86_64-suse-linux" -%else -BUILDTARGET="--build=%{_target_cpu}-suse-linux" + -DRPMCANONGNU=-gnueabi \ %endif -export __FIND_DEBUGINFO=/usr/lib/rpm/find-debuginfo - -autoreconf -fi -./configure --disable-dependency-tracking --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \ ---libdir=%{_libdir} --sysconfdir=/etc --localstatedir=/var --sharedstatedir=/var/lib \ ---with-lua \ ---with-vendor=suse \ ---with-rundir=/run \ ---without-archive \ ---with-selinux \ ---with-crypto=libgcrypt \ ---with-acl \ ---with-cap \ ---enable-shared \ ---enable-ndb \ ---enable-bdb-ro \ ---enable-zstd \ ---enable-sqlite=no \ -%{?with_python: --enable-python} \ -$BUILDTARGET - -rm po/de.gmo + -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \ + -DCMAKE_INSTALL_MANDIR:PATH=share/man \ + -DCMAKE_INSTALL_INFODIR:PATH=share/info \ + -DCMAKE_INSTALL_DOCDIR:PATH=%{_defaultdocdir}/%{NAME} \ + -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \ + -DCMAKE_INSTALL_FULL_SYSCONFDIR:PATH=/etc \ + -DCMAKE_INSTALL_FULL_LOCALSTATEDIR:PATH=/var \ + -DCMAKE_INSTALL_SHAREDSTATEDIR:PATH=/var/lib \ + -DCMAKE_INSTALL_FULL_SHAREDSTATEDIR:PATH=/var/lib \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DRPM_VENDOR=suse \ + -DWITH_ARCHIVE=OFF \ + -DWITH_SELINUX=ON \ + -DWITH_INTERNAL_OPENPGP=ON \ + -DENABLE_NDB=ON \ + -DENABLE_BDB_RO=ON \ + -DENABLE_SQLITE=OFF \ + -DWITH_AUDIT=OFF \ + -DWITH_DBUS=OFF \ + -DENABLE_PYTHON=%{?with_python:ON}%{?!with_python:OFF} \ + -DENABLE_TESTSUITE=OFF \ + -D__FIND_DEBUGINFO=/usr/lib/rpm/find-debuginfo \ + -D__AR:FILEPATH=ar -D__AS:FILEPATH=as \ + -D__CC:FILEPATH=gcc -D__CPP:FILEPATH="gcc -E" -D__CXX:FILEPATH=g++ \ + -D__GPG:FILEPATH=/usr/bin/gpg2 -D__AWK:FILEPATH=/usr/bin/gawk make %{?_smp_mflags} %install mkdir -p %{buildroot}/usr/lib mkdir -p %{buildroot}/usr/share/locale ln -s ../share/locale %{buildroot}/usr/lib/locale +pushd _build %make_install +popd mkdir -p %{buildroot}/bin %if 0%{?suse_version} < 1550 ln -s /usr/bin/rpm %{buildroot}/bin/rpm %endif -# remove .la file and the static variant of libpopt -# have to remove the dependency from other .la files as well -for f in %{buildroot}/%{_libdir}/*.la; do - sed -i -e "s,/%_lib/libpopt.la,-lpopt,g" $f -done mkdir -p %{buildroot}/usr/sbin install -m 755 %{SOURCE8} %{buildroot}/usr/sbin mkdir -p %{buildroot}/usr/lib/systemd/system @@ -302,7 +302,6 @@ for d in %{buildroot}/usr/lib/rpm/platform/*-linux/macros ; do chmod 755 %{buildroot}/usr/src/packages/RPMS/$dd done mkdir -p %{buildroot}/usr/lib/sysimage/rpm -gzip -9 %{buildroot}/%{_mandir}/man[18]/*.[18] export RPM_BUILD_ROOT %ifarch s390x [ -f scripts/brp-%_arch-linux ] && sh scripts/brp-%_arch-linux @@ -338,8 +337,6 @@ install -m 755 build-aux/config.guess %{buildroot}/usr/lib/rpm install -m 755 build-aux/config.sub %{buildroot}/usr/lib/rpm %endif rm -rf %{buildroot}/%{_libdir}/python%{py_ver} -rm -f %{buildroot}%{_libdir}/*.la -rm -f %{buildroot}%{_libdir}/rpm-plugins/*.la bash %{buildroot}/usr/lib/rpm/find-lang.sh %{buildroot} rpm # On arm the kernel architecture is ignored. Not the best idea, but lets stay compatible with other distros %ifarch armv7hl armv6hl @@ -348,9 +345,10 @@ bash %{buildroot}/usr/lib/rpm/find-lang.sh %{buildroot} rpm echo -n "%{_target_cpu}-suse-linux-gnueabi" > %{buildroot}/etc/rpm/platform %endif -# make ndb the default database backend -echo "setting the default database backend to 'ndb'" -sed -i -e '/_db_backend/s/sqlite/ndb/' %{buildroot}/usr/lib/rpm/macros +# disable sysuser handling for now +rm %{buildroot}/usr/lib/rpm/sysusers.sh +rm %{buildroot}/usr/lib/rpm/fileattrs/sysusers.attr +sed -e '/^%%__systemd_sysusers/s/^/#/' -i %{buildroot}/usr/lib/rpm/macros %post %{fillup_only -an services} @@ -391,7 +389,8 @@ fi %files -f rpm.lang %defattr(-,root,root) %license COPYING -%doc docs/manual +%doc %{_datadir}/doc/packages/rpm +%exclude %{_datadir}/doc/packages/rpm/API /etc/rpm %if 0%{?suse_version} < 1550 /bin/rpm @@ -407,6 +406,7 @@ fi %{_bindir}/rpmquery %{_bindir}/rpmsign %{_bindir}/rpmverify + %{_bindir}/rpmsort /usr/sbin/rpmconfigcheck /usr/lib/systemd/system/rpmconfigcheck.service %dir /usr/lib/rpm @@ -419,7 +419,6 @@ fi /usr/lib/rpm/rpmrc /usr/lib/rpm/rpmsort /usr/lib/rpm/rpmuncompress - /usr/lib/rpm/rpm_macros_provides.sh /usr/lib/rpm/suse /usr/lib/rpm/tgpg %{_libdir}/rpm-plugins @@ -448,6 +447,7 @@ fi /usr/bin/rpmbuild /usr/lib/rpm/pkgconfigdeps.sh /usr/lib/rpm/ocamldeps.sh +/usr/lib/rpm/rpm_macros_provides.sh /usr/lib/rpm/elfdeps /usr/lib/rpm/rpmdeps /usr/bin/rpmspec @@ -479,5 +479,7 @@ fi %{_libdir}/librpmio.so %{_libdir}/librpmsign.so %{_libdir}/pkgconfig/rpm.pc +%{_libdir}/cmake/rpm +%doc %{_datadir}/doc/packages/rpm/API %changelog diff --git a/rpmqpack.diff b/rpmqpack.diff index a381533..92000e5 100644 --- a/rpmqpack.diff +++ b/rpmqpack.diff @@ -1,29 +1,15 @@ ---- Makefile.am.orig 2022-08-30 11:42:23.754853580 +0000 -+++ Makefile.am 2022-12-02 13:15:01.631426573 +0000 -@@ -186,6 +186,10 @@ rpmgraph_LDADD = lib/librpm.la rpmio/lib - - dist_bin_SCRIPTS = scripts/gendiff - -+bin_PROGRAMS += rpmqpack -+rpmqpack_SOURCES = rpmqpack.c -+rpmqpack_LDADD = lib/librpm.la -+ - rpmconfig_DATA = rpmrc - rpmrc: $(top_srcdir)/rpmrc.in - @$(SED) \ ---- docs/man/Makefile.am.orig 2022-04-07 11:13:18.958517604 +0000 -+++ docs/man/Makefile.am 2022-12-02 13:16:00.071289072 +0000 -@@ -9,7 +9,7 @@ EXTRA_DIST += gendiff.1.md - - man_man8dir = $(mandir)/man8 - man_man8_DATA = rpm.8 rpm-misc.8 rpmbuild.8 rpmdeps.8 rpmgraph.8 rpm2cpio.8 --man_man8_DATA += rpmdb.8 rpmkeys.8 rpmsign.8 rpmspec.8 rpmlua.8 -+man_man8_DATA += rpmdb.8 rpmkeys.8 rpmsign.8 rpmspec.8 rpmlua.8 rpmqpack.8 - - EXTRA_DIST += rpm.8.md rpm-misc.8.md rpmbuild.8.md rpmdeps.8.md rpmgraph.8.md - EXTRA_DIST += rpm2cpio.8.md rpmdb.8.md rpmkeys.8.md rpmsign.8.md rpmspec.8.md ---- docs/man/rpmqpack.8.orig 2022-12-02 13:15:01.635426563 +0000 -+++ docs/man/rpmqpack.8 2022-12-02 13:15:01.635426563 +0000 +--- docs/man/CMakeLists.txt.orig 2023-12-12 10:57:31.000000000 +0000 ++++ docs/man/CMakeLists.txt 2023-12-13 13:23:17.166128333 +0000 +@@ -2,6 +2,7 @@ set(core + gendiff.1 rpm2cpio.8 + rpm.8 rpmbuild.8 rpmdb.8 rpmkeys.8 rpmsign.8 rpmspec.8 + rpmdeps.8 rpmgraph.8 rpmlua.8 rpm-misc.8 rpmsort.8 ++ rpmqpack.8 + ) + set(extra + rpm2archive.8 rpm-plugins.8 rpm-plugin-prioreset.8 rpm-plugin-syslog.8 +--- docs/man/rpmqpack.8.orig 2023-12-13 13:23:17.166128333 +0000 ++++ docs/man/rpmqpack.8 2023-12-13 13:23:17.166128333 +0000 @@ -0,0 +1,25 @@ +.TH RPMQPACK 8 "Mar 2002" +.SH NAME @@ -50,8 +36,27 @@ + +.SH AUTHOR +Michael Schroeder ---- rpmqpack.c.orig 2022-12-02 13:15:01.635426563 +0000 -+++ rpmqpack.c 2022-12-02 13:15:01.635426563 +0000 +--- tools/CMakeLists.txt.orig 2023-12-13 13:24:27.374021318 +0000 ++++ tools/CMakeLists.txt 2023-12-13 13:25:03.557966164 +0000 +@@ -7,6 +7,7 @@ add_executable(rpm2cpio rpm2cpio.c cliut + add_executable(rpmsign rpmsign.c cliutils) + add_executable(rpmbuild rpmbuild.c cliutils) + add_executable(rpmspec rpmspec.c cliutils) ++add_executable(rpmqpack rpmqpack.c) + + add_executable(rpmdeps rpmdeps.c) + add_executable(rpmgraph rpmgraph.c) +@@ -50,7 +51,7 @@ foreach(cmd rpmverify rpmquery) + endforeach() + install(TARGETS + rpm rpmdb rpmkeys rpm2cpio rpmsign rpmbuild rpmspec +- rpmlua rpmgraph rpmsort ++ rpmlua rpmgraph rpmsort rpmqpack + ) + install(TARGETS elfdeps rpmdeps rpmuncompress DESTINATION ${RPM_CONFIGDIR}) + +--- tools/rpmqpack.c.orig 2023-12-13 13:23:17.166128333 +0000 ++++ tools/rpmqpack.c 2023-12-13 13:23:17.166128333 +0000 @@ -0,0 +1,60 @@ +#include +#include diff --git a/rpmrc.diff b/rpmrc.diff index 1804678..41978b8 100644 --- a/rpmrc.diff +++ b/rpmrc.diff @@ -1,6 +1,6 @@ ---- rpmrc.in.orig 2022-04-07 11:13:19.072518377 +0000 -+++ rpmrc.in 2022-12-02 13:14:27.719506789 +0000 -@@ -12,16 +12,16 @@ +--- rpmrc.in.orig 2023-09-19 10:10:10.000000000 +0000 ++++ rpmrc.in 2023-10-09 12:44:42.206519465 +0000 +@@ -12,19 +12,19 @@ # "fat" binary with both archs, for Darwin optflags: fat -O2 -g -arch i386 -arch ppc @@ -21,12 +21,18 @@ optflags: geode -Os -g -m32 -march=geode -optflags: ia64 -O2 -g -optflags: x86_64 -O2 -g +-optflags: x86_64_v2 -O2 -g -march=x86-64-v2 +-optflags: x86_64_v3 -O2 -g -march=x86-64-v3 +-optflags: x86_64_v4 -O2 -g -march=x86-64-v4 +optflags: ia64 -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables +optflags: x86_64 -O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables ++optflags: x86_64_v2 -O2 -g -march=x86-64-v2 -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables ++optflags: x86_64_v3 -O2 -g -march=x86-64-v3 -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables ++optflags: x86_64_v4 -O2 -g -march=x86-64-v4 -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables optflags: amd64 -O2 -g optflags: ia32e -O2 -g -@@ -41,17 +41,18 @@ optflags: sparc64v -O2 -g -m64 -mtune=ni +@@ -44,17 +44,18 @@ optflags: sparc64v -O2 -g -m64 -mtune=ni optflags: m68k -O2 -g -fomit-frame-pointer @@ -54,7 +60,7 @@ optflags: hppa1.0 -O2 -g -mpa-risc-1-0 optflags: hppa1.1 -O2 -g -mpa-risc-1-0 optflags: hppa1.2 -O2 -g -mpa-risc-1-0 -@@ -75,10 +76,10 @@ optflags: armv5tl -O2 -g -march=armv5t +@@ -78,10 +79,10 @@ optflags: armv5tl -O2 -g -march=armv5t optflags: armv5tel -O2 -g -march=armv5te optflags: armv5tejl -O2 -g -march=armv5te optflags: armv6l -O2 -g -march=armv6 @@ -67,7 +73,7 @@ optflags: armv7hnl -O2 -g -march=armv7-a -mfloat-abi=hard -mfpu=neon optflags: armv8l -O2 -g -march=armv8-a optflags: armv8hl -O2 -g -march=armv8-a -mfloat-abi=hard -mfpu=vfpv4 -@@ -93,8 +94,8 @@ optflags: atariclone -O2 -g -fomit-frame +@@ -96,8 +97,8 @@ optflags: atariclone -O2 -g -fomit-frame optflags: milan -O2 -g -fomit-frame-pointer optflags: hades -O2 -g -fomit-frame-pointer @@ -78,7 +84,7 @@ optflags: sh3 -O2 -g optflags: sh4 -O2 -g -mieee -@@ -300,17 +301,17 @@ os_canon: MacOSX: macosx 21 +@@ -309,17 +310,17 @@ os_canon: MacOSX: macosx 21 ############################################################# # For a given uname().machine, the default build arch @@ -104,7 +110,7 @@ buildarchtranslate: i486: i386 buildarchtranslate: i386: i386 -@@ -332,6 +333,7 @@ buildarchtranslate: sparc64v: sparc64 +@@ -341,6 +342,7 @@ buildarchtranslate: sparc64v: sparc64 buildarchtranslate: osfmach3_ppc: ppc buildarchtranslate: powerpc: ppc buildarchtranslate: powerppc: ppc @@ -112,7 +118,7 @@ buildarchtranslate: ppc8260: ppc buildarchtranslate: ppc8560: ppc buildarchtranslate: ppc32dy4: ppc -@@ -397,6 +399,15 @@ buildarchtranslate: riscv64: riscv64 +@@ -409,6 +411,15 @@ buildarchtranslate: riscv64: riscv64 buildarchtranslate: loongarch64: loongarch64 @@ -128,7 +134,7 @@ ############################################################# # Architecture compatibility -@@ -461,16 +472,20 @@ arch_compat: mips64r6el: mipsr6el +@@ -473,16 +484,20 @@ arch_compat: mips64r6el: mipsr6el arch_compat: hppa2.0: hppa1.2 arch_compat: hppa1.2: hppa1.1 arch_compat: hppa1.1: hppa1.0 @@ -151,7 +157,7 @@ arch_compat: armv4tl: armv4l arch_compat: armv4l: armv3l arch_compat: armv3l: noarch -@@ -493,7 +508,7 @@ arch_compat: i370: noarch +@@ -505,7 +520,7 @@ arch_compat: i370: noarch arch_compat: s390: noarch arch_compat: s390x: s390 noarch @@ -160,7 +166,7 @@ arch_compat: x86_64: amd64 em64t athlon noarch arch_compat: amd64: x86_64 em64t athlon noarch -@@ -619,7 +634,8 @@ buildarch_compat: armv6hl: noarch +@@ -634,7 +649,8 @@ buildarch_compat: armv6hl: noarch buildarch_compat: hppa2.0: hppa1.2 buildarch_compat: hppa1.2: hppa1.1 buildarch_compat: hppa1.1: hppa1.0 diff --git a/rpmsort_reverse.diff b/rpmsort_reverse.diff new file mode 100644 index 0000000..cf283d6 --- /dev/null +++ b/rpmsort_reverse.diff @@ -0,0 +1,48 @@ +--- tools/rpmsort.c.orig 2023-10-11 11:38:36.639686209 +0000 ++++ tools/rpmsort.c 2023-10-11 12:01:36.112837741 +0000 +@@ -119,6 +119,11 @@ exit: + return vercmpflag; + } + ++static int package_version_compare_reverse(const void *p, const void *q) ++{ ++ return -package_version_compare(p, q); ++} ++ + static void add_input(const char *filename, char ***package_names, + size_t *n_package_names) + { +@@ -169,7 +174,13 @@ static void add_input(const char *filena + *n_package_names = n_names; + } + +-static struct poptOption optionsTable[] = { POPT_AUTOHELP POPT_TABLEEND }; ++static int reverse = 0; ++ ++static struct poptOption optionsTable[] = { ++ { "reverse", 'r', POPT_ARG_VAL, &reverse, 1, ++ N_("reverse the result of comparisons"), NULL }, ++ POPT_AUTOHELP POPT_TABLEEND ++}; + + int main(int argc, const char *argv[]) + { +@@ -181,7 +192,7 @@ int main(int argc, const char *argv[]) + + optCon = poptGetContext(NULL, argc, argv, optionsTable, 0); + poptSetOtherOptionHelp(optCon, ""); +- if (poptGetNextOpt(optCon) == 0) { ++ if (poptGetNextOpt(optCon) != -1) { + poptPrintUsage(optCon, stderr, 0); + exit(EXIT_FAILURE); + } +@@ -201,7 +212,8 @@ int main(int argc, const char *argv[]) + } + + qsort(package_names, n_package_names, sizeof(char *), +- package_version_compare); ++ reverse ? package_version_compare_reverse ++ : package_version_compare); + + /* Send sorted list to stdout. */ + for (int i = 0; i < n_package_names; i++) { diff --git a/selinux_transactional_update.patch b/selinux_transactional_update.patch index 46c1ee0..7638957 100644 --- a/selinux_transactional_update.patch +++ b/selinux_transactional_update.patch @@ -1,14 +1,12 @@ ---- plugins/selinux.c.orig 2022-04-07 11:13:19.027518072 +0000 -+++ plugins/selinux.c 2022-12-02 13:59:42.185032111 +0000 -@@ -8,6 +8,7 @@ - #include - #include - #include "lib/rpmplugin.h" +--- plugins/selinux.c.orig 2023-12-12 10:57:31.000000000 +0000 ++++ plugins/selinux.c 2023-12-13 13:28:30.509647090 +0000 +@@ -1,3 +1,5 @@ +#include ++ + #include "system.h" - #include "debug.h" - -@@ -173,6 +174,13 @@ static rpmRC selinux_fsm_file_prepare(rp + #include +@@ -166,6 +168,13 @@ static rpmRC selinux_fsm_file_prepare(rp if (conrc == 0 || (conrc < 0 && errno == EOPNOTSUPP)) rc = RPMRC_OK; diff --git a/weakdepscompat.diff b/weakdepscompat.diff index c026b93..06b545b 100644 --- a/weakdepscompat.diff +++ b/weakdepscompat.diff @@ -1,9 +1,9 @@ ---- build/parsePreamble.c.orig 2014-08-04 13:10:07.530953406 +0000 -+++ build/parsePreamble.c 2014-08-04 13:10:12.852929355 +0000 -@@ -343,6 +343,7 @@ static struct tokenBits_s const installS - { "verify", RPMSENSE_SCRIPT_VERIFY }, - { "pretrans", RPMSENSE_PRETRANS }, +--- build/parsePreamble.c.orig 2023-10-09 13:08:54.579843386 +0000 ++++ build/parsePreamble.c 2023-10-09 13:09:57.843727870 +0000 +@@ -351,6 +351,7 @@ static struct tokenBits_s const installS { "posttrans", RPMSENSE_POSTTRANS }, + { "preuntrans", RPMSENSE_PREUNTRANS }, + { "postuntrans", RPMSENSE_POSTUNTRANS }, + { "hint", RPMSENSE_MISSINGOK }, { NULL, 0 } }; diff --git a/whatrequires-doc.diff b/whatrequires-doc.diff deleted file mode 100644 index a1a4daf..0000000 --- a/whatrequires-doc.diff +++ /dev/null @@ -1,14 +0,0 @@ ---- docs/man/rpm.8.orig 2021-09-23 19:20:46.991203867 +0000 -+++ docs/man/rpm.8 2021-09-23 19:22:45.918961340 +0000 -@@ -601,6 +601,11 @@ Query all packages that provide the \f[I - \f[B]--whatrequires \f[R]\f[I]CAPABILITY\f[R] - Query all packages that require \f[I]CAPABILITY\f[R] for proper - functioning. -+.br -+Note that this does not return what requires a given package. -+A package usually provides multiple capabilities and file-names on which -+other packages may depend. To see the complete dependencies -+for a package, use \f[B]-e --test \f[R]\f[I]PACKAGE_NAME\f[R] - .TP - \f[B]--whatconflicts \f[R]\f[I]CAPABILITY\f[R] - Query all packages that conflict with \f[I]CAPABILITY\f[R]. diff --git a/x86_64-microarchitectures.patch b/x86_64-microarchitectures.patch deleted file mode 100644 index 4c0b896..0000000 --- a/x86_64-microarchitectures.patch +++ /dev/null @@ -1,196 +0,0 @@ -From 282f75e33f93e46854345598f576d052d5cfe390 Mon Sep 17 00:00:00 2001 -From: Fabian Vogt -Date: Thu, 8 Dec 2022 12:50:12 +0100 -Subject: [PATCH] Add x86-64 architecture levels (v2-v4) as architectures - -The x86_64 SysV psABI defines four levels of x86_64 with certain CPU features -required for each level. Those definitions are meant to be generically useful -and recognized as such by glibc and gcc as well. - -For backward-compatibility and to avoid surprises, default to building x86_64 -even on v2+ capable machines. ---- - installplatform | 2 +- - lib/rpmrc.c | 75 +++++++++++++++++++++++++++++++++++++++++++++++++ - macros.in | 4 +++ - rpmrc.in | 18 ++++++++++++ - 4 files changed, 98 insertions(+), 1 deletion(-) - ---- installplatform -+++ installplatform -@@ -78,7 +78,7 @@ for ARCH in noarch `grep ^arch_canon $RP - CANONARCH=i386 - CANONCOLOR=0 - ;; -- x86_64|amd64|ia32e) -+ x86_64*|amd64|ia32e) - ISANAME=x86 - ISABITS=64 - CANONARCH=x86_64 ---- lib/rpmrc.c -+++ lib/rpmrc.c -@@ -735,6 +735,71 @@ exit: - return rc; - } - -+# if defined(__linux__) && defined(__x86_64__) -+static inline void cpuid(uint32_t op, uint32_t op2, uint32_t *eax, uint32_t *ebx, uint32_t *ecx, uint32_t *edx) -+{ -+ asm volatile ( -+ "cpuid\n" -+ : "=a" (*eax), "=b" (*ebx), "=c" (*ecx), "=d" (*edx) -+ : "a" (op), "c" (op2)); -+} -+ -+/* From gcc's gcc/config/i386/cpuid.h */ -+/* Features (%eax == 1) */ -+/* %ecx */ -+#define bit_SSE3 (1 << 0) -+#define bit_LZCNT (1 << 5) -+#define bit_SSSE3 (1 << 9) -+#define bit_FMA (1 << 12) -+#define bit_CMPXCHG16B (1 << 13) -+#define bit_SSE4_1 (1 << 19) -+#define bit_SSE4_2 (1 << 20) -+#define bit_MOVBE (1 << 22) -+#define bit_POPCNT (1 << 23) -+#define bit_OSXSAVE (1 << 27) -+#define bit_AVX (1 << 28) -+#define bit_F16C (1 << 29) -+ -+/* Extended Features (%eax == 0x80000001) */ -+/* %ecx */ -+#define bit_LAHF_LM (1 << 0) -+ -+/* Extended Features (%eax == 7) */ -+/* %ebx */ -+#define bit_BMI (1 << 3) -+#define bit_AVX2 (1 << 5) -+#define bit_BMI2 (1 << 8) -+#define bit_AVX512F (1 << 16) -+#define bit_AVX512DQ (1 << 17) -+#define bit_AVX512CD (1 << 28) -+#define bit_AVX512BW (1 << 30) -+#define bit_AVX512VL (1u << 31) -+ -+static int get_x86_64_level(void) -+{ -+ int level = 1; -+ -+ unsigned int op_1_ecx = 0, op_80000001_ecx = 0, op_7_ebx = 0, unused; -+ cpuid(1, 0, &unused, &unused, &op_1_ecx, &unused); -+ cpuid(0x80000001, 0, &unused, &unused, &op_80000001_ecx, &unused); -+ cpuid(7, 0, &unused, &op_7_ebx, &unused, &unused); -+ -+ const unsigned int op_1_ecx_lv2 = bit_SSE3 | bit_SSSE3 | bit_CMPXCHG16B | bit_SSE4_1 | bit_SSE4_2 | bit_POPCNT; -+ if ((op_1_ecx & op_1_ecx_lv2) == op_1_ecx_lv2 && (op_80000001_ecx & bit_LAHF_LM)) -+ level = 2; -+ -+ const unsigned int op_1_ecx_lv3 = bit_LZCNT | bit_FMA | bit_MOVBE | bit_OSXSAVE | bit_AVX | bit_F16C; -+ const unsigned int op_7_ebx_lv3 = bit_BMI | bit_AVX2 | bit_BMI2; -+ if (level == 2 && (op_1_ecx & op_1_ecx_lv3) == op_1_ecx_lv3 && (op_7_ebx & op_7_ebx_lv3) == op_7_ebx_lv3) -+ level = 3; -+ -+ const unsigned int op_7_ebx_lv4 = bit_AVX512F | bit_AVX512DQ | bit_AVX512CD | bit_AVX512BW | bit_AVX512VL; -+ if (level == 3 && (op_7_ebx & op_7_ebx_lv4) == op_7_ebx_lv4) -+ level = 4; -+ -+ return level; -+} -+# endif - - # if defined(__linux__) && defined(__i386__) - #include -@@ -1287,6 +1352,16 @@ static void defaultMachine(rpmrcCtx ctx, - } - # endif - -+# if defined(__linux__) && defined(__x86_64__) -+ { -+ int x86_64_level = get_x86_64_level(); -+ if (x86_64_level > 1) { -+ strcpy(un.machine, "x86_64_vX"); -+ un.machine[8] = '0' + x86_64_level; -+ } -+ } -+#endif -+ - /* the uname() result goes through the arch_canon table */ - canon = lookupInCanonTable(un.machine, - ctx->tables[RPM_MACHTABLE_INSTARCH].canons, ---- macros.in -+++ macros.in -@@ -1064,6 +1064,10 @@ package or when debugging this package.\ - %ix86 i386 i486 i586 i686 pentium3 pentium4 athlon geode - - #------------------------------------------------------------------------------ -+# arch macro for all supported x86_64 processors -+%x86_64 x86_64 x86_64_v2 x86_64_v3 x86_64_v4 amd64 em64t -+ -+#------------------------------------------------------------------------------ - # arch macro for all supported 32-bit ARM processors - %arm32 armv3l armv4b armv4l armv4tl armv5b armv5l armv5teb armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl armv8l armv8hl armv8hnl armv8hcnl - ---- rpmrc.in -+++ rpmrc.in -@@ -22,6 +22,10 @@ optflags: athlon -O2 -g -m32 -march=athl - optflags: geode -Os -g -m32 -march=geode - optflags: ia64 -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables - optflags: x86_64 -O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -+optflags: x86_64_v2 -O2 -g -march=x86-64-v2 -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -+optflags: x86_64_v3 -O2 -g -march=x86-64-v3 -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -+optflags: x86_64_v4 -O2 -g -march=x86-64-v4 -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -+ - optflags: amd64 -O2 -g - optflags: ia32e -O2 -g - -@@ -148,6 +152,9 @@ archcolor: s390x 2 - archcolor: ia64 2 - - archcolor: x86_64 2 -+archcolor: x86_64_v2 2 -+archcolor: x86_64_v3 2 -+archcolor: x86_64_v4 2 - - archcolor: sh3 1 - archcolor: sh4 1 -@@ -168,6 +175,9 @@ arch_canon: i586: i586 1 - arch_canon: i486: i486 1 - arch_canon: i386: i386 1 - arch_canon: x86_64: x86_64 1 -+arch_canon: x86_64_v2: x86_64_v2 1 -+arch_canon: x86_64_v3: x86_64_v3 1 -+arch_canon: x86_64_v4: x86_64_v4 1 - arch_canon: amd64: amd64 1 - arch_canon: ia32e: ia32e 1 - arch_canon: em64t: em64t 1 -@@ -378,6 +388,9 @@ buildarchtranslate: s390x: s390x - buildarchtranslate: ia64: ia64 - - buildarchtranslate: x86_64: x86_64 -+buildarchtranslate: x86_64_v2: x86_64 -+buildarchtranslate: x86_64_v3: x86_64 -+buildarchtranslate: x86_64_v4: x86_64 - buildarchtranslate: amd64: x86_64 - buildarchtranslate: ia32e: x86_64 - -@@ -504,6 +517,9 @@ arch_compat: ia64: i686 noarch - arch_compat: x86_64: amd64 em64t athlon noarch - arch_compat: amd64: x86_64 em64t athlon noarch - arch_compat: ia32e: x86_64 em64t athlon noarch -+arch_compat: x86_64_v2: x86_64 amd64 em64t athlon noarch -+arch_compat: x86_64_v3: x86_64_v2 x86_64 amd64 em64t athlon noarch -+arch_compat: x86_64_v4: x86_64_v3 x86_64_v2 x86_64 amd64 em64t athlon noarch - - arch_compat: sh3: noarch - arch_compat: sh4: noarch -@@ -640,6 +656,9 @@ buildarch_compat: s390x: noarch - - buildarch_compat: ia64: noarch - -+buildarch_compat: x86_64_v4: x86_64_v3 -+buildarch_compat: x86_64_v3: x86_64_v2 -+buildarch_compat: x86_64_v2: x86_64 - buildarch_compat: x86_64: noarch - buildarch_compat: amd64: x86_64 - buildarch_compat: ia32e: x86_64 diff --git a/zstdpool.diff b/zstdpool.diff index 9d1b4d4..6d45042 100644 --- a/zstdpool.diff +++ b/zstdpool.diff @@ -1,14 +1,14 @@ ---- rpmio/rpmio.c.orig 2021-06-21 12:00:44.648612706 +0000 -+++ rpmio/rpmio.c 2022-04-13 13:48:55.224954032 +0000 +--- rpmio/rpmio.c.orig 2023-09-19 10:10:10.000000000 +0000 ++++ rpmio/rpmio.c 2023-10-10 12:09:28.171040124 +0000 @@ -8,6 +8,7 @@ #include #include #include +#include - #if defined(__linux__) - #include - #endif -@@ -1034,6 +1035,7 @@ static const FDIO_t lzdio = &lzdio_s; + #include + + #include +@@ -997,6 +998,7 @@ static const FDIO_t lzdio = &lzdio_s; /* Support for ZSTD library. */ #ifdef HAVE_ZSTD @@ -16,7 +16,7 @@ #include typedef struct rpmzstd_s { -@@ -1048,6 +1050,29 @@ typedef struct rpmzstd_s { +@@ -1011,6 +1013,29 @@ typedef struct rpmzstd_s { ZSTD_outBuffer zob; /*!< ZSTD_outBuffer */ } * rpmzstd; @@ -29,8 +29,8 @@ +static void zstdCreateThreadPool(void) +{ + int numthreads = rpmExpandNumeric("%{?_zstd_pool_threads}%{?!_zstd_pool_threads:-1}"); -+ if (numthreads >= 0) -+ numthreads = get_compression_threads(numthreads > 0 ? numthreads : -1); ++ if (numthreads == 0) ++ numthreads = rpmExpandNumeric("%{getncpus:thread}"); + if (numthreads > 0) { + zstdThreadPoolThreads = numthreads; + zstdThreadPool = ZSTD_createThreadPool(numthreads); @@ -46,9 +46,9 @@ static rpmzstd rpmzstdNew(int fdno, const char *fmode) { int flags = 0; -@@ -1133,8 +1158,18 @@ static rpmzstd rpmzstdNew(int fdno, cons +@@ -1116,8 +1141,18 @@ static rpmzstd rpmzstdNew(int fdno, cons + } - threads = get_compression_threads(threads); if (threads > 0) { - if (ZSTD_isError (ZSTD_CCtx_setParameter(_stream, ZSTD_c_nbWorkers, threads))) + if (ZSTD_isError (ZSTD_CCtx_setParameter(_stream, ZSTD_c_nbWorkers, threads))) {