commit:     94bc701a20b843aee37fe6700f5a4e2c9c0d15a2
Author:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 17 22:53:48 2023 +0000
Commit:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Tue Oct 17 22:53:48 2023 +0000
URL:        https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=94bc701a

kheaders: make it possible to override TAR

Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>

 0000_README             |  4 +++
 2930_tar_override.patch | 65 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 69 insertions(+)

diff --git a/0000_README b/0000_README
index 7be69feb..665fa5a2 100644
--- a/0000_README
+++ b/0000_README
@@ -103,6 +103,10 @@ Patch:  2920_sign-file-patch-for-libressl.patch
 From:   https://bugs.gentoo.org/717166
 Desc:   sign-file: full functionality with modern LibreSSL
 
+Patch:  2930_tar_override.patch
+From:   
https://lore.kernel.org/lkml/20230412082743.350699-1-mgo...@gentoo.org/#t
+Desc:   kheaders: make it possible to override TAR
+
 Patch:  3000_Support-printing-firmware-info.patch
 From:   https://bugs.gentoo.org/732852
 Desc:   Print firmware info (Reqs CONFIG_GENTOO_PRINT_FIRMWARE_INFO). Thanks 
to Georgy Yakovlev

diff --git a/2930_tar_override.patch b/2930_tar_override.patch
new file mode 100644
index 00000000..001ff800
--- /dev/null
+++ b/2930_tar_override.patch
@@ -0,0 +1,65 @@
+From: "Michał Górny" <mgo...@gentoo.org>
+To: Dmitry Goldin <dgoldin+l...@protonmail.ch>
+Cc: "Masahiro Yamada" <yamada.masah...@socionext.com>,
+       linux-ker...@vger.kernel.org, "Michał Górny" <mgo...@gentoo.org>,
+       "Sam James" <s...@gentoo.org>,
+       "Masahiro Yamada" <masahi...@kernel.org>
+Subject: [PATCH v2] kheaders: make it possible to override TAR
+Date: Wed, 12 Apr 2023 10:27:43 +0200  [thread overview]
+Message-ID: <20230412082743.350699-1-mgo...@gentoo.org> (raw)
+In-Reply-To: 
<CAK7LNATfrxu7BK0ZRq+qSjObiz6GpS3U5L=12vDys5_yy=m...@mail.gmail.com>
+
+Commit 86cdd2fdc4e39c388d39c7ba2396d1a9dfd66226 ("kheaders: make headers
+archive reproducible") introduced a number of options specific to GNU
+tar to the `tar` invocation in `gen_kheaders.sh` script.  This causes
+the script to fail to work on systems where `tar` is not GNU tar.  This
+can occur e.g. on recent Gentoo Linux installations that support using
+bsdtar from libarchive instead.
+
+Add a `TAR` make variable to make it possible to override the tar
+executable used, e.g. by specifying:
+
+  make TAR=gtar
+
+Link: https://bugs.gentoo.org/884061
+Reported-by: Sam James <s...@gentoo.org>
+Tested-by: Sam James <s...@gentoo.org>
+Co-developed-by: Masahiro Yamada <masahi...@kernel.org>
+Signed-off-by: Michał Górny <mgo...@gentoo.org>
+---
+ Makefile               | 3 ++-
+ kernel/gen_kheaders.sh | 2 +-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 5aeea3d98..50045059c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -520,6 +520,7 @@ LZMA               = lzma
+ LZ4           = lz4c
+ XZ            = xz
+ ZSTD          = zstd
++TAR           = tar
+ 
+ PAHOLE_FLAGS  = $(shell PAHOLE=$(PAHOLE) $(srctree)/scripts/pahole-flags.sh)
+ 
+@@ -599,7 +600,7 @@ export RUSTC RUSTDOC RUSTFMT RUSTC_OR_CLIPPY_QUIET 
RUSTC_OR_CLIPPY BINDGEN CARGO
+ export HOSTRUSTC KBUILD_HOSTRUSTFLAGS
+ export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC 
AWK INSTALLKERNEL
+ export PERL PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
+-export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD
++export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD TAR
+ export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE
+ export KBUILD_USERCFLAGS KBUILD_USERLDFLAGS
+ 
+--- a/kernel/gen_kheaders.sh   2023-10-17 18:43:00.365033993 -0400
++++ b/kernel/gen_kheaders.sh   2023-10-17 18:43:36.301750445 -0400
+@@ -83,7 +83,7 @@ find $cpio_dir -type f -print0 |
+       xargs -0 -P8 -n1 perl -pi -e 'BEGIN {undef $/;}; 
s/\/\*((?!SPDX).)*?\*\///smg;'
+ 
+ # Create archive and try to normalize metadata for reproducibility.
+-tar "${KBUILD_BUILD_TIMESTAMP:+--mtime=$KBUILD_BUILD_TIMESTAMP}" \
++${TAR:-tar} "${KBUILD_BUILD_TIMESTAMP:+--mtime=$KBUILD_BUILD_TIMESTAMP}" \
+     --owner=0 --group=0 --sort=name --numeric-owner \
+     -I $XZ -cf $tarfile -C $cpio_dir/ . > /dev/null
+ 

Reply via email to