From 4410f5d86997b6b238ff05c2ece338b28e1163b1 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 25 Jun 2022 14:51:28 -0500 Subject: [PATCH] Port distribution tarball to Solaris 10 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit * make-dist (taropt): Use 'tar -H ustar' to generate a portable tar file format instead of a GNU-specific format. Needed now that Emacs tarballs contain file names longer than 100 bytes, e.g.: emacs-28.1/test/lisp/gnus/mml-sec-resources/private-keys-v1.d/C072AF82DCCCB9A7F1B85FFA10B802DC4ED16703.key emacs-28.1/test/lisp/emacs-lisp/bytecomp-resources/error-lexical-var-with-run-hook-with-args-until-success.el Without this patch, extracting a tarball on Solaris 10 fails with many diagnostics like “tar: ././@LongLink: typeflag 'L' not recognized, converting to regular file”. --- make-dist | 2 ++ 1 file changed, 2 insertions(+) diff --git a/make-dist b/make-dist index 447e90f018e..67e49382d07 100755 --- a/make-dist +++ b/make-dist @@ -485,6 +485,8 @@ if [ "${make_tar}" = yes ]; then esac echo "Creating tar file" taropt='--numeric-owner --owner=0 --group=0 --mode=go+u,go-w' + tar -H ustar -cf /dev/null $tempdir/src/lisp.h 2>/dev/null && + taropt="$taropt -H ustar" tar --sort=name -cf /dev/null $tempdir/src/lisp.h 2>/dev/null && taropt="$taropt --sort=name" [ "$verbose" = "yes" ] && taropt="$taropt --verbose" -- 2.39.2