summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan McRae <allan@archlinux.org>2013-02-10 01:04:21 +1000
committerAllan McRae <allan@archlinux.org>2013-02-13 11:50:32 +1000
commit572b1a5de7a2e44bc269733870fbf0bfc5e6b5e7 (patch)
treecead2551ab2dd429755675bd33fd265b3e1f5160
parent390b08f18b4ef550230f9f4749fb52254ccba6e5 (diff)
makepkg: add lrzip compression support
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r--doc/makepkg.conf.5.txt8
-rw-r--r--scripts/makepkg.sh.in12
2 files changed, 12 insertions, 8 deletions
diff --git a/doc/makepkg.conf.5.txt b/doc/makepkg.conf.5.txt
index 052b3429..34748de1 100644
--- a/doc/makepkg.conf.5.txt
+++ b/doc/makepkg.conf.5.txt
@@ -240,14 +240,16 @@ 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)"::
+**COMPRESSGZ=**"(gzip -c -f -n)", **COMPRESSBZ2=**"(bzip2 -c -f)",
+**COMPRESSXZ=**"(xz -c -z -)", **COMPRESSLRZ=**"(lrzip -q)",
+**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
- `.tar.Z`.
+ current valid suffixes are `.tar`, `.tar.gz`, `.tar.bz2`, `.tar.xz`,
+ `.tar.lrz` and `.tar.Z`.
Do not touch these unless you know what you are doing.
See Also
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index c464ec79..e79a468a 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -1826,6 +1826,7 @@ create_package() {
*tar.gz) ${COMPRESSGZ[@]:-gzip -c -f -n} ;;
*tar.bz2) ${COMPRESSBZ2[@]:-bzip2 -c -f} ;;
*tar.xz) ${COMPRESSXZ[@]:-xz -c -z -} ;;
+ *tar.lrz) ${COMPRESSLRZ[@]:-lrzip -q} ;;
*tar.Z) ${COMPRESSZ[@]:-compress -c -f} ;;
*tar) cat ;;
*) warning "$(gettext "'%s' is not a valid archive extension.")" \
@@ -1938,10 +1939,11 @@ create_srcpackage() {
local TAR_OPT
case "$SRCEXT" in
- *tar.gz) TAR_OPT="z" ;;
- *tar.bz2) TAR_OPT="j" ;;
- *tar.xz) TAR_OPT="J" ;;
- *tar.Z) TAR_OPT="Z" ;;
+ *tar.gz) TAR_OPT="-z" ;;
+ *tar.bz2) TAR_OPT="-j" ;;
+ *tar.xz) TAR_OPT="-J" ;;
+ *tar.lrz) TAR_OPT="--lrzip" ;;
+ *tar.Z) TAR_OPT="-Z" ;;
*tar) TAR_OPT="" ;;
*) warning "$(gettext "'%s' is not a valid archive extension.")" \
"$SRCEXT" ;;
@@ -1953,7 +1955,7 @@ create_srcpackage() {
# tar it up
msg2 "$(gettext "Compressing source package...")"
cd_safe "${srclinks}"
- if ! bsdtar -c${TAR_OPT}Lf "$pkg_file" ${pkgbase}; then
+ if ! bsdtar -cL ${TAR_OPT} -f "$pkg_file" ${pkgbase}; then
error "$(gettext "Failed to create source package file.")"
exit 1 # TODO: error code
fi