From ffa4655cafe715ad3d952ee51d60f85d104e606d Mon Sep 17 00:00:00 2001 From: Mikhail Novosyolov Date: Tue, 25 Dec 2018 01:56:29 +0300 Subject: [PATCH] Use multithreaded XZ by default for both binary and source packages --- ...d-XZ-by-default-for-both-binary-and-.patch | 35 +++++++++++++++++++ ...p-up-to-default-xz-compression-level.patch | 11 ------ rpm.spec | 6 ++-- 3 files changed, 38 insertions(+), 14 deletions(-) create mode 100644 rpm-5.4.10-Use-multithreaded-XZ-by-default-for-both-binary-and-.patch delete mode 100644 rpm-5.4.10-bump-up-to-default-xz-compression-level.patch diff --git a/rpm-5.4.10-Use-multithreaded-XZ-by-default-for-both-binary-and-.patch b/rpm-5.4.10-Use-multithreaded-XZ-by-default-for-both-binary-and-.patch new file mode 100644 index 0000000..9a4d3d5 --- /dev/null +++ b/rpm-5.4.10-Use-multithreaded-XZ-by-default-for-both-binary-and-.patch @@ -0,0 +1,35 @@ +From 327206c531d3b37719cd48b35bf3c58686484073 Mon Sep 17 00:00:00 2001 +From: Mikhail Novosyolov +Date: Tue, 25 Dec 2018 01:50:51 +0300 +Subject: [PATCH] Use multithreaded XZ by default for both binary and source + packages. + +Note: according to https://github.com/rpm-software-management/rpm/commit/b7b2ab2177af8359663fcfb83cb2af3da578012e#commitcomment-14634266 , +multithreaded XZ will break deltarpm, but ROSA does not have deltarpm. + +Example of this config was taken from https://github.com/rpm-software-management/rpm/commit/c004d7647e2c16d6672d8f902d2cab00d89b9778 +--- + macros/mandriva.in | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/macros/mandriva.in b/macros/mandriva.in +index 3f742ad..958a869 100644 +--- a/macros/mandriva.in ++++ b/macros/mandriva.in +@@ -127,8 +127,11 @@ + # TODO: fix check script and implement support for using + #%_multiarch_required_terminate_build 1 + +-# use XZ to compress binary packages: +-%_binary_payload w5.xzdio ++# use multithreaded XZ to compress binary and source packages ++# note: only liblzma >= 5.2 supports multithreaded xz ++# xz level 6 (default) using 0 thread (0 means multithreading to as much CPU cores as possible) ++%_binary_payload w6T0.xzdio ++%_source_payload w6T0.xzdio + + %_duplicate_files_terminate_build 1 + %_unpackaged_subdirs_terminate_build 0 +-- +2.17.1 + diff --git a/rpm-5.4.10-bump-up-to-default-xz-compression-level.patch b/rpm-5.4.10-bump-up-to-default-xz-compression-level.patch deleted file mode 100644 index 6e6154c..0000000 --- a/rpm-5.4.10-bump-up-to-default-xz-compression-level.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- rpm-5.4.10/macros/mandriva.in.xz_level~ 2012-08-22 07:01:25.857226253 +0200 -+++ rpm-5.4.10/macros/mandriva.in 2012-08-22 07:00:39.043500115 +0200 -@@ -124,7 +124,7 @@ end\ - #%_multiarch_required_terminate_build 1 - - # use XZ to compress binary packages: --%_binary_payload w5.xzdio -+%_binary_payload w.xzdio - - %_duplicate_files_terminate_build 1 - %_unpackaged_subdirs_terminate_build 0 diff --git a/rpm.spec b/rpm.spec index a3e430c..00f996e 100644 --- a/rpm.spec +++ b/rpm.spec @@ -61,7 +61,7 @@ Summary: The RPM package management system Name: rpm Epoch: 1 Version: %{libver}.%{minorver} -Release: %{?prereldate:0.%{prereldate}.}81 +Release: %{?prereldate:0.%{prereldate}.}82 License: LGPLv2.1+ Group: System/Configuration/Packaging Url: http://rpm5.org/ @@ -339,7 +339,6 @@ Patch158: rpm-5.4.10-fix-neon-saving-error-pages-as-target-file.patch # --ignorearch & --ignoreos to set these. # status: needs to be discussed upstream before thinking about merging Patch159: rpm-5.4.10-support-ignore-arch-and-os-again.patch -Patch160: rpm-5.4.10-bump-up-to-default-xz-compression-level.patch # fix so that we search through library dirs within buildroot for uclibc libraries # status: same as for other dep gen patches Patch161: rpm-5.4.10-search-through-buildroot-library-dirs-for-uclibc-deps.patch @@ -531,6 +530,7 @@ Patch518: rpm-5.4.10-fix-egg-info-provides.patch Patch519: rpm-5.4.10-debuginfo-too-many-notes.patch Patch520: rpm-5.4.10-Multithreaded-XZ.patch +Patch521: rpm-5.4.10-Use-multithreaded-XZ-by-default-for-both-binary-and-.patch BuildRequires: autoconf >= 2.57 BuildRequires: bzip2-devel @@ -1129,7 +1129,6 @@ This package contains the RPM API documentation generated in HTML format. %patch158 -p1 -b .dl_error~ #patch138 -p1 -b .trigtrans~ %patch159 -p1 -b .ignore_arch~ -%patch160 -p1 -b .xz_level~ %patch161 -p1 -b .uclibc_buildroot~ %patch162 -p1 -b .uninitialized~ %patch163 -p1 -b .coverity1035956.patch~ @@ -1198,6 +1197,7 @@ This package contains the RPM API documentation generated in HTML format. %patch519 -p1 -b .debug_notes~ %patch520 -p1 -b .MultithreadedXZ +%patch521 -p1 -b .MultithreadedXZbyDefault #required by P55, P80, P81, P94.. ./autogen.sh