Use multithreaded XZ by default for both binary and source packages

This commit is contained in:
Mikhail Novosyolov 2018-12-25 01:56:29 +03:00
parent 867efd5b06
commit ffa4655caf
3 changed files with 38 additions and 14 deletions

View file

@ -0,0 +1,35 @@
From 327206c531d3b37719cd48b35bf3c58686484073 Mon Sep 17 00:00:00 2001
From: Mikhail Novosyolov <m.novosyolov@rosalinux.ru>
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

View file

@ -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

View file

@ -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