]> git.eshelyaron.com Git - emacs.git/commitdiff
Port distribution tarball to Solaris 10
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 25 Jun 2022 19:51:28 +0000 (14:51 -0500)
committerEli Zaretskii <eliz@gnu.org>
Sun, 26 Jun 2022 13:22:04 +0000 (16:22 +0300)
* 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”.

(cherry picked from commit 4410f5d86997b6b238ff05c2ece338b28e1163b1)

make-dist

index 447e90f018ef95a202718edeb8b5aabd671e3070..67e49382d07ad918131c252fd45211335bcca707 100755 (executable)
--- 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"