From e5bb6756c125c1b2d70e63aa90b0d1485300f062 Mon Sep 17 00:00:00 2001 From: Michael Forney Date: Tue, 13 Nov 2018 15:06:05 -0800 Subject: Allow overriding pax command with PAXREAD Most systems do not have pax installed by default, or it is not available at all. However, since we are relying on the -s flag for member name substitution, we can't just use a tar command that works everywhere. Instead, support the environment variable PAXREAD to specify the command to use in place of `pax -r`. Since bsdtar from libarchive supports -s, we can set PAXREAD='bsdtar -xf -'. --- pkg/git/fetch.sh | 2 +- pkg/openbsd/fetch.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'pkg') diff --git a/pkg/git/fetch.sh b/pkg/git/fetch.sh index 289daf1f..48edce2c 100644 --- a/pkg/git/fetch.sh +++ b/pkg/git/fetch.sh @@ -15,4 +15,4 @@ if ! sha256sum -c sha256 2>/dev/null ; then fi read -r checksum archive /dev/null ; then sha256sum -c sha256 fi -zcat src.tar.gz | pax -r -s '/^/src\//' \ +zcat src.tar.gz | ${PAXREAD:-pax -r} -s ',^,src/,' \ 'bin/pax/*' \ 'include/*' \ 'lib/libc/*' \ @@ -27,6 +27,6 @@ zcat src.tar.gz | pax -r -s '/^/src\//' \ 'usr.bin/nc/*' \ 'usr.bin/patch/*' \ 'usr.bin/yacc/*' -zcat sys.tar.gz | pax -r -s '/^/src\//' 'sys/sys/*' +zcat sys.tar.gz | ${PAXREAD:-pax -r} -s ',^,src/,' 'sys/sys/*' git apply -v --whitespace=nowarn --directory "$dir/src" patch/* -- cgit v1.2.3