#!/bin/sh
### make-dist: create an Emacs distribution tar file from current srcdir
-## Copyright (C) 1995, 1997-1998, 2000-2013 Free Software Foundation, Inc.
+## Copyright (C) 1995, 1997-1998, 2000-2014 Free Software Foundation,
+## Inc.
## This file is part of GNU Emacs.
if [ $check = yes ]; then
ls -1 lisp/[a-zA-Z]*.el lisp/[a-z]*/[a-zA-Z0-9]*.el \
lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \
- lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el \
- leim/[a-z]*/[a-z]*.el > /tmp/el
+ lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.el > /tmp/el
ls -1 lisp/[a-zA-Z]*.elc lisp/[a-z]*/[a-zA-Z0-9]*.elc \
lisp/[a-z]*/[a-z]*/[a-zA-Z0-9]*.elc \
- lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.elc \
- leim/[a-z]*/[a-z]*.elc > /tmp/elc
+ lisp/[a-z]*/[a-z]*/[a-z]*/[a-zA-Z0-9]*.elc > /tmp/elc
## Check for .elc files with no corresponding .el file.
sed 's/\.el$/.elc/' /tmp/el > /tmp/elelc
echo timestamp > src/stamp-h.in
echo "Updating Info files"
- make info-real
+ make info
echo "Updating finder, custom and autoload data"
(cd lisp && make updates EMACS="$EMACS")
(cd leim && make leim-list.el EMACS="$EMACS")
echo "Recompiling Lisp files"
- $EMACS -batch -f batch-byte-recompile-directory lisp leim
+ $EMACS -batch -f batch-byte-recompile-directory lisp
fi # $update = yes
echo "Creating staging directory: \`${tempparent}'"
echo "Creating subdirectories"
for subdir in site-lisp \
- leim leim/CXTERM-DIC leim/MISC-DIC \
- leim/SKK-DIC leim/ja-dic leim/quail \
+ leim leim/CXTERM-DIC leim/MISC-DIC leim/SKK-DIC \
build-aux build-aux/snippet \
src src/bitmaps lib lib-src oldXMenu lwlib \
nt nt/inc nt/inc/sys nt/inc/arpa nt/inc/netinet nt/icons \
-o -name 'README' \)`
### Don't distribute site-init.el, site-load.el, or default.el.
-for file in lisp/Makefile.in $files; do
+for file in lisp/Makefile.in lisp/makefile.w32-in $files; do
case $file in
*/site-init*|*/site-load*|*/default*) continue ;;
esac
echo "Making links to \`leim' and its subdirectories"
(cd leim
+ ln makefile.w32-in ../${tempdir}/leim
ln ChangeLog 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
ln MISC-DIC/README MISC-DIC/*.* ../${tempdir}/leim/MISC-DIC
- ln ja-dic/*.el ja-dic/*.elc ../${tempdir}/leim/ja-dic
ln Makefile.in ../${tempdir}/leim/Makefile.in
- ln leim-ext.el ../${tempdir}/leim/leim-ext.el
- ## Lisp files that start with a capital (also 4Corner.el) are
- ## generated from TIT dictionaries so we don't distribute them.
- ln quail/[a-z]*.el quail/[a-z]*.elc ../${tempdir}/leim/quail
- rm -f ../${tempdir}/leim/quail/quick-b5.*
- rm -f ../${tempdir}/leim/quail/quick-cns.*
- rm -f ../${tempdir}/leim/quail/tsang-b5.*
- rm -f ../${tempdir}/leim/quail/tsang-cns.*)
+ ln leim-ext.el ../${tempdir}/leim/leim-ext.el)
+## FIXME Can we not just use the "find -type f" method for this one?
echo "Making links to \`build-aux'"
(cd build-aux
- ln compile config.guess config.sub depcomp ../${tempdir}/build-aux
- ln install-sh missing move-if-change update-subdirs ../${tempdir}/build-aux)
+ ln compile config.guess config.sub depcomp msys-to-w32 ../${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)
echo "Making links to \`build-aux/snippet'"
(cd build-aux/snippet
ln [a-zA-Z]*.in ../${tempdir}/src
ln [a-zA-Z]*.mk ../${tempdir}/src
ln README ChangeLog 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)
(snippet_h=`(cd build-aux/snippet && ls *.h)`
cd lib
ln [a-zA-Z]*.[ch] ../${tempdir}/lib
- ln gnulib.mk Makefile.am Makefile.in ../${tempdir}/lib
+ ln gnulib.mk Makefile.am Makefile.in makefile.w32-in ../${tempdir}/lib
cd ../${tempdir}/lib
script='/[*]/d; s/\.in\.h$/.h/'
rm -f `(echo "$snippet_h"; ls *.in.h) | sed "$script"`)
(cd lib-src
ln [a-zA-Z]*.[ch] ../${tempdir}/lib-src
ln ChangeLog Makefile.in README testfile ../${tempdir}/lib-src
- ln grep-changelog rcs2log ../${tempdir}/lib-src)
+ ln grep-changelog 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
echo "Making links to \`nt'"
(cd nt
ln emacs-x86.manifest emacs-x64.manifest emacs.rc ../${tempdir}/nt
- ln emacsclient.rc emacs-src.tags ../${tempdir}/nt
+ ln config.nt emacsclient.rc emacs-src.tags ../${tempdir}/nt
ln nmake.defs gmake.defs subdirs.el [a-z]*.bat [a-z]*.[ch] ../${tempdir}/nt
- rm -f ../${tempdir}/nt/configure.bat
ln Makefile.in gnulib.mk ../${tempdir}/nt
- ln msysconfig.sh mingw-cfg.site epaths.nt ../${tempdir}/nt
- ln ChangeLog INSTALL README README.W32 ../${tempdir}/nt)
+ ln mingw-cfg.site epaths.nt INSTALL.OLD ../${tempdir}/nt
+ ln ChangeLog INSTALL README README.W32 makefile.w32-in ../${tempdir}/nt)
echo "Making links to \`nt/inc' and its subdirectories"
for f in `find nt/inc -type f -name '[a-z]*.h'`; do
ln *.[ch] *.in ../${tempdir}/lwlib
ln README ChangeLog ../${tempdir}/lwlib)
+## It is important to distribute admin/ because it contains sources
+## for generated lisp/international/uni-*.el files.
echo "Making links to \`admin' and its subdirectories"
for f in `find admin -type f`; do
case $f in
- admin/unidata/Makefile|admin/unidata/makefile.w32-in) continue ;;
+ */Makefile) [ -f $f.in ] && continue ;;
esac
ln $f $tempdir/$f
done
echo "Making links to \`doc/emacs'"
(cd doc/emacs
- ln *.texi *.in ChangeLog* ../../${tempdir}/doc/emacs)
+ ln *.texi *.in makefile.w32-in ChangeLog* ../../${tempdir}/doc/emacs)
echo "Making links to \`doc/misc'"
(cd doc/misc
- ln *.texi *.tex *.in gnus-news.el ChangeLog* ../../${tempdir}/doc/misc)
+ ln *.texi *.tex *.in makefile.w32-in gnus-news.el ChangeLog* ../../${tempdir}/doc/misc)
echo "Making links to \`doc/lispref'"
(cd doc/lispref
- ln *.texi *.in README ChangeLog* ../../${tempdir}/doc/lispref
+ ln *.texi *.in makefile.w32-in README ChangeLog* ../../${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 *.eps *.pdf ../../${tempdir}/doc/lispintro
+ ln *.texi *.in makefile.w32-in *.eps *.pdf ../../${tempdir}/doc/lispintro
ln README ChangeLog* ../../${tempdir}/doc/lispintro
cd ../../${tempdir}/doc/lispintro)
### It would be nice if they could all be symlinks to top-level copy, but
### you're not supposed to have any symlinks in distribution tar files.
echo "Making sure copying notices are all copies of \`COPYING'"
-for subdir in . etc info leim lib lib-src lisp lwlib msdos nt src; do
+for subdir in . etc leim lib lib-src lisp lwlib msdos nt src; do
rm -f ${tempdir}/${subdir}/COPYING
cp COPYING ${tempdir}/${subdir}
done