#### be distributed. This means that if you add a file with an odd name,
#### you should make sure that this script will include it.
-# Copyright (C) 1995 Free Software Foundation, Inc.
+# Copyright (C) 1995, 1997 Free Software Foundation, Inc.
#
# This file is part of GNU Emacs.
#
fi
### Check for .elc files with no corresponding .el file.
-ls -1 lisp/[a-z]*.el | sed 's/\.el$/.elc/' > /tmp/el
-ls -1 lisp/[a-z]*.elc > /tmp/elc
+ls -1 {lisp,leim}/[a-z]*.el {lisp,leim}/[a-z]*/[a-z]*.el | sed 's/\.el$/.elc/' > /tmp/el
+ls -1 {lisp,leim}/[a-z]*.elc {lisp,leim}/[a-z]*/[a-z]*.elc > /tmp/elc
bogosities="`comm -13 /tmp/el /tmp/elc`"
if [ "${bogosities}" != "" ]; then
echo "The following .elc files have no corresponding .el files:"
rm -f /tmp/el /tmp/elc
### Check for .el files with no corresponding .elc file.
-(cd lisp; ls -1 [a-z]*.el) > /tmp/el
-(cd lisp; ls -1 [a-z]*.elc) | sed 's/\.elc$/.el/' > /tmp/elc
+((cd lisp; ls -1 [a-z]*.el [a-z]*/[a-z]*.el)
+ (cd leim; ls -1 [a-z]*.el [a-z]*/[a-z]*.el)) > /tmp/el
+((cd lisp; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc)
+ (cd leim; ls -1 [a-z]*.elc [a-z]*/[a-z]*.elc)) | sed 's/\.elc$/.el/' > /tmp/elc
losers="`comm -23 /tmp/el /tmp/elc`"
+bogosities=
for file in $losers; do
- if ! grep -q "dontcompilefiles:.* $file\($\| \)" lisp/Makefile; then
- bogosities="$file $bogosities"
+ file1=`echo $file | sed -e "s|.*/||"`
+ if ! grep -q "dontcompilefiles:.* $file1\($\| \)" lisp/Makefile; then
+ case $file in
+ site-init.el | site-load.el | site-start.el | default.el)
+ ;;
+ term/*)
+ ;;
+ *)
+ bogosities="$file $bogosities"
+ ;;
+ esac
fi
done
-if [ "${bogosities}" != "" ]; then
- echo "The following .elc files have no corresponding .el files:"
+if [ x"${bogosities}" != x"" ]; then
+ echo "The following .el files have no corresponding .elc files:"
echo "${bogosities}"
fi
rm -f /tmp/el /tmp/elc
### Check for .el files that would overflow the 14-char limit if compiled.
-long=`find lisp -name '[a-zA-Z0-9]??????????*.el' -print`
+long=`find lisp -name '[a-zA-Z0-9]??????????*.el' -print
+ find leim -name '[a-zA-Z0-9]??????????*.el' -print`
if [ "$long" != "" ]; then
echo "The following .el file names are too long:"
echo "$long"
(cd man; make info)
- echo "Recompiling Lisp files"
+ echo "Updating finder, custom and autoload data"
- $EMACS -batch -f batch-byte-recompile-directory lisp
+ (cd lisp; make updates EMACS=$EMACS)
- echo "Updating finder, custom and autoload data"
+ echo "Updating leim-list.el"
+
+ (cd leim; make leim-list.el EMACS=$EMACS)
- (cd lisp; make updates)
+ echo "Recompiling Lisp files"
+
+ $EMACS -batch -f batch-byte-recompile-directory lisp leim
fi
echo "Making lisp/MANIFEST"
echo "Creating subdirectories"
-for subdir in lisp site-lisp \
+for subdir in lisp site-lisp leim real-leim real-leim/CXTERM-DIC \
+ real-leim/SKK-DIC real-leim/skk real-leim/quail \
src src/m src/s src/bitmaps lib-src oldXMenu lwlib \
nt nt/inc nt/inc/sys nt/inc/arpa nt/inc/netinet \
etc etc/e lock cpp info man msdos vms; do
mkdir ${tempdir}/${subdir}
done
+echo "Initializing \`leim' subdirectory"
+cp leim-Makefile.in ${tempdir}/leim/Makefile.in
+
echo "Making links to \`lisp' and its subdirectories"
### Don't distribute TAGS, =*.el files, site-init.el, site-load.el, or default.el.
(cd lisp
## Find all subdirs of lisp dir
for file in `find . -type d -print`; do
case $file in
- . | .. | */Old | */RCS)
+ . | .. | */Old | */RCS | */=*)
;;
*)
if [ -d $file ]; then
if [ -f $file/README ]; then
ln $file/README ../${tempdir}/lisp/$file
fi
- rm -f $file/=* $file/TAGS
done )
+echo "Making links to \`leim' and its subdirectories for the LEIM distribution"
+### Don't distribute TAGS, or =*.el files.
+(cd leim
+ ln Makefile.in makefile.nt ../${tempdir}/real-leim
+ ln ChangeLog README ../${tempdir}/real-leim
+
+ ln CXTERM-DIC/*.tit ../${tempdir}/real-leim/CXTERM-DIC
+ ln SKK-DIC/README SKK-DIC/SKK-JISYO.L ../${tempdir}/real-leim/SKK-DIC
+ ln skk/*.el skk/*.elc ../${tempdir}/real-leim/skk
+ ln quail/*.el quail/*.elc ../${tempdir}/real-leim/quail
+
+ cd ../${tempdir}/real-leim
+ rm -f TAGS =* */=*)
+
+### Move the real-leim directory outside of Emacs proper.
+(cd ${tempparent}
+ mkdir ${emacsname}-leim
+ mkdir ${emacsname}-leim/${emacsname}
+ mv ${emacsname}/real-leim ${emacsname}-leim/${emacsname}/leim)
+
echo "Making links to \`src'"
### Don't distribute =*.[ch] files, or the configured versions of
### config.in, paths.in, or Makefile.in, or TAGS.
# test -f appears to succeed for a symlink
if test -L ../${tempdir}/src/$file; then
rm ../${tempdir}/src/$file
- cp $file ../${tempdir}/src
+ cp -p $file ../${tempdir}/src
chmod a-w ../${tempdir}/src/$file
fi
else
rm ../${tempdir}/src/$file
- cp $file ../${tempdir}/src
+ cp -p $file ../${tempdir}/src
chmod a-w ../${tempdir}/src/$file
fi
done
### Don't distribute = files, TAGS, DOC files, backups, autosaves, or
### tex litter.
(cd etc
- ln `ls -d * | grep -v 'RCS' | grep -v 'Old' | grep -v '^e$'` ../${tempdir}/etc
+ files=`ls -d * | grep -v 'RCS' | grep -v 'Old' | grep -v '^e$'`
+ ln $files ../${tempdir}/etc
+ ## If we ended up with a symlink, or if we did not get anything
+ ## due to a cross-device symlink, copy the file.
+ for file in $files; do
+ if test -f ../${tempdir}/etc/$file; then
+ # test -f appears to succeed for a symlink
+ if test -L ../${tempdir}/etc/$file; then
+ rm ../${tempdir}/etc/$file
+ cp $file ../${tempdir}/etc
+ chmod a-w ../${tempdir}/etc/$file
+ fi
+ else
+ rm ../${tempdir}/etc/$file
+ cp $file ../${tempdir}/etc
+ chmod a-w ../${tempdir}/etc/$file
+ fi
+ done
cd ../${tempdir}/etc
rm -f DOC* *~ \#*\# *.dvi *.log *.orig *.rej *,v =* core
rm -f TAGS)
compress* ) gzip_extension=.Z ;;
* ) gzip_extension=.gz ;;
esac
- echo "Creating tar file"
+ echo "Creating tar files"
(cd ${tempparent} ; tar cvf - ${emacsname} ) \
| ${default_gzip} \
> ${emacsname}.tar${gzip_extension}
+ (cd ${tempparent}/${emacsname}-leim ; tar cvf - ${emacsname} ) \
+ | ${default_gzip} \
+ > ${emacsname}-leim.tar${gzip_extension}
fi
if [ "${clean_up}" = yes ]; then
echo "Cleaning up the staging directory"
rm -rf ${tempparent}
else
- (cd ${tempparent}; mv ${emacsname} ..)
+ (cd ${tempparent}; mv ${emacsname} ${emacsname}-leim ..)
rm -rf ${tempparent}
fi