diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 30658b57..84221d0f 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1256,17 +1256,6 @@ create_package() { # tar it up msg2 "$(gettext "Compressing package...")" - local EXT - case "$PKGEXT" in - *tar.gz) EXT=${PKGEXT%.gz} ;; - *tar.bz2) EXT=${PKGEXT%.bz2} ;; - *tar.xz) EXT=${PKGEXT%.xz} ;; - *tar.Z) EXT=${PKGEXT%.Z} ;; - *tar) EXT=${PKGEXT} ;; - *) warning "$(gettext "'%s' is not a valid archive extension.")" \ - "$PKGEXT" ; EXT=$PKGEXT ;; - esac - local fullver=$(get_full_version) local pkg_file="$PKGDEST/${nameofpkg}-${fullver}-${PKGARCH}${PKGEXT}" local ret=0 @@ -1279,13 +1268,18 @@ create_package() { shopt -s nullglob # TODO: Maybe this can be set globally for robustness shopt -s -o pipefail + # bsdtar's gzip compression always saves the time stamp, making one + # archive created using the same command line distinct from another. + # 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) cat ;; + *tar.gz) gzip -c -f -n ;; + *tar.bz2) bzip2 -c -f ;; + *tar.xz) xz -c -z - ;; + *tar.Z) compress -c -f ;; + *tar) cat ;; + *) warning "$(gettext "'%s' is not a valid archive extension.")" \ + "$PKGEXT"; cat ;; esac > "${pkg_file}" || ret=$? shopt -u nullglob