From: Christian Hesse
Adds the ability to override the commands used to compressing
compiled and source packages. This is useful for those wanting
to use alternative implementations of the compression tools or
non-default compression options.
Allan: documented options in man page
Signed-off-by: Allan McRae
---
Adjust patch from FS#27430. Sending to list for final comments.
doc/makepkg.conf.5.txt | 4 ++++
etc/makepkg.conf.in | 10 ++++++++++
scripts/makepkg.sh.in | 8 ++++----
3 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/doc/makepkg.conf.5.txt b/doc/makepkg.conf.5.txt
index db1e6d5..5970946 100644
--- a/doc/makepkg.conf.5.txt
+++ b/doc/makepkg.conf.5.txt
@@ -213,6 +213,10 @@ Options
This value is used when querying a package to see who was the builder.
It is recommended you change this to your name and email address.
+**COMPRESSGZ=**"(gzip -c -f -n)", **COMPRESSBZ2=**"(bzip2 -c -f)", **COMPRESSXZ=**"(xz -c -z -)", **COMPRESSZ=**"(compress -c -f)"::
+ Sets the command and options used when compressing compiled or source
+ packages in the named format.
+
**PKGEXT=**".pkg.tar.gz", **SRCEXT=**".src.tar.gz"::
Sets the compression used when making compiled or source packages. The
current valid suffixes are `.tar`, `.tar.gz`, `.tar.bz2`, `.tar.xz`, and
diff --git a/etc/makepkg.conf.in b/etc/makepkg.conf.in
index e9152c8..6c87ea4 100644
--- a/etc/makepkg.conf.in
+++ b/etc/makepkg.conf.in
@@ -107,6 +107,16 @@ PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
#GPGKEY=""
#########################################################################
+# COMPRESSION DEFAULTS
+#########################################################################
+#
+COMPRESSGZ=(gzip -c -f -n)
+COMPRESSBZ2=(bzip2 -c -f)
+COMPRESSXZ=(xz -c -z -)
+COMPRESSZ=(compress -c -f)
+
+
+#########################################################################
# EXTENSION DEFAULTS
#########################################################################
#
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index aa98cfa..0fab2a1 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -1292,10 +1292,10 @@ create_package() {
# Disable bsdtar compression and use gzip -n for now.
bsdtar -cf - $comp_files * |
case "$PKGEXT" in
- *tar.gz) gzip -c -f -n ;;
- *tar.bz2) bzip2 -c -f ;;
- *tar.xz) xz -c -z - ;;
- *tar.Z) compress -c -f ;;
+ *tar.gz) "${COMPRESSGZ[@]:-gzip -c -f -n}" ;;
+ *tar.bz2) "${COMPRESSBZ2[@]:-bzip2 -c -f}" ;;
+ *tar.xz) "${COMPRESSXZ[@]:-xz -c -z -}" ;;
+ *tar.Z) "${COMPRESSZ[@]:-compress -c -f}" ;;
*tar) cat ;;
*) warning "$(gettext "'%s' is not a valid archive extension.")" \
"$PKGEXT"; cat ;;
--
1.7.9