summaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2018-11-13 15:06:05 -0800
committerMichael Forney <mforney@mforney.org>2019-03-11 12:20:37 -0700
commite5bb6756c125c1b2d70e63aa90b0d1485300f062 (patch)
treec0cea25006ecc2c4ed9e5696d447d5603187d0d6 /pkg
parent01b862af3be3cde43223e4b900f0025f70aaaac2 (diff)
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 -'.
Diffstat (limited to 'pkg')
-rw-r--r--pkg/git/fetch.sh2
-rw-r--r--pkg/openbsd/fetch.sh4
2 files changed, 3 insertions, 3 deletions
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 <sha256
-xzcat "$archive" | pax -r -s ',^\.,src/man,'
+xzcat "$archive" | ${PAXREAD:-pax -r} -s ',^\.,src/man,'
diff --git a/pkg/openbsd/fetch.sh b/pkg/openbsd/fetch.sh
index 48730f6b..dfbe46e4 100644
--- a/pkg/openbsd/fetch.sh
+++ b/pkg/openbsd/fetch.sh
@@ -14,7 +14,7 @@ if ! sha256sum -c sha256 2>/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/*