X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/46ea93792da1db916305d50272c6465a6dde7c25..HEAD:/make-dist diff --git a/make-dist b/make-dist index 6bf01ffa11..c0b0a0466f 100755 --- a/make-dist +++ b/make-dist @@ -1,7 +1,7 @@ #!/bin/sh ### make-dist: create an Emacs distribution tar file from current srcdir -## Copyright (C) 1995, 1997-1998, 2000-2015 Free Software Foundation, +## Copyright (C) 1995, 1997-1998, 2000-2016 Free Software Foundation, ## Inc. ## This file is part of GNU Emacs. @@ -110,7 +110,7 @@ while [ $# -gt 0 ]; do ;; "--help") - echo "Usage: ${progname} [options]" + printf '%s\n' "Usage: ${progname} [options]" echo "" echo " --bzip2 use bzip2 instead of gzip" echo " --clean-up delete staging directories when done" @@ -128,7 +128,7 @@ while [ $# -gt 0 ]; do ;; * ) - echo "${progname}: Unrecognized argument: $1" >&2 + printf '%s\n' "${progname}: Unrecognized argument: $1" >&2 exit 1 ;; esac @@ -137,9 +137,9 @@ done ### Make sure we're running in the right place. if [ ! -d src -o ! -f src/lisp.h -o ! -d lisp -o ! -f lisp/subr.el ]; then - echo "${progname}: Can't find 'src/lisp.h' and 'lisp/subr.el'." >&2 - echo "${progname} must be run in the top directory of the Emacs" >&2 - echo "distribution tree. cd to that directory and try again." >&2 + printf '%s\n' "${progname}: Can't find 'src/lisp.h' and 'lisp/subr.el'." >&2 + printf '%s\n' "${progname} must be run in the top directory of the Emacs" >&2 + printf '%s\n' "distribution tree. cd to that directory and try again." >&2 exit 1 fi @@ -155,7 +155,7 @@ then /*) ;; *) if [ ! -f "$EMACS" ]; then - echo "$0: You must set the EMACS environment variable " \ + printf '%s\n' "$0: You must set the EMACS environment variable " \ "to an absolute file name." 2>&1 exit 1 fi;; @@ -168,7 +168,8 @@ version=` sed -n 's/^AC_INIT(GNU Emacs,[ ]*\([^ ,)]*\).*/\1/p' &2 + printf '%s\n' \ + "${progname}: can't find current Emacs version in './src/emacs.c'" >&2 exit 1 fi @@ -195,7 +196,7 @@ fi ### Make sure the subdirectory is available. tempparent="make-dist.tmp.$$" if [ -d ${tempparent} ]; then - echo "${progname}: staging directory '${tempparent}' already exists. + printf '%s\n' "${progname}: staging directory '${tempparent}' already exists. Perhaps a previous invocation of '${progname}' failed to clean up after itself. Check that directories whose names are of the form 'make-dist.tmp.NNNNN' don't contain any important information, remove @@ -283,7 +284,7 @@ echo "Creating top directory: '${tempdir}'" mkdir ${tempdir} if [ "$changelog" = yes ]; then - if test -d .git; then + if test -e .git; then echo "Making top-level ChangeLog" make ChangeLog CHANGELOG=${tempdir}/ChangeLog || \ { x=$?; echo "make ChangeLog FAILED (try --no-changelog?)" >&2; exit $x; } @@ -300,7 +301,7 @@ echo "Making links to top-level files" ln INSTALL README BUGS ${tempdir} ln ChangeLog.*[0-9] Makefile.in autogen.sh configure configure.ac ${tempdir} ln config.bat make-dist .dir-locals.el ${tempdir} -ln aclocal.m4 ${tempdir} +ln aclocal.m4 CONTRIBUTE ${tempdir} echo "Creating subdirectories" for subdir in site-lisp \ @@ -310,7 +311,7 @@ for subdir in site-lisp \ nt nt/inc nt/inc/sys nt/inc/arpa nt/inc/netinet nt/icons \ `find etc lisp admin test -type d` \ doc doc/emacs doc/misc doc/man doc/lispref doc/lispintro \ - info m4 msdos \ + info m4 modules modules/mod-test msdos \ nextstep nextstep/templates \ nextstep/Cocoa nextstep/Cocoa/Emacs.base \ nextstep/Cocoa/Emacs.base/Contents \ @@ -322,7 +323,7 @@ do if [ "$with_tests" != "yes" ]; then case $subdir in - test*) continue ;; + test*|*/mod-test*) continue ;; esac fi @@ -338,7 +339,7 @@ files=`find lisp \( -name '*.el' -o -name '*.elc' -o -name 'ChangeLog*' \ -o -name 'README' \)` ### Don't distribute site-init.el, site-load.el, or default.el. -for file in lisp/Makefile.in lisp/makefile.w32-in $files; do +for file in lisp/Makefile.in $files; do case $file in */site-init*|*/site-load*|*/default*) continue ;; esac @@ -347,7 +348,6 @@ done echo "Making links to 'leim' and its subdirectories" (cd leim - ln makefile.w32-in ../${tempdir}/leim ln ChangeLog.*[0-9] README ../${tempdir}/leim ln CXTERM-DIC/README CXTERM-DIC/*.tit ../${tempdir}/leim/CXTERM-DIC ln SKK-DIC/README SKK-DIC/SKK-JISYO.L ../${tempdir}/leim/SKK-DIC @@ -362,7 +362,7 @@ echo "Making links to 'build-aux'" ln gitlog-to-changelog gitlog-to-emacslog ../${tempdir}/build-aux ln install-sh missing move-if-change ../${tempdir}/build-aux ln update-copyright update-subdirs ../${tempdir}/build-aux - ln dir_top make-info-dir ../${tempdir}/build-aux) + ln dir_top make-info-dir ar-lib ../${tempdir}/build-aux) echo "Making links to 'build-aux/snippet'" (cd build-aux/snippet @@ -377,7 +377,6 @@ echo "Making links to 'src'" ln [a-zA-Z]*.in ../${tempdir}/src ln deps.mk ../${tempdir}/src ln README ChangeLog.*[0-9] ../${tempdir}/src - ln makefile.w32-in ../${tempdir}/src ln .gdbinit .dbxinit ../${tempdir}/src cd ../${tempdir}/src rm -f globals.h config.h epaths.h Makefile buildobj.h) @@ -390,7 +389,7 @@ echo "Making links to 'lib'" (snippet_h=`(cd build-aux/snippet && ls *.h)` cd lib ln [a-zA-Z]*.[ch] ../${tempdir}/lib - ln gnulib.mk Makefile.am Makefile.in makefile.w32-in ../${tempdir}/lib + ln gnulib.mk Makefile.am Makefile.in ../${tempdir}/lib cd ../${tempdir}/lib script='/[*]/d; s/\.in\.h$/.h/' rm -f `(echo "$snippet_h"; ls *.in.h) | sed "$script"`) @@ -400,21 +399,32 @@ echo "Making links to 'lib-src'" ln [a-zA-Z]*.[ch] ../${tempdir}/lib-src ln ChangeLog.*[0-9] Makefile.in README ../${tempdir}/lib-src ln rcs2log ../${tempdir}/lib-src - ln makefile.w32-in ../${tempdir}/lib-src ln update-game-score.exe.manifest ../${tempdir}/lib-src) echo "Making links to 'm4'" (cd m4 ln *.m4 ../${tempdir}/m4) +echo "Making links to 'modules'" +(cd modules + ln *.py ../${tempdir}/modules + if [ "$with_tests" = "yes" ]; then + for f in `find mod-test -type f`; do + case $f in + *.log|*.o|*.so) continue ;; + esac + ln $f ../$tempdir/modules/$f + done + fi +) + echo "Making links to 'nt'" (cd nt ln emacs-x86.manifest emacs-x64.manifest ../${tempdir}/nt - ln config.nt emacs-src.tags ../${tempdir}/nt - ln nmake.defs gmake.defs subdirs.el [a-z]*.bat [a-z]*.[ch] ../${tempdir}/nt + ln [a-z]*.bat [a-z]*.[ch] ../${tempdir}/nt ln *.in gnulib.mk ../${tempdir}/nt - ln mingw-cfg.site epaths.nt INSTALL.OLD ../${tempdir}/nt - ln ChangeLog.*[0-9] INSTALL README README.W32 makefile.w32-in ../${tempdir}/nt) + ln mingw-cfg.site epaths.nt INSTALL.W64 ../${tempdir}/nt + ln ChangeLog.*[0-9] INSTALL README README.W32 ../${tempdir}/nt) echo "Making links to 'nt/inc' and its subdirectories" for f in `find nt/inc -type f -name '[a-z]*.h'`; do @@ -500,23 +510,22 @@ ln `find info -type f -print` ${tempdir}/info echo "Making links to 'doc/emacs'" (cd doc/emacs - ln *.texi *.in makefile.w32-in ChangeLog.*[0-9] ../../${tempdir}/doc/emacs) + ln *.texi *.in ChangeLog.*[0-9] ../../${tempdir}/doc/emacs) echo "Making links to 'doc/misc'" (cd doc/misc - ln *.texi *.tex *.in makefile.w32-in gnus-news.el ChangeLog.*[0-9] \ + ln *.texi *.tex *.in gnus-news.el ChangeLog.*[0-9] \ ../../${tempdir}/doc/misc) echo "Making links to 'doc/lispref'" (cd doc/lispref - ln *.texi *.in makefile.w32-in README ChangeLog.*[0-9] \ - ../../${tempdir}/doc/lispref + ln *.texi *.in README ChangeLog.*[0-9] ../../${tempdir}/doc/lispref ln spellfile ../../${tempdir}/doc/lispref ln two-volume.make two-volume-cross-refs.txt ../../${tempdir}/doc/lispref) echo "Making links to 'doc/lispintro'" (cd doc/lispintro - ln *.texi *.in makefile.w32-in *.eps *.pdf ../../${tempdir}/doc/lispintro + ln *.texi *.in *.eps *.pdf ../../${tempdir}/doc/lispintro ln README ChangeLog.*[0-9] ../../${tempdir}/doc/lispintro cd ../../${tempdir}/doc/lispintro) @@ -535,7 +544,7 @@ for subdir in . etc leim lib lib-src lisp lwlib msdos nt src; do done if [ "${newer}" ]; then - echo "Removing files older than $newer" + printf '%s\n' "Removing files older than $newer" ## We remove .elc files unconditionally, on the theory that anyone picking ## up an incremental distribution already has a running Emacs to byte-compile ## them with. @@ -549,8 +558,9 @@ find ${tempparent} \( -name '*~' -o -name '#*#' -o -name '.*ignore' -o -name '=* if [ "${make_tar}" = yes ]; then echo "Looking for $default_gzip" found=0 - temppath=`echo $PATH | sed -e 's/^:/.:/' -e 's/::/:.:/g' -e 's/:$/:./' \ - -e 's/:/ /g'` + temppath=`printf '%s\n' "$PATH" | + sed -e 's/^:/.:/' -e 's/::/:.:/g' -e 's/:$/:./' -e 's/:/ /g' + ` for dir in ${temppath}; do [ -x ${dir}/$default_gzip ] || continue found=1; break