annotate lib-src/update-elc.sh @ 430:a5df635868b2 r21-2-23

Import from CVS: tag r21-2-23
author cvs
date Mon, 13 Aug 2007 11:29:08 +0200
parents 3ecd8885ac67
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 #!/bin/sh
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2 # update-elc.sh --- recompile all missing or out-of-date .elc files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 # Author: Jamie Zawinski, Ben Wing, Martin Buchholz
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 # Maintainer: Martin Buchholz
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 # Keywords: recompile byte-compile .el .elc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 # This file is part of XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 # XEmacs is free software; you can redistribute it and/or modify it
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 # under the terms of the GNU General Public License as published by
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 # the Free Software Foundation; either version 2, or (at your option)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 # any later version.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 # XEmacs is distributed in the hope that it will be useful, but
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 # WITHOUT ANY WARRANTY; without even the implied warranty of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 # General Public License for more details.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 # You should have received a copy of the GNU General Public License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 # along with XEmacs; see the file COPYING. If not, write to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 # the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 # Boston, MA 02111-1307, USA.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 ### Commentary:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 ## Recompile all .elc files that need recompilation. Requires a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 ## working version of "xemacs". Correctly handles the case where the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 ## .elc files are missing; thus you can execute "rm lisp/*/*.elc"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 ## before running this script. Run this from the parent of the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 ## "lisp" directory, or another nearby directory.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 set -e
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 # Try to find the lisp directory in several places.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 # (Sun workspaces have an "editor" directory)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 for dir in . .. ../.. editor ../editor ; do
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 if test -d $dir/lisp/. ; then cd $dir ; break ; fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 done
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 if test ! -d lisp/. ; then
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 echo "$0: Cannot find the \"lisp\" directory."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 exit 1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43 fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 if test -z "$EMACS"; then EMACS="./src/xemacs"; fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 export EMACS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 echo " (using $EMACS)"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 # fuckin' sysv, man...
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 # Nuke this function...
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 if [ "`uname -r | sed 's/[^0-9]*\([0-9]*\).*/\1/'`" -gt 4 ]; then
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 echon()
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55 /bin/echo $* '\c'
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57 else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 echon()
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60 echo -n $*
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 EMACS_DIR=`cd \`dirname $EMACS\` && pwd`;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 CANON_PWD=`pwd`
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 # Account for various system automounter configurations
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67 if test -d "/net"; then
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 if test -d "/tmp_mnt/net"; then tdir="/tmp_mnt/net"; else tdir="/tmp_mnt"; fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69 EMACS_DIR=`echo "$EMACS_DIR" | \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"`
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 CANON_PWD=`echo "$CANON_PWD" | \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"`
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74 REAL="$EMACS_DIR/`basename $EMACS`"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 echo "Recompiling in $CANON_PWD"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77 echo " with $REAL..."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 BYTECOMP="$REAL -batch -vanilla "
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 $EMACS -batch -vanilla -l $CANON_PWD/lisp/cleantree -f batch-remove-old-elc lisp
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 prune_vc="( -name '.*' -o -name SCCS -o -name RCS -o -name CVS ) -prune -o"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85 # $els is a list of all .el files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 # $elcs is a list of all .elc files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 els=/tmp/update-elc-1.$$ elcs=/tmp/update-elc-2.$$
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 rm -f $els $elcs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 trap "rm -f $els $elcs" 0 1 2 3 15
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 find lisp/. $prune_vc -name '*.el' -print | sort > $els
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91 find lisp/. $prune_vc -name '*.elc' -print | sed 's/elc$/el/' | sort > $elcs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 echon "Deleting .elc files without .el files..."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 comm -13 $els $elcs | sed -e '\!/vm.el!d' -e 's/el$/elc/' | \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96 while read file ; do echo rm "$file" ; rm "$file" ; done
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 echo done.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100 # Compute patterns to ignore when searching for files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101 ignore_dirs=""
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 ignore_pattern=''
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104 # Only use Mule XEmacs to compile Mule-specific elisp dirs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 echon "Checking for Mule support..."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106 lisp_prog='(princ (featurep (quote mule)))'
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107 mule_p="`$EMACS -batch -vanilla -eval \"$lisp_prog\"`"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 if test "$mule_p" = nil ; then
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109 echo No
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110 ignore_dirs="$ignore_dirs mule"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111 else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112 echo Yes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 # first recompile the byte-compiler, so that the other compiles take place
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 # with the latest version (assuming we're compiling the lisp dir of the emacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117 # we're running, which might not be the case, but often is.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118 #echo "Checking the byte compiler..."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119 #$BYTECOMP -f batch-byte-recompile-directory lisp/bytecomp
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121 # Prepare for byte-compiling directories with directory-specific instructions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
122 # Not necessary any more, but I want to keep the text current to cut & paste
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
123 # into the package lisp maintenance tree.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
124 #make_special_commands=''
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125 #make_special () {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
126 # dir="$1"; shift;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
127 # ignore_dirs="$ignore_dirs $dir"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
128 # make_special_commands="$make_special_commands \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
129 #echo \"Compiling in lisp/$dir\"; \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130 #(cd \"lisp/$dir\" && ${MAKE:-make} EMACS=$REAL ${1+$*}); \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 #echo \"lisp/$dir done.\";"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132 #}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134 #if test "$mule_p" != nil; then
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
135 # make_special skk all
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 #fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138 ## AUCTeX is a package now
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139 # if test "$mule_p" = nil ; then
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140 # make_special auctex some
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141 # else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142 # make_special auctex some MULE_ELC=tex-jp.elc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
143 # fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
144 #make_special cc-mode all
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
145 # EFS is now packaged
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
146 # make_special efs x20
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
147 #make_special eos -k # not strictly necessary...
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
148 ## make_special gnus some # Now this is a package.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
149 # hyperbole is now packaged
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
150 # make_special hyperbole elc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
151 # We're not ready for the following, yet.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
152 #make_special ilisp XEmacsELC=custom-load.elc elc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
153 # ilisp is now packaged
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
154 # make_special ilisp elc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
155 # oobr is now packaged
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
156 # make_special oobr HYPB_ELC='' elc
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
157 ## W3 is a package now.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
158 #make_special w3 xemacs-w3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
159
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160 for dir in $ignore_dirs ; do
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161 ignore_pattern="${ignore_pattern}/\\/$dir\\//d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
162 /\\/$dir\$/d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163 "
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
164 done
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
165
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
166 # Other special-case filenames that don't get byte-compiled
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
167 ignore_pattern="$ignore_pattern"'
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
168 \!/,!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
169 \!/paths.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
170 \!/loadup.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
171 \!/loadup-el.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
172 \!/update-elc.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
173 \!/dumped-lisp.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
174 \!/make-docfile.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
175 \!/site-start.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
176 \!/site-load.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
177 \!/site-init.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
178 \!/version.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
179 \!/very-early-lisp.el$!d
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
180 '
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
181
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
182 echo "Compiling files without .elc..."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
183 NUMTOCOMPILE=20 # compile this many files with each invocation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
184 comm -23 $els $elcs | \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
185 sed "$ignore_pattern" | \
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
186 xargs -t -n$NUMTOCOMPILE $BYTECOMP -f batch-byte-compile
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
187 echo "Compiling files without .elc... Done"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
188
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
189 #if test "$mule_p" != nil; then
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
190 # eval "$make_special_commands"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
191 #fi