From 7614db846db53bd75cafd0bf33fb766047db968b Mon Sep 17 00:00:00 2001 From: Marcin Krol Date: Sun, 6 Nov 2022 15:54:06 +0100 Subject: [PATCH] - merged 4.17.1.1 from PLD --- allow-at-in-ver-rel.patch | 8 +- default-patch-flags.patch | 4 +- gem-in-package-builddir.patch | 11 + libtool.attr | 3 + libtooldeps.sh | 51 ++++ missing-macros.patch | 16 +- no-exe-for-elf-debuginfo.patch | 10 - no-exeonly-for-elf-reqprov.patch | 53 ---- perl.prov | 5 +- pkgconfig.patch | 4 +- python-3.10-abi.patch | 60 ---- rpm-debuginfo.patch | 14 - rpm-libtool-deps.patch | 64 ----- rpm-man_pl.patch | 10 +- rpm-perl-macros.patch | 4 +- rpm-pl.po-update.patch | 456 ------------------------------- rpm.spec | 192 +++++++------ sqlite-db-backend.patch | 11 - x32.patch | 39 +-- 19 files changed, 206 insertions(+), 809 deletions(-) create mode 100644 gem-in-package-builddir.patch create mode 100644 libtool.attr create mode 100644 libtooldeps.sh delete mode 100644 no-exe-for-elf-debuginfo.patch delete mode 100644 no-exeonly-for-elf-reqprov.patch delete mode 100644 python-3.10-abi.patch delete mode 100644 rpm-libtool-deps.patch delete mode 100644 rpm-pl.po-update.patch delete mode 100644 sqlite-db-backend.patch diff --git a/allow-at-in-ver-rel.patch b/allow-at-in-ver-rel.patch index 66964a6..06241f8 100644 --- a/allow-at-in-ver-rel.patch +++ b/allow-at-in-ver-rel.patch @@ -3,9 +3,9 @@ @@ -18,7 +18,7 @@ #undef HTDATATYPE - #define WHITELIST_NAME ".-_+%{}" --#define WHITELIST_VERREL "._+%{}~^" -+#define WHITELIST_VERREL "._+%{}~^@" - #define WHITELIST_EVR WHITELIST_VERREL "-:" + #define ALLOWED_CHARS_NAME ".-_+%{}" +-#define ALLOWED_CHARS_VERREL "._+%{}~^" ++#define ALLOWED_CHARS_VERREL "._+%{}~^@" + #define ALLOWED_CHARS_EVR ALLOWED_CHARS_VERREL "-:" #define LEN_AND_STR(_tag) (sizeof(_tag)-1), (_tag) diff --git a/default-patch-flags.patch b/default-patch-flags.patch index df4b8a8..8e872c3 100644 --- a/default-patch-flags.patch +++ b/default-patch-flags.patch @@ -5,8 +5,8 @@ # Default patch flags -#%_default_patch_flags -s --%_default_patch_flags --no-backup-if-mismatch -+%_default_patch_flags -s +-%_default_patch_flags --no-backup-if-mismatch -f ++%_default_patch_flags -s -f #============================================================================== # ---- Build configuration macros. diff --git a/gem-in-package-builddir.patch b/gem-in-package-builddir.patch new file mode 100644 index 0000000..e75f61c --- /dev/null +++ b/gem-in-package-builddir.patch @@ -0,0 +1,11 @@ +--- rpm-4.16.1.3/build/parsePrep.c.orig 2020-12-10 12:30:21.000000000 +0100 ++++ rpm-4.16.1.3/build/parsePrep.c 2022-04-16 10:55:43.759059308 +0200 +@@ -197,7 +197,7 @@ + char gemnameversion[strlen(sp->source) - 3]; + + rstrlcpy(gemnameversion, sp->source, strlen(sp->source) - 3); +- gemspec = rpmGetPath("%{_builddir}/", gemnameversion, ".gemspec", NULL); ++ gemspec = rpmGetPath("%{_builddir}/", spec->buildSubdir, "/", gemnameversion, ".gemspec", NULL); + + rasprintf(&buf, "%s '%s' && %s spec '%s' --ruby > '%s'", + zipper, fn, gem, fn, gemspec); diff --git a/libtool.attr b/libtool.attr new file mode 100644 index 0000000..ed5cb8c --- /dev/null +++ b/libtool.attr @@ -0,0 +1,3 @@ +%__libtool_provides %{_rpmconfigdir}/libtooldeps.sh --provides %{buildroot} %{name} +%__libtool_requires %{_rpmconfigdir}/libtooldeps.sh --requires %{buildroot} %{name} +%__libtool_path ^%{_libdir}/.*\.la$ diff --git a/libtooldeps.sh b/libtooldeps.sh new file mode 100644 index 0000000..d08e3d5 --- /dev/null +++ b/libtooldeps.sh @@ -0,0 +1,51 @@ +#!/bin/sh + +[ $# -ge 2 ] || { + cat > /dev/null + exit 0 +} + +pkgname="$3" + +case $1 in +-P|--provides) + shift + RPM_BUILD_ROOT="$1" + while read possible + do + case "$possible" in + *.la) + if file -L "$possible" | grep -iq 'libtool library file' 2> /dev/null ; then + possible="`echo ${possible} | sed -e s,${RPM_BUILD_ROOT}/,/,`" + echo "libtool($possible)" + fi + ;; + esac + done + ;; +-R|--requires) + case $pkgname in + *-devel) + while read possible ; do + case "$possible" in + *.la) + for dep in `grep '^dependency_libs=' "$possible" 2> /dev/null | \ + sed -e "s,^dependency_libs='\(.*\)',\1,g"` + do + case "$dep" in + /*.la) + dep="`readlink -f "$dep" 2> /dev/null || echo "$dep"`" + echo "libtool($dep)" + ;; + esac + done + ;; + esac + done + ;; + *) + cat > /dev/null + ;; + esac +esac +exit 0 diff --git a/missing-macros.patch b/missing-macros.patch index ba9620d..055f9a0 100644 --- a/missing-macros.patch +++ b/missing-macros.patch @@ -7,7 +7,7 @@ +AC_PATH_PROG(__BASH, bash, /bin/bash, $MYPATH) AC_PATH_PROG(__BZIP2, bzip2, /usr/bin/bzip2, $MYPATH) AC_PATH_PROG(__CAT, cat, /bin/cat, $MYPATH) - AC_PATH_PROG(__CHGRP, chgrp, /bin/chgrp, $MYPATH) + AC_PATH_PROG(__CHMOD, chmod, /bin/chmod, $MYPATH) @@ -91,6 +92,7 @@ AC_PATH_PROG(__UNZIP, unzip, /usr/bin/unzip, $MYPATH) AC_PATH_PROG(__ID, id, /usr/bin/id, $MYPATH) @@ -17,13 +17,13 @@ AC_PATH_PROG(__LZIP, lzip, /usr/bin/lzip, $MYPATH) AC_PATH_PROG(__XZ, xz, /usr/bin/xz, $MYPATH) @@ -104,6 +106,7 @@ - AC_PATH_PROG(__RSH, rsh, /usr/bin/rsh, $MYPATH) + AC_PATH_PROG(__PATCH, patch, /usr/bin/patch, $MYPATH) + AC_PATH_PROG(__RM, rm, /bin/rm, $MYPATH) AC_PATH_PROG(__SED, sed, /bin/sed, $MYPATH) - AC_PATH_PROG(__SEMODULE, semodule, /usr/bin/semodule, $MYPATH) +AC_PATH_PROG(__SH, sh, /bin/sh, $MYPATH) - AC_PATH_PROG(__SSH, ssh, /usr/bin/ssh, $MYPATH) AC_PATH_PROG(__TAR, tar, /bin/tar, $MYPATH) AC_PATH_PROG(__ZSTD, zstd, /usr/bin/zstd, $MYPATH) + --- rpm-4.16.0/macros.in~ 2020-11-21 19:41:19.000000000 +0100 +++ rpm-4.16.0/macros.in 2020-11-22 19:45:24.182620411 +0100 @@ -6,6 +6,7 @@ @@ -41,7 +41,7 @@ +%__bash @__BASH@ %__bzip2 @__BZIP2@ %__cat @__CAT@ - %__chgrp @__CHGRP@ + %__chmod @__CHMOD@ @@ -39,6 +40,7 @@ %__id @__ID@ %__id_u %{__id} -u @@ -51,10 +51,10 @@ %__lrzip @__LRZIP@ %__lzip @__LZIP@ @@ -54,6 +57,7 @@ - %__rsh @__RSH@ + %__patch @__PATCH@ + %__rm @__RM@ %__sed @__SED@ - %__semodule @__SEMODULE@ +%__sh @__SH@ - %__ssh @__SSH@ %__tar @__TAR@ %__unzip @__UNZIP@ + %__zstd @__ZSTD@ diff --git a/no-exe-for-elf-debuginfo.patch b/no-exe-for-elf-debuginfo.patch deleted file mode 100644 index 70d37cd..0000000 --- a/no-exe-for-elf-debuginfo.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- rpm-4.16.1.3/scripts/find-debuginfo.sh.orig 2021-11-05 00:19:27.239390489 +0100 -+++ rpm-4.16.1.3/scripts/find-debuginfo.sh 2021-11-05 00:21:27.102128386 +0100 -@@ -352,7 +352,6 @@ - # Build a list of unstripped ELF files and their hardlinks - touch "$temp/primary" - find "$RPM_BUILD_ROOT" ! -path "${debugdir}/*.debug" -type f \ -- \( -perm -0100 -or -perm -0010 -or -perm -0001 \) \ - -print | LC_ALL=C sort | - file -N -f - | sed -n -e 's/^\(.*\):[ ]*.*ELF.*, not stripped.*/\1/p' | - xargs --no-run-if-empty stat -c '%h %D_%i %n' | diff --git a/no-exeonly-for-elf-reqprov.patch b/no-exeonly-for-elf-reqprov.patch deleted file mode 100644 index 3eb4f00..0000000 --- a/no-exeonly-for-elf-reqprov.patch +++ /dev/null @@ -1,53 +0,0 @@ -* Provides for libraries are not populated if %install does not set - executable bit on ELF file. One such notable example is libgcc_s - installed with mode 644 by `make install`: - -rpm5: - -$ rpm -q --provides libgcc | grep libgcc_s -libgcc_s.so.1 -libgcc_s.so.1(GCC_3.0) -libgcc_s.so.1(GCC_3.3) -libgcc_s.so.1(GCC_3.3.1) -libgcc_s.so.1(GCC_3.4) -libgcc_s.so.1(GCC_3.4.2) -libgcc_s.so.1(GCC_4.0.0) -libgcc_s.so.1(GCC_4.2.0) -libgcc_s.so.1(GCC_4.3.0) -libgcc_s.so.1(GCC_4.4.0) -libgcc_s.so.1(GCC_4.5.0) -libgcc_s.so.1(GCC_4.7.0) -libgcc_s.so.1(GCC_4.8.0) -libgcc_s.so.1(GCC_7.0.0) -libgcc_s.so.1(GLIBC_2.0) -libgcc_s.so.1()(64bit) -libgcc_s.so.1(GCC_3.0)(64bit) -libgcc_s.so.1(GCC_3.3)(64bit) -libgcc_s.so.1(GCC_3.3.1)(64bit) -libgcc_s.so.1(GCC_3.4)(64bit) -libgcc_s.so.1(GCC_3.4.2)(64bit) -libgcc_s.so.1(GCC_3.4.4)(64bit) -libgcc_s.so.1(GCC_4.0.0)(64bit) -libgcc_s.so.1(GCC_4.2.0)(64bit) -libgcc_s.so.1(GCC_4.3.0)(64bit) -libgcc_s.so.1(GCC_4.7.0)(64bit) -libgcc_s.so.1(GCC_4.8.0)(64bit) -libgcc_s.so.1(GCC_7.0.0)(64bit) - -rpm4: - -$ rpm -q --provides -p libgcc-10.2.0-1.x86_64.rpm | grep libgcc_s -(empty) - -Aa a workaround we could remove "exeonly" from %__elf_flags in -/usr/lib/rpm/fileattrs/elf.attr but ideally RPM should not look at -actual file mode on disk but rather on mode configured in %files. - ---- rpm-4.16.0/fileattrs/elf.attr~ 2020-05-28 12:04:25.000000000 +0200 -+++ rpm-4.16.0/fileattrs/elf.attr 2020-11-21 19:35:52.405659895 +0100 -@@ -1,4 +1,4 @@ - %__elf_provides %{_rpmconfigdir}/elfdeps --provides %{?__filter_GLIBC_PRIVATE:--filter-private} - %__elf_requires %{_rpmconfigdir}/elfdeps --requires %{?__filter_GLIBC_PRIVATE:--filter-private} - %__elf_magic ^(setuid,? )?(setgid,? )?(sticky )?ELF (32|64)-bit.*$ --%__elf_flags exeonly -+#__elf_flags exeonly diff --git a/perl.prov b/perl.prov index 6a66f76..6e98f9a 100644 --- a/perl.prov +++ b/perl.prov @@ -92,13 +92,14 @@ sub process_file { # search for the package name if ( - !defined $package - && ( my ($pack) = m/^\s*(?:\{\s*)?package\s+([_:a-zA-Z0-9]+?):*\s*;/ ) + (!defined $package || !defined $version) + && ( my ($pack, $ver) = m/^\s*(?:\{\s*)?package\s+([_:a-zA-Z0-9]+?)\s*(?:v?([0-9_.]+)\s*)?[;{]/) && $1 ne 'main' && match_the_path( $file, $1 ) ) { $package = $pack; + $version = $ver; } if ( !defined $version && /([\$*])(([\w\:\']*)\bVERSION)\b.*\=/ ) { diff --git a/pkgconfig.patch b/pkgconfig.patch index d4f39e6..25be042 100644 --- a/pkgconfig.patch +++ b/pkgconfig.patch @@ -1,11 +1,11 @@ --- rpm-4.16.0/rpm.pc.in.orig 2020-05-28 12:04:25.000000000 +0200 +++ rpm-4.16.0/rpm.pc.in 2020-10-18 23:32:46.339081527 +0200 @@ -11,6 +11,6 @@ - URL: http://rpm.org + Requires: popt Requires.private: @ZSTD_REQUIRES@ # Conflicts: -Cflags: -I${includedir} -Libs: -L${libdir} -lrpm -lrpmio +Cflags: -I${includedir}/rpm +Libs: -L${libdir} -lrpm -lrpmio -lrpmbuild - Libs.private: -lpopt -lrt -lpthread @WITH_LZMA_LIB@ @WITH_DB_LIB@ @WITH_BZ2_LIB@ @WITH_ZLIB_LIB@ @WITH_BEECRYPT_LIB@ @WITH_NSS_LIB@ @LUA_LIBS@ + Libs.private: -lpopt -lrt -lpthread @WITH_LZMA_LIB@ @WITH_BZ2_LIB@ @WITH_ZLIB_LIB@ @LUA_LIBS@ diff --git a/python-3.10-abi.patch b/python-3.10-abi.patch deleted file mode 100644 index 4842b5d..0000000 --- a/python-3.10-abi.patch +++ /dev/null @@ -1,60 +0,0 @@ -From d12e039037bf9a7d22d51bf1cc5925525a945ddf Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= -Date: Mon, 19 Apr 2021 20:33:33 +0200 -Subject: [PATCH] Fix python(abi) generator (the one written in Python) - -There were three problems: - - - sys.version was not imported - - sys.version[:3] is not reliable on Python 3.10+ - - distutils is deprecated on Python 3.10+ - -We were not hit by the missing import in Fedora because we only run the script -on .dist-info/.egg-info/.egg and not on .py files, so this if-branch never runs. - -But when the script was fed with a .py path, it errored: - - Traceback (most recent call last): - File "/usr/lib/rpm/pythondistdeps.py", line 344, in - purelib = get_python_lib(standard_lib=0, plat_specific=0).split(version[:3])[0] - NameError: name 'version' is not defined - -The sys.version[:3] thing kinda works for Python 3.10+ because *in this -particular case* splitting on '3.1' and taking the prefix yields the same -results as splitting on '3.10', but I consider that mere coincidence. - -Finally, since the distutils import happened at module-level, -we got the Deprecation warning in all Fedora's Python packages: - - /usr/lib/rpm/pythondistdeps.py:16: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12 ---- - scripts/pythondistdeps.py | 9 +++++---- - 1 file changed, 5 insertions(+), 4 deletions(-) - -diff --git a/scripts/pythondistdeps.py b/scripts/pythondistdeps.py -index 4e178c0..1f81c19 100755 ---- a/scripts/pythondistdeps.py -+++ b/scripts/pythondistdeps.py -@@ -13,8 +13,8 @@ - from __future__ import print_function - import argparse - from os.path import basename, dirname, isdir, sep --from sys import argv, stdin, version --from distutils.sysconfig import get_python_lib -+from sys import argv, stdin, version, version_info -+from sysconfig import get_path - from warnings import warn - - -@@ -287,8 +287,9 @@ def get_marker_env(dist, extra): - if py_abi and (lower.endswith('.py') or lower.endswith('.pyc') or lower.endswith('.pyo')): - if name not in py_deps: - py_deps[name] = [] -- purelib = get_python_lib(standard_lib=0, plat_specific=0).split(version[:3])[0] -- platlib = get_python_lib(standard_lib=0, plat_specific=1).split(version[:3])[0] -+ running_python_version = '{}.{}'.format(*version_info[:2]) -+ purelib = get_path('purelib').split(running_python_version)[0] -+ platlib = get_path('platlib').split(running_python_version)[0] - for lib in (purelib, platlib): - if lib in f: - spec = ('==', f.split(lib)[1].split(sep)[0]) diff --git a/rpm-debuginfo.patch b/rpm-debuginfo.patch index b67dc56..5ac5738 100644 --- a/rpm-debuginfo.patch +++ b/rpm-debuginfo.patch @@ -1,17 +1,3 @@ ---- rpm-5.3.1/scripts/find-debuginfo.sh.wiget 2009-09-10 03:52:13.000000000 +0200 -+++ rpm-5.3.1/scripts/find-debuginfo.sh 2010-05-30 16:53:33.275994510 +0200 -@@ -254,7 +254,10 @@ strip_to_debug() - $strip_glibs && case "$(file -bi "$2")" in - application/x-sharedlib*) g=-g ;; - esac -- eu-strip --remove-comment $r $g ${keep_remove_args} -f "$1" "$2" || exit -+ local t=$(mktemp "/tmp/rpm.stripped.XXXXXX") -+ objcopy --compress-debug-sections "$2" || exit -+ eu-strip --remove-comment $r -f "$1" "$2" -o "$t" || exit -+ rm -f "$t" - chmod 444 "$1" || exit - } - --- rpm-4.16.1.3/macros.in.orig 2021-03-24 09:50:21.000000000 +0100 +++ rpm-4.16.1.3/macros.in 2021-03-24 10:05:10.129698408 +0100 @@ -194,6 +194,7 @@ diff --git a/rpm-libtool-deps.patch b/rpm-libtool-deps.patch deleted file mode 100644 index 443d1fd..0000000 --- a/rpm-libtool-deps.patch +++ /dev/null @@ -1,64 +0,0 @@ ---- rpm-4.4.8.org/scripts/libtooldeps.sh 2005-11-12 22:20:42.000000000 +0100 -+++ rpm-4.4.8/scripts/libtooldeps.sh 2006-11-26 20:06:49.254008750 +0100 -@@ -5,15 +5,17 @@ - exit 0 - } - -+pkgname="$3" -+ - case $1 in - -P|--provides) - shift -- RPM_BUILD_ROOT="$1" -+ RPM_BUILD_ROOT="$1" - while read possible - do - case "$possible" in - *.la) -- if grep -Eiq '^# Generated by (libtool|ltmain.sh)' "$possible" 2> /dev/null ; then -+ if file -L "$possible" | grep -iq 'libtool library file' 2> /dev/null ; then - possible="`echo ${possible} | sed -e s,${RPM_BUILD_ROOT}/,/,`" - echo "libtool($possible)" - fi -@@ -22,21 +24,28 @@ - done - ;; - -R|--requires) -- while read possible ; do -- case "$possible" in -- *.la) -- for dep in `grep '^dependency_libs='"$possible" 2> /dev/null | \ -- sed -e "s,^dependency_libs='\(.*\)',\1,g"` -- do -- case "$dep" in -- /*.la) -- echo "libtool($dep)" -+ case $pkgname in -+ *-devel) -+ while read possible ; do -+ case "$possible" in -+ *.la) -+ for dep in `grep '^dependency_libs=' "$possible" 2> /dev/null | \ -+ sed -e "s,^dependency_libs='\(.*\)',\1,g"` -+ do -+ case "$dep" in -+ /*.la) -+ dep="`readlink -f "$dep" 2> /dev/null || echo "$dep"`" -+ echo "libtool($dep)" -+ ;; -+ esac -+ done - ;; - esac - done -- ;; -- esac -- done -- ;; -+ ;; -+ *) -+ cat > /dev/null -+ ;; -+ esac - esac - exit 0 diff --git a/rpm-man_pl.patch b/rpm-man_pl.patch index c9e03ea..8ed712f 100644 --- a/rpm-man_pl.patch +++ b/rpm-man_pl.patch @@ -1,10 +1,10 @@ ---- rpm-4.16.0/doc/pl/rpm.8.orig 2020-05-28 12:04:25.022136604 +0200 -+++ rpm-4.16.0/doc/pl/rpm.8 2020-10-13 08:06:11.442087617 +0200 +--- rpm-4.16.0/docs/man/pl/rpm.8.orig 2020-05-28 12:04:25.022136604 +0200 ++++ rpm-4.16.0/docs/man/pl/rpm.8 2020-10-13 08:06:11.442087617 +0200 @@ -318,6 +318,7 @@ - Instaluje pakiety nawet jeśli niektóre z nich są już zainstalowane na tym - systemie. + Instaluje pakiety nawet je\[u015B]li niekt\['o]re z nich s\[u0105] + ju\[u017C] zainstalowane na tym systemie. .TP +\fB--test\fR Nie instaluje pakietu, po prostu sprawdza i raportuje potencjalne konflikty. - .SS "OPCJE USUWANIA" + .SS OPCJE USUWANIA diff --git a/rpm-perl-macros.patch b/rpm-perl-macros.patch index 1d09638..bd04c59 100644 --- a/rpm-perl-macros.patch +++ b/rpm-perl-macros.patch @@ -7,8 +7,8 @@ - po/Makefile.in scripts/Makefile fileattrs/Makefile + po/Makefile.in scripts/Makefile scripts/perl.req scripts/perl.prov fileattrs/Makefile misc/Makefile - doc/Makefile - python/Makefile + docs/Makefile + docs/man/Makefile --- rpm-5.3.1/scripts/perl.req.wiget 2008-10-26 10:50:53.000000000 +0100 +++ rpm-5.3.1/scripts/perl.req 2010-05-30 16:35:36.999438206 +0200 @@ -45,7 +45,11 @@ diff --git a/rpm-pl.po-update.patch b/rpm-pl.po-update.patch deleted file mode 100644 index a806287..0000000 --- a/rpm-pl.po-update.patch +++ /dev/null @@ -1,456 +0,0 @@ ---- rpm-4.16.1.3/po/pl.po.orig 2021-07-10 10:24:51.698850580 +0200 -+++ rpm-4.16.1.3/po/pl.po 2021-07-12 16:17:10.198195581 +0200 -@@ -376,9 +376,8 @@ msgid "verify database files" - msgstr "sprawdzenie plików bazy danych" - - #: rpmdb.c:29 --#, fuzzy - msgid "salvage database" --msgstr "zainicjowanie bazy danych" -+msgstr "odzyskanie bazy danych" - - #: rpmdb.c:31 - msgid "export database to stdout header list" -@@ -589,9 +588,8 @@ msgid "delete package signatures" - msgstr "usunięcie podpisów pakietów" - - #: rpmsign.c:37 --#, fuzzy - msgid "create rpm v3 header+payload signatures" --msgstr "bez sprawdzania podpisu nagłówka+danych" -+msgstr "utworzenie podpisów nagłówka+danych rpm v3" - - #: rpmsign.c:41 - msgid "sign package(s) files" -@@ -808,9 +806,9 @@ msgid "Symlink points to BuildRoot: %s - - msgstr "Dowiązanie symboliczne wskazuje na BuildRoot: %s → %s\n" - - #: build/files.c:1335 --#, fuzzy, c-format -+#, c-format - msgid "Illegal character (0x%x) in filename: %s\n" --msgstr "Niedozwolony znak „%c” (0x%x)" -+msgstr "Niedozwolony znak (0x%x) w nazwie pliku: %s\n" - - #: build/files.c:1372 - #, c-format -@@ -833,9 +831,9 @@ msgid "Not a directory: %s\n" - msgstr "Nie jest katalogiem: %s\n" - - #: build/files.c:1592 --#, fuzzy, c-format -+#, c-format - msgid "Can't read content of file: %s\n" --msgstr "Odczytanie pliku polityki się nie powiodło: %s\n" -+msgstr "Nie można odczytać zawartości pliku: %s\n" - - #: build/files.c:1633 - #, c-format -@@ -933,14 +931,14 @@ msgstr "" - "regularnego.\n" - - #: build/files.c:2237 --#, fuzzy, c-format -+#, c-format - msgid "Could not open %s file %s: %m\n" --msgstr "Nie można otworzyć pliku %s w %%files: %m\n" -+msgstr "Nie można otworzyć pliku %s %s: %m\n" - - #: build/files.c:2262 --#, fuzzy, c-format -+#, c-format - msgid "Empty %s file %s\n" --msgstr "Pusty plik %s w %%files\n" -+msgstr "Pusty plik %s %s\n" - - #: build/files.c:2307 - #, c-format -@@ -991,9 +989,9 @@ msgstr "" - "%s" - - #: build/files.c:2878 --#, fuzzy, c-format -+#, c-format - msgid "package %s already exists\n" --msgstr "%d. wiersz: %s: pakiet %s już istnieje\n" -+msgstr "pakiet %s już istnieje\n" - - #: build/files.c:2942 - #, c-format -@@ -1658,7 +1656,7 @@ msgstr "Ignorowanie nieprawidłowego wyr - #: build/rpmfc.c:219 - #, c-format - msgid "%s: mime and magic supplied, only mime will be used\n" --msgstr "" -+msgstr "%s: przekazano mime i magic, użyte będzie tylko mime\n" - - #: build/rpmfc.c:290 - #, c-format -@@ -1816,55 +1814,51 @@ msgid "error(%d) allocating new package - msgstr "błąd(%d) podczas przydzielania nowej instancji pakietu\n" - - #: lib/backend/dbi.c:82 --#, fuzzy, c-format -+#, c-format - msgid "invalid %%_db_backend: %s\n" --msgstr "Nieprawidłowy token %s: %s\n" -+msgstr "nieprawidłowy %%_db_backend: %s\n" - - #: lib/backend/dbi.c:100 - #, c-format - msgid "Converting database from %s to %s backend\n" --msgstr "" -+msgstr "Konwersja bazy danych z backendu %s do %s\n" - - #: lib/backend/dbi.c:104 --#, fuzzy, c-format -+#, c-format - msgid "Found %s %s database while attempting %s backend: using %s backend.\n" --msgstr "" --"Odnaleziono bazę danych Packages BDB podczas próby użycia mechanizmu %s: " --"używanie mechanizmu bdb.\n" -+msgstr "Odnaleziono bazę danych %s %s podcza próby użycia backendu %s: używanie backendu %s.\n" - - #: lib/backend/ndb/glue.c:102 --#, fuzzy - msgid "Detected outdated index databases\n" --msgstr "nie można usunąć poprzedniej bazy danych w %s\n" -+msgstr "Wykryto nieaktualne bazy danych indeksów\n" - - #: lib/backend/ndb/glue.c:104 --#, fuzzy - msgid "Rebuilding outdated index databases\n" --msgstr "nie można usunąć poprzedniej bazy danych w %s\n" -+msgstr "Przebudowywanie nieaktualnych baz danych indeksów\n" - - #: lib/backend/ndb/rpmidx.c:204 - #, c-format - msgid "rpmidx: Version mismatch. Expected version: %u. Found version: %u\n" --msgstr "" -+msgstr "rpmidx: niezgodność wersji. Oczekiwano wersji: %u. Znaleziono wersję: %u\n" - - #: lib/backend/ndb/rpmpkg.c:126 - #, c-format - msgid "rpmpkg: Version mismatch. Expected version: %u. Found version: %u\n" --msgstr "" -+msgstr "rpmpkg: niezgodność wersji. Oczekiwano wersji: %u. Znaleziono wersję: %u\n" - - #: lib/backend/ndb/rpmpkg.c:500 - msgid "rpmpkg: detected non-zero blob, trying auto repair\n" --msgstr "" -+msgstr "rpmpkg: oczekiwano danych niezerowych, próba automatycznej naprawy\n" - - #: lib/backend/ndb/rpmxdb.c:241 - #, c-format - msgid "rpmxdb: Version mismatch. Expected version: %u. Found version: %u\n" --msgstr "" -+msgstr "rpmxdb: niezgodność wersji. Oczekiwano wersji: %u. Znaleziono wersję: %u\n" - - #: lib/backend/sqlite.c:157 --#, fuzzy, c-format -+#, c-format - msgid "Unable to open sqlite database %s: %s\n" --msgstr "Nie można otworzyć pliku spec %s: %s\n" -+msgstr "Nie można otworzyć bazy danych sqlite %s: %s\n" - - #: lib/depends.c:87 - #, c-format -@@ -2010,14 +2004,14 @@ msgid "region %d: tag number mismatch il - msgstr "region %d: numer znacznika się nie zgadza il %d ril %d dl %d rdl %d\n" - - #: lib/header.c:1919 --#, fuzzy, c-format -+#, c-format - msgid "hdr tags: BAD, no. of tags(%) out of range" --msgstr "znaczniki hdr: BŁĘDNE, liczba znaczników(%d) jest poza zakresem" -+msgstr "znaczniki hdr: BŁĘDNE, liczba znaczników(%) jest poza zakresem" - - #: lib/header.c:1923 --#, fuzzy, c-format -+#, c-format - msgid "hdr data: BAD, no. of bytes(%) out of range" --msgstr "dane hdr: BŁĘDNE, liczba bajtów(%d) jest poza zakresem" -+msgstr "dane hdr: BŁĘDNE, liczba bajtów(%) jest poza zakresem" - - #: lib/header.c:1945 - #, c-format -@@ -2043,9 +2037,8 @@ msgid "signature " - msgstr "podpis " - - #: lib/header.c:2001 --#, fuzzy - msgid "hdr length: BAD" --msgstr "load hdr: BŁĘDNE" -+msgstr "długość hdr: BŁĘDNA" - - #: lib/header.c:2019 - #, c-format -@@ -2093,7 +2086,7 @@ msgstr "nieoczekiwane }" - - #: lib/headerfmt.c:473 - msgid "escaped char expected after \\" --msgstr "" -+msgstr "oczekiwano chronionego znaku po \\" - - #: lib/headerfmt.c:515 - msgid "? expected in expression" -@@ -2124,9 +2117,9 @@ msgid "array iterator used with differen - msgstr "iterator tablicy użyty na tablicach o różnych rozmiarach" - - #: lib/package.c:306 --#, fuzzy, c-format -+#, c-format - msgid "RPM v3 packages are deprecated: %s\n" --msgstr "%d. wiersz: %s jest przestarzałe: %s\n" -+msgstr "Pakiety RPM v3 są przestarzałe: %s\n" - - #: lib/poptALL.c:142 rpmio/macro.c:1282 - #, c-format -@@ -2322,9 +2315,8 @@ msgid "+" - msgstr "+" - - #: lib/poptI.c:138 --#, fuzzy - msgid "do not install artifacts" --msgstr "bez instalacji dokumentacji" -+msgstr "bez instalacji artefaktów" - - #: lib/poptI.c:141 lib/poptI.c:181 - msgid "do not install configuration files" -@@ -3393,9 +3385,9 @@ msgid "package %s is already installed" - msgstr "pakiet %s jest już zainstalowany" - - #: lib/rpmprob.c:125 --#, fuzzy, c-format -+#, c-format - msgid "package %s is not installed" --msgstr "pakiet %s nie jest zainstalowany\n" -+msgstr "pakiet %s nie jest zainstalowany" - - #: lib/rpmprob.c:128 - #, c-format -@@ -3418,15 +3410,15 @@ msgid "package %s (which is newer than % - msgstr "pakiet %s (nowszy niż %s) jest już zainstalowany" - - #: lib/rpmprob.c:148 --#, fuzzy, c-format -+#, c-format - msgid "" - "installing package %s needs %%cB more space on the %s filesystem" --msgstr "instalowanie pakietu %s wymaga %%c B w systemie plików %s" -+msgstr "instalowanie pakietu %s wymaga %%cB więcej miejsca w systemie plików %s" - - #: lib/rpmprob.c:158 --#, fuzzy, c-format -+#, c-format - msgid "installing package %s needs % more inodes on the %s filesystem" --msgstr "instalowanie pakietu %s wymaga % i-węzłów w systemie plików %s" -+msgstr "instalowanie pakietu %s wymaga % więcej i-węzłów w systemie plików %s" - - #: lib/rpmprob.c:162 - #, c-format -@@ -3670,9 +3662,9 @@ msgid "%s: tag %u: invalid hex" - msgstr "%s znacznik %u: nieprawidłowa liczba szesnastkowa" - - #: lib/rpmvs.c:264 lib/rpmvs.c:277 --#, fuzzy, c-format -+#, c-format - msgid "%s%s%s %s" --msgstr "%s%s %s" -+msgstr "%s%s%s %s" - - #: lib/rpmvs.c:268 - msgid "digest" -@@ -3762,102 +3754,87 @@ msgstr "" - "Zarejestrowanie programu obsługującego rozdzielanie się nie powiodło: %m\n" - - #: rpmio/expression.c:347 --#, fuzzy - msgid "syntax error while parsing ==" --msgstr "błąd składni podczas przetwarzania ==\n" -+msgstr "błąd składni podczas przetwarzania ==" - - #: rpmio/expression.c:377 --#, fuzzy - msgid "syntax error while parsing &&" --msgstr "błąd składni podczas przetwarzania &&\n" -+msgstr "błąd składni podczas przetwarzania &&" - - #: rpmio/expression.c:386 --#, fuzzy - msgid "syntax error while parsing ||" --msgstr "błąd składni podczas przetwarzania ||\n" -+msgstr "błąd składni podczas przetwarzania ||" - - #: rpmio/expression.c:414 - msgid "macro expansion returned a bare word, please use \"...\"" --msgstr "" -+msgstr "rozwinięcie makra zwróciło gołe słowo, proszę używać \"...\"" - - #: rpmio/expression.c:416 - msgid "macro expansion did not return an integer" --msgstr "" -+msgstr "rozwinięcie makra nie zwróciło liczby" - - #: rpmio/expression.c:417 --#, fuzzy, c-format -+#, c-format - msgid "expanded string: %s\n" --msgstr "%d. wiersz: %s w: %s\n" -+msgstr "rozwinięty ciąg: %s\n" - - #: rpmio/expression.c:446 --#, fuzzy - msgid "unterminated string in expression" --msgstr "oczekiwano { po ? w wyrażeniu" -+msgstr "niezakończony ciąg w rozwinięciu" - - #: rpmio/expression.c:460 --#, fuzzy - msgid "invalid version" --msgstr "(nieprawidłowy typ)" -+msgstr "nieprawidłowa wersja" - - #: rpmio/expression.c:465 - msgid "bare words are no longer supported, please use \"...\"" --msgstr "" -+msgstr "gołe słowa nie są już obsługiwane, proszę używać \"...\"" - - #: rpmio/expression.c:469 --#, fuzzy - msgid "parse error in expression" --msgstr "błąd przetwarzania w wyrażeniu\n" -+msgstr "błąd przetwarzania w wyrażeniu" - - #: rpmio/expression.c:507 --#, fuzzy - msgid "unmatched (" --msgstr "niesparowane (\n" -+msgstr "niesparowane (" - - #: rpmio/expression.c:530 --#, fuzzy - msgid "- only on numbers" --msgstr "- tylko na liczbach\n" -+msgstr "- tylko na liczbach" - - #: rpmio/expression.c:549 --#, fuzzy - msgid "unexpected end of expression" --msgstr "oczekiwano | na końcu wyrażenia" -+msgstr "nieoczekiwany koniec wyrażenia" - - #: rpmio/expression.c:553 rpmio/expression.c:843 rpmio/expression.c:897 - #: rpmio/expression.c:934 --#, fuzzy - msgid "syntax error in expression" --msgstr "błąd składni w wyrażeniu\n" -+msgstr "błąd składni w wyrażeniu" - - #: rpmio/expression.c:594 rpmio/expression.c:656 rpmio/expression.c:722 - #: rpmio/expression.c:799 rpmio/expression.c:858 --#, fuzzy - msgid "types must match" --msgstr "typy muszą się zgadzać\n" -+msgstr "typy muszą się zgadzać" - - #: rpmio/expression.c:604 - msgid "division by zero" --msgstr "" -+msgstr "dzielenie przez zero" - - #: rpmio/expression.c:612 --#, fuzzy - msgid "* and / not supported for versions" --msgstr "* / nie są obsługiwane dla ciągów\n" -+msgstr "* i / nie są obsługiwane dla wersji" - - #: rpmio/expression.c:615 --#, fuzzy - msgid "* and / not supported for strings" --msgstr "* / nie są obsługiwane dla ciągów\n" -+msgstr "* i / nie są obsługiwane dla ciągów" - - #: rpmio/expression.c:668 --#, fuzzy - msgid "+ and - not supported for versions" --msgstr "* / nie są obsługiwane dla ciągów\n" -+msgstr "+ i - nie są obsługiwane dla wersji" - - #: rpmio/expression.c:674 --#, fuzzy - msgid "- not supported for strings" --msgstr "- nie jest obsługiwane dla ciągów\n" -+msgstr "- nie jest obsługiwane dla ciągów" - - #: rpmio/macro.c:348 - #, c-format -@@ -3870,9 +3847,9 @@ msgid "%3d<%*s(empty)\n" - msgstr "%3d<%*s(puste)\n" - - #: rpmio/macro.c:496 --#, fuzzy, c-format -+#, c-format - msgid "Failed to open shell expansion pipe for command: %s: %m \n" --msgstr "Otwarcie potoku tar się nie powiodło: %m\n" -+msgstr "Nie udało się otworzyć potoku rozwinięcia przez powłokę dla polecenia: %s: %m\n" - - #: rpmio/macro.c:634 - #, c-format -@@ -3922,7 +3899,7 @@ msgstr "Nieznana opcja %c w %s(%s)\n" - #: rpmio/macro.c:1027 - #, c-format - msgid "no such macro: '%s'\n" --msgstr "" -+msgstr "brak makra: „%s”\n" - - #: rpmio/macro.c:1390 - msgid "" -@@ -3943,14 +3920,12 @@ msgid "A %% is followed by an unparseabl - msgstr "Makro niemożliwe do przetworzenia po %%\n" - - #: rpmio/macro.c:1487 --#, fuzzy - msgid "argument expected" --msgstr "nieoczekiwane ]" -+msgstr "oczekiwano argumentu" - - #: rpmio/macro.c:1487 --#, fuzzy - msgid "unexpected argument" --msgstr "nieoczekiwane ]" -+msgstr "nieoczekiwany argument" - - #: rpmio/macro.c:1796 - #, c-format -@@ -4075,14 +4050,14 @@ msgid "Unsupported PGP pubkey algorithm - msgstr "Nieobsługiwany algorytm klucza publicznego PGP %u\n" - - #: sign/rpmgensig.c:191 --#, fuzzy, c-format -+#, c-format - msgid "Could not create pipe for signing: %m\n" --msgstr "Nie można utworzyć potoku dla %s: %m\n" -+msgstr "Nie udało się utworzyć potoku do podpisywania: %m\n" - - #: sign/rpmgensig.c:205 --#, fuzzy, c-format -+#, c-format - msgid "Could not set GPG_TTY to stdin: %m\n" --msgstr "Nie można otworzyć pliku %s w %%files: %m\n" -+msgstr "Nie udało się ustawić GPG_TTY na stdin: %m\n" - - #: sign/rpmgensig.c:220 - #, c-format -@@ -4090,9 +4065,9 @@ msgid "Could not exec %s: %s\n" - msgstr "Nie można wykonać %s: %s\n" - - #: sign/rpmgensig.c:231 --#, fuzzy, c-format -+#, c-format - msgid "Could not open pipe for writing: %m\n" --msgstr "Nie można utworzyć potoku dla %s: %m\n" -+msgstr "Nie udało się utworzyć potoku do zapisu: %m\n" - - #: sign/rpmgensig.c:246 - msgid "Could not write to pipe\n" diff --git a/rpm.spec b/rpm.spec index 401377c..5ef7409 100644 --- a/rpm.spec +++ b/rpm.spec @@ -11,10 +11,10 @@ %bcond_without audit # audit plugin %bcond_without selinux # SELinux plugin %bcond_with systemd # systemd inhibit plugin +%bcond_without fsverity # fsverity plugin -%define db_ver 5.3.28.0 %define popt_ver 1.15 -%define sover 9.1.3 +%define sover 9.3.0 %if "%{_rpmversion}" >= "4.12" && "%{_rpmversion}" < "5" %define with_recommends_tags 1 @@ -33,13 +33,13 @@ Summary(pt_BR.UTF-8): Gerenciador de pacotes RPM Summary(ru.UTF-8): Менеджер пакетов от RPM Summary(uk.UTF-8): Менеджер пакетів від RPM Name: rpm -Version: 4.16.1.3 -Release: 17 +Version: 4.17.1.1 +Release: 3 Epoch: 1 License: GPL v2 / LGPL v2.1 Group: Base -Source0: http://ftp.rpm.org/releases/rpm-4.16.x/%{name}-%{version}.tar.bz2 -# Source0-md5: 576277fafa5d0681a8a92c8716aca5f0 +Source0: http://ftp.rpm.org/releases/rpm-4.17.x/%{name}-%{version}.tar.bz2 +# Source0-md5: 30e5806bdcb06a17cabf23d8f07b6b0f Source1: https://ftp.tld-linux.org/TLD/TLD-Linux.asc # Source1-md5: 5b5caff8c570489ad5bf950734546c24 Source2: macros.local @@ -56,6 +56,8 @@ Source12: %{name}.noautoprovfiles Source13: %{name}.noautoreq Source14: %{name}.noautoreqfiles Source15: perl.prov +Source16: libtooldeps.sh +Source17: libtool.attr Patch0: %{name}-man_pl.patch Patch1: %{name}-popt-aliases.patch Patch2: %{name}-perl-macros.patch @@ -64,7 +66,6 @@ Patch4: %{name}-scripts-closefds.patch Patch5: %{name}-dir-macros-relative.patch Patch6: %{name}-perl_req-INC_dirs.patch Patch7: %{name}-debuginfo.patch -Patch8: %{name}-libtool-deps.patch Patch9: %{name}-builddir-readlink.patch Patch10: %{name}-changelog_order_check_nonfatal.patch Patch11: %{name}-postun-nofail.patch @@ -83,41 +84,36 @@ Patch23: shortcircuited-deps.patch Patch24: cpuinfo-deps.patch Patch25: rpmio-read-proc-files.patch Patch26: allow-at-in-ver-rel.patch -Patch27: no-exeonly-for-elf-reqprov.patch Patch28: default-patch-flags.patch Patch29: %{name}-noarch_py_prov.patch Patch30: missing-ghost-terminate-build.patch Patch31: missing-doc-terminate-build.patch Patch32: noexpand.patch -Patch33: sqlite-db-backend.patch Patch34: skip-symlinks.patch Patch35: pl-po.patch Patch36: build-locale.patch -Patch37: %{name}-pl.po-update.patch -Patch38: no-exe-for-elf-debuginfo.patch -Patch39: no-exe-for-elf-req.patch -Patch40: python-3.10-abi.patch +Patch37: no-exe-for-elf-req.patch +Patch38: gem-in-package-builddir.patch URL: https://rpm.org/ BuildRequires: acl-devel %{?with_audit:BuildRequires: audit-libs-devel} BuildRequires: autoconf >= 2.63 BuildRequires: automake >= 1:1.10 BuildRequires: bzip2-devel >= 1.0.2-17 -BuildRequires: db-devel >= %{db_ver} -%{?with_systemd:BuildRequires: dbus-devel >= 1.3} -BuildRequires: elfutils-devel >= 0.108 +%{?with_plugins:BuildRequires: dbus-devel >= 1.3} +BuildRequires: elfutils-devel >= 0.159 BuildRequires: gettext-tools >= 0.19.2 %{?with_imaevm:BuildRequires: ima-evm-utils-devel >= 1.0} BuildRequires: libarchive-devel BuildRequires: libcap-devel -BuildRequires: libmagic-devel BuildRequires: libgcrypt-devel BuildRequires: libgomp-devel >= 6:4.5 +BuildRequires: libmagic-devel %{?with_selinux:BuildRequires: libselinux-devel >= 2.1.0} # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros BuildRequires: libstdc++-devel BuildRequires: libtool >= 1:1.4.2-9 -BuildRequires: lua-devel >= 5.2 +BuildRequires: lua-devel >= 5.3 BuildRequires: patch >= 2.2 BuildRequires: pkgconfig BuildRequires: popt-devel >= %{popt_ver} @@ -131,8 +127,8 @@ BuildRequires: rpm-build >= 4.6 BuildRequires: sqlite3-devel >= 3.22.0 BuildRequires: tcl BuildRequires: xz-devel -BuildRequires: zlib-devel -BuildRequires: zstd-devel +BuildRequires: zlib-devel >= 1.0.5 +BuildRequires: zstd-devel >= 1.3.8 %if %{with apidocs} BuildRequires: doxygen BuildRequires: ghostscript @@ -142,10 +138,10 @@ BuildRequires: tetex-pdftex Requires(posttrans): coreutils Requires: %{name}-base = %{epoch}:%{version}-%{release} Requires: %{name}-lib = %{epoch}:%{version}-%{release} -Requires: rpm-tld-macros >= 2.002 Requires: FHS >= 3.0-2 Requires: libgcrypt Requires: popt >= %{popt_ver} +Requires: rpm-tld-macros >= 2.002 %if %{with recommends_tags} Recommends: rpm-plugin-audit Recommends: rpm-plugin-prioreset @@ -246,10 +242,13 @@ Zawiera on: Summary: RPMs library Summary(pl.UTF-8): Biblioteki RPM-a Group: Libraries -Requires: db >= %{db_ver} +Requires: elfutils >= 0.159 +Requires: elfutils-libelf >= 0.159 Requires: libmagic >= 1.15-2 Requires: popt >= %{popt_ver} Requires: sqlite3-libs >= 3.22.0 +Requires: zlib >= 1.0.5 +Requires: zstd >= 1.3.8 Obsoletes: rpm-libs < 4.0.2-4 # avoid SEGV caused by mixed db versions Conflicts: poldek < 0.18.1-16 @@ -270,18 +269,24 @@ Summary(ru.UTF-8): Хедеры и библиотеки для программ, Summary(uk.UTF-8): Хедери та бібліотеки для програм, що працюють з пакетами rpm Group: Development/Libraries Requires: %{name}-lib = %{epoch}:%{version}-%{release} +Requires: acl-devel +%{?with_audit:Requires: audit-libs-devel} Requires: bzip2-devel -Requires: db-devel >= %{db_ver} -Requires: elfutils-devel -Requires: libmagic-devel +Requires: elfutils-devel >= 0.159 +Requires: libcap-devel Requires: libgcrypt-devel +Requires: libmagic-devel %if %{with selinux} Requires: libselinux-devel Requires: libsemanage-devel Requires: libsepol-devel %endif +Requires: lua-devel >= 5.3 Requires: popt-devel >= %{popt_ver} -Requires: zlib-devel +Requires: sqlite3-devel >= 3.22.0 +Requires: xz-devel +Requires: zlib-devel >= 1.0.5 +Requires: zstd-devel >= 1.3.8 Obsoletes: rpm-static < 1:4.15 %description devel @@ -362,17 +367,18 @@ Group: Applications/File Requires(pretrans): coreutils Requires(pretrans): findutils Requires: %{name}-utils = %{epoch}:%{version}-%{release} -Requires: rpm-tld-macros-build >= 1.744 Requires: /bin/id Requires: awk Requires: bzip2 Requires: chrpath >= 0.10-4 Requires: cpio +Requires: debugedit Requires: diffutils Requires: elfutils Requires: file >= 4.17 Requires: fileutils Requires: findutils +Requires: rpm-tld-macros-build >= 1.744 %ifarch athlon Requires: gcc >= 3.0.3 %else @@ -437,23 +443,6 @@ Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen. Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM. -%package pythonprov -Summary: Python macros, which simplifies creation of RPM packages with Python software -Summary(pl.UTF-8): Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Pythonie -Group: Applications/File -Requires: %{name} = %{epoch}:%{version}-%{release} -Requires: python3 -Requires: python3-modules -Requires: python3-setuptools - -%description pythonprov -Python macros, which simplifies creation of RPM packages with Python -software. - -%description pythonprov -l pl.UTF-8 -Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w -Pythonie. - %package -n python3-rpm Summary: Python 3 interface to RPM library Summary(pl.UTF-8): Interfejs Pythona 3 do biblioteki RPM-a @@ -539,8 +528,8 @@ This plugin adds support for enforcing and verifying IMA file signatures in an rpm. %description plugin-ima -l pl.UTF-8 -Ta wtyczka dodaje obsługę wymuszania i weryfikacji podpisów plików -IMA w RPM-ie. +Ta wtyczka dodaje obsługę wymuszania i weryfikacji podpisów plików IMA +w RPM-ie. %package plugin-prioreset Summary: Plugin for resetting scriptlet priorities for SysV init @@ -571,6 +560,54 @@ Plugin for SELinux functionality. %description plugin-selinux -l pl.UTF-8 Wtyczka do funkcjonalności SELinux. +%package plugin-fsverity +Summary: Plugin for fsverity file signatures +Summary(pl.UTF-8): Wtyczka do sygnatur plików fsverity +Group: Base +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description plugin-fsverity +Plugin for fsverity file signatures. + +%description plugin-fsverity -l pl.UTF-8 +Wtyczka do sygnatur plików fsverity. + +%package plugin-fapolicyd +Summary: Plugin for fapolicyd support +Summary(pl.UTF-8): Wtyczka do obsługi fapolicyd +Group: Base +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description plugin-fapolicyd +Plugin for fapolicyd support. + +See https://people.redhat.com/sgrubb/fapolicyd/ for information about +the fapolicyd daemon. + +%description plugin-fapolicyd -l pl.UTF-8 +Wtyczka do obsługi fapolicyd. + +Informacje na temat demona fapolicyd można znaleźć pod adresem +. + +%package plugin-dbus-announce +Summary: Plugin for announcing transactions on the DBUS +Summary(pl.UTF-8): Wtyczka ogłaszająca transakcje przez DBUS +Group: Base +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description plugin-dbus-announce +The plugin announces basic information about rpm transactions to the +system DBUS - like packages installed or removed. Other programs can +subscribe to the signals to get notified when packages on the system +change. + +%description plugin-dbus-announce -l pl.UTF-8 +Ta wtyczka ogłasza przez podstawowe szynę systemową DBUS informacje o +transakcjach RPM-a, takie jak pakiety, które są instalowane lub +usuwane. Inne programy mogą zasubskrybować sygnały powiadamiające o +zmianach w pakietach systemowych. + %package sign Summary: Package signing support Summary(pl.UTF-8): Obsługa podpisywania pakietów @@ -607,8 +644,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch5 -p1 %patch6 -p0 %patch7 -p1 -%patch8 -p1 -%patch9 -p1 +#%patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 @@ -626,20 +662,16 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch24 -p1 %patch25 -p1 %patch26 -p1 -%patch27 -p1 %patch28 -p1 -%patch29 -p1 +#%patch29 -p1 %patch30 -p1 %patch31 -p1 %patch32 -p1 -%patch33 -p1 %patch34 -p1 %patch35 -p1 %patch36 -p1 %patch37 -p1 %patch38 -p1 -%patch39 -p1 -%patch40 -p1 %{__rm} po/*.gmo @@ -650,8 +682,6 @@ install %{SOURCE15} scripts/perl.prov.in # generate Group translations to *.po awk -f %{SOURCE6} %{SOURCE5} -%{__sed} -i -e '1s,/usr/bin/python,%{__python3},' scripts/pythondistdeps.py - %build %{__libtoolize} %{__aclocal} @@ -671,7 +701,6 @@ awk -f %{SOURCE6} %{SOURCE5} WITH_PERL_VERSION=no \ __GST_INSPECT=%{_bindir}/gst-inspect-1.0 \ __GPG=%{_bindir}/gpg \ - --enable-bdb \ --enable-bdb-ro \ --enable-ndb \ %{!?with_plugins:--disable-plugins} \ @@ -683,8 +712,8 @@ awk -f %{SOURCE6} %{SOURCE5} --with-archive \ --with-audit%{!?with_audit:=no} \ --with-cap \ + --with-fapolicyd \ %{?with_imaevm:--with-imaevm} \ - --with-lua \ %{?with_python3:--enable-python} \ --with-selinux%{!?with_selinux:=no} \ --with-vendor=tld @@ -779,6 +808,9 @@ cp -p %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles cp -p %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles +cp -p %{SOURCE16} $RPM_BUILD_ROOT%{_rpmlibdir}/libtooldeps.sh +cp -p %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/fileattrs/libtool.attr + # move rpm to /bin %{__mv} $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin ln -sf /bin/rpm $RPM_BUILD_ROOT%{_bindir}/rpmquery @@ -981,9 +1013,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_bindir}/rpm2cpio %attr(755,root,root) %{_bindir}/rpmgraph %attr(755,root,root) %{_rpmlibdir}/rpm2cpio.sh -%attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh %attr(755,root,root) %{_rpmlibdir}/tgpg -%attr(755,root,root) %{_rpmlibdir}/debugedit %attr(755,root,root) %{_rpmlibdir}/rpmdeps %{_mandir}/man8/rpm2archive.8* %{_mandir}/man8/rpm2cpio.8* @@ -1008,19 +1038,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f # needs hacked pkg-config to return anything %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh %attr(755,root,root) %{_rpmlibdir}/mkinstalldirs - %attr(755,root,root) %{_rpmlibdir}/fontconfig.prov -# must be here for "Requires: rpm-*prov" to work -#%{_rpmlibdir}/macros.d/cmake -#%{_rpmlibdir}/macros.d/gstreamer -#%{_rpmlibdir}/macros.d/libtool -#%{_rpmlibdir}/macros.d/perl -#%{_rpmlibdir}/macros.d/pkgconfig -#%{_rpmlibdir}/macros.d/python -#%{_rpmlibdir}/macros.d/selinux -#%{_rpmlibdir}/macros.d/tcl -#%{_rpmlibdir}/macros.rpmbuild - %attr(755,root,root) %{_rpmlibdir}/check-buildroot %attr(755,root,root) %{_rpmlibdir}/check-prereqs %attr(755,root,root) %{_rpmlibdir}/check-rpaths @@ -1029,7 +1047,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_rpmlibdir}/find-requires %attr(755,root,root) %{_rpmlibdir}/ocamldeps.sh %attr(755,root,root) %{_rpmlibdir}/script.req -%attr(755,root,root) %{_rpmlibdir}/sepdebugcrcfix %dir %{_rpmlibdir}/fileattrs %{_rpmlibdir}/fileattrs/debuginfo.attr @@ -1039,11 +1056,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %{_rpmlibdir}/fileattrs/libtool.attr %{_rpmlibdir}/fileattrs/metainfo.attr %{_rpmlibdir}/fileattrs/ocaml.attr -%{_rpmlibdir}/fileattrs/perl.attr -%{_rpmlibdir}/fileattrs/perllib.attr %{_rpmlibdir}/fileattrs/pkgconfig.attr -%{_rpmlibdir}/fileattrs/python.attr -%{_rpmlibdir}/fileattrs/pythondist.attr %{_rpmlibdir}/fileattrs/script.attr %attr(755,root,root) %{_bindir}/gendiff @@ -1059,12 +1072,10 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %files perlprov %defattr(644,root,root,755) +%{_rpmlibdir}/fileattrs/perl.attr +%{_rpmlibdir}/fileattrs/perllib.attr %attr(755,root,root) %{_rpmlibdir}/perl.* -%files pythonprov -%defattr(644,root,root,755) -%attr(755,root,root) %{_rpmlibdir}/pythondistdeps.py - %if %{with python3} %files -n python3-rpm %defattr(644,root,root,755) @@ -1107,6 +1118,25 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/rpm-plugins/selinux.so %{_mandir}/man8/rpm-plugin-selinux.8* + +%if %{with fsverity} +%files plugin-fsverity +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/fsverity.so +%endif + +%files plugin-fapolicyd +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/fapolicyd.so +%{_mandir}/man8/rpm-plugin-fapolicyd.8* + +%if %{with systemd} +%files plugin-dbus-announce +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/dbus_announce.so +%{_mandir}/man8/rpm-plugin-dbus-announce.8* +%{_sysconfdir}/dbus-1/system.d/org.rpm.conf +%endif %endif %files sign @@ -1117,5 +1147,5 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %if %{with apidocs} %files apidocs %defattr(644,root,root,755) -%doc doc/librpm/html/* +%doc docs/librpm/html/* %endif diff --git a/sqlite-db-backend.patch b/sqlite-db-backend.patch deleted file mode 100644 index 12b4160..0000000 --- a/sqlite-db-backend.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- rpm-4.16.1.2/macros.in~ 2020-12-25 11:29:20.000000000 +0100 -+++ rpm-4.16.1.2/macros.in 2021-01-05 22:55:49.955934996 +0100 -@@ -627,7 +627,7 @@ - # sqlite Sqlite database - # dummy dummy backend (no actual functionality) - # --%_db_backend bdb -+%_db_backend sqlite - - # - # Macros used to configure Berkley db parameters. diff --git a/x32.patch b/x32.patch index 1162841..9eab78d 100644 --- a/x32.patch +++ b/x32.patch @@ -52,47 +52,16 @@ diff -ur rpm-4.16.1.2/configure.ac rpm-4.16.1.2.x32/configure.ac --- rpm-4.16.1.2/configure.ac 2021-03-21 21:51:28.221530479 +0100 +++ rpm-4.16.1.2.x32/configure.ac 2021-03-21 21:50:04.127398387 +0100 @@ -930,6 +930,10 @@ - host_os=`echo "${host_os}" | sed 's/-gnueabi$//'` - host_os_gnu=-gnueabi + if echo "$host_os" | grep '.*-gnu' > /dev/null ; then + host_os=`echo "${host_os}" | sed 's/-gnu$//'` fi +if echo "$host_os" | grep '.*-gnux32' > /dev/null ; then + host_os=`echo "${host_os}" | sed 's/-gnux32$//'` + host_os_gnu=-gnux32 +fi - if echo "$host_os" | grep '.*-gnu' > /dev/null ; then - host_os=`echo "${host_os}" | sed 's/-gnu$//'` - fi -diff -ur rpm-4.16.1.2/fileattrs/python.attr rpm-4.16.1.2.x32/fileattrs/python.attr ---- rpm-4.16.1.2/fileattrs/python.attr 2020-08-31 11:14:07.991087349 +0200 -+++ rpm-4.16.1.2.x32/fileattrs/python.attr 2021-03-21 21:50:04.127398387 +0100 -@@ -14,14 +14,15 @@ - %__python_requires() %{lua: - -- Match buildroot paths of the form - -- /PATH/OF/BUILDROOT/usr/lib/pythonMAJOR.MINOR/ and -- -- /PATH/OF/BUILDROOT/usr/lib64/pythonMAJOR.MINOR/ -+ -- /PATH/OF/BUILDROOT/usr/lib64/pythonMAJOR.MINOR/ and -+ -- /PATH/OF/BUILDROOT/usr/libx32/pythonMAJOR.MINOR/ - -- generating a line of the form: - -- python(abi) = MAJOR.MINOR - local path = rpm.expand('%1') -- if path:match('/usr/lib%d*/python%d+%.%d+/.*') then -- local requires = path:gsub('.*/usr/lib%d*/python(%d+%.%d+)/.*', 'python(abi) = %1') -+ if path:match('/usr/lib%w*/python%d+%.%d+/.*') then -+ local requires = path:gsub('.*/usr/lib%w*/python(%d+%.%d+)/.*', 'python(abi) = %1') - print(requires) - end - } --%__python_path ^((%{_prefix}/lib(64)?/python[[:digit:]]+\\.[[:digit:]]+/.*\\.(py[oc]?|so))|(%{_bindir}/python[[:digit:]]+\\.[[:digit:]]+))$ -+%__python_path ^((%{_prefix}/lib(64|x32)?/python[[:digit:]]+\\.[[:digit:]]+/.*\\.(py[oc]?|so))|(%{_bindir}/python[[:digit:]]+\\.[[:digit:]]+))$ -diff -ur rpm-4.16.1.2/fileattrs/pythondist.attr rpm-4.16.1.2.x32/fileattrs/pythondist.attr ---- rpm-4.16.1.2/fileattrs/pythondist.attr 2020-05-28 12:04:25.026136626 +0200 -+++ rpm-4.16.1.2.x32/fileattrs/pythondist.attr 2021-03-21 21:50:04.127398387 +0100 -@@ -1,3 +1,3 @@ - %__pythondist_provides %{_rpmconfigdir}/pythondistdeps.py --provides --majorver-provides - %__pythondist_requires %{_rpmconfigdir}/pythondistdeps.py --requires --%__pythondist_path /lib(64)?/python[[:digit:]]\\.[[:digit:]]+/site-packages/[^/]+\\.(dist-info|egg-info|egg-link)$ -+%__pythondist_path /lib(64|x32)?/python[[:digit:]]\\.[[:digit:]]+/site-packages/[^/]+\\.(dist-info|egg-info|egg-link)$ + changequote(<, >) + host_os_exact="${host_os}" diff -ur rpm-4.16.1.2/installplatform rpm-4.16.1.2.x32/installplatform --- rpm-4.16.1.2/installplatform 2020-05-28 12:04:25.027136631 +0200 +++ rpm-4.16.1.2.x32/installplatform 2021-03-21 21:51:47.671145954 +0100 -- 2.44.0