* Makefile.in (ELCFILES): Add ruby-mode.elc.
[bpt/emacs.git] / lisp / Makefile.in
CommitLineData
c7685c8d 1# Maintenance productions for the Lisp directory
2537fa5d
GM
2# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
3# 2008 Free Software Foundation, Inc.
b3ae7a0a
GM
4
5# This file is part of GNU Emacs.
6
eb3fa2cf 7# GNU Emacs is free software: you can redistribute it and/or modify
b3ae7a0a 8# it under the terms of the GNU General Public License as published by
eb3fa2cf
GM
9# the Free Software Foundation, either version 3 of the License, or
10# (at your option) any later version.
b3ae7a0a
GM
11
12# GNU Emacs is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15# GNU General Public License for more details.
16
17# You should have received a copy of the GNU General Public License
eb3fa2cf 18# along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
7ec641b8 19
261f3289
EZ
20SHELL = /bin/sh
21
dce6b995
GM
22lisp=@srcdir@
23VPATH=@srcdir@
0df68e9f 24srcdir=@srcdir@/..
dce6b995 25
7ec641b8
GM
26# You can specify a different executable on the make command line,
27# e.g. "make EMACS=../src/emacs ...".
28
e3384ae7 29EMACS = ../src/emacs
7ec641b8
GM
30
31# Command line flags for Emacs. This must include --multibyte,
32# otherwise some files will not compile.
33
1499d2dd 34EMACSOPT = -batch --no-site-file --multibyte
7ec641b8 35
fc5e09b3 36# Extra flags to pass to the byte compiler
0118d12c 37BYTE_COMPILE_EXTRA_FLAGS =
fc5e09b3
DN
38# For example to not display the undefined function warnings you can use this:
39# BYTE_COMPILE_EXTRA_FLAGS = --eval '(setq byte-compile-warnings (quote (not unresolved)))'
40# The example above is just for developers, it should not be used by default.
41
05012a71
GM
42lisptagsfiles1 = $(lisp)/*.el
43lisptagsfiles2 = $(lisp)/*/*.el
3975988b 44ETAGS = ../lib-src/etags
c7685c8d 45
2537fa5d 46# Automatically generated autoload files, apart from lisp/loaddefs.el.
e9906608
GM
47# Note this includes only those files that need special rules to
48# build; ie it does not need to include things created via
49# generated-autoload-file (eg calc/calc-loaddefs.el).
2537fa5d 50LOADDEFS = $(lisp)/calendar/cal-loaddefs.el \
099659f9
GM
51 $(lisp)/calendar/diary-loaddefs.el \
52 $(lisp)/calendar/hol-loaddefs.el \
53 $(lisp)/mh-e/mh-loaddefs.el
2537fa5d 54
6b61353c
KH
55# Elisp files auto-generated.
56AUTOGENEL = loaddefs.el \
2537fa5d 57 $(LOADDEFS) \
6b61353c
KH
58 cus-load.el \
59 finder-inf.el \
60 subdirs.el \
6b6a6f9e 61 calc/calc-loaddefs.el \
e9906608 62 eshell/esh-groups.el
6b61353c 63
170a9e70 64# Files to compile before others during a bootstrap. This is done to
768efd84 65# speed up the bootstrap process.
d849789b 66
dce6b995 67COMPILE_FIRST = \
768efd84
SM
68 $(lisp)/emacs-lisp/bytecomp.elc \
69 $(lisp)/emacs-lisp/byte-opt.elc \
b4945b95 70 $(lisp)/emacs-lisp/autoload.elc
d849789b 71
7ec641b8
GM
72# The actual Emacs command run in the targets below.
73
3b53a65b 74emacs = EMACSLOADPATH=$(lisp) LC_ALL=C $(EMACS) $(EMACSOPT)
7ec641b8 75
80c382e5 76# Common command to find subdirectories
7ec641b8 77
6b61353c 78setwins=subdirs=`(cd $$wd; find . -type d -print)`; \
f83a4f35 79 for file in $$subdirs; do \
6b61353c
KH
80 case $$file in */Old | */RCS | */CVS | */CVS/* | */.* | */.*/* | */=* ) ;; \
81 *) wins="$$wins $$wd/$$file" ;; \
f83a4f35 82 esac; \
80c382e5 83 done
8464af45 84
10498e1c 85# Find all subdirectories except `obsolete' and `term'.
6a444c7c 86
6b61353c 87setwins_almost=subdirs=`(cd $$wd; find . -type d -print)`; \
865e97c1 88 for file in $$subdirs; do \
6b61353c
KH
89 case $$file in */Old | */RCS | */CVS | */CVS/* | */.* | */.*/* | */=* | */obsolete | */term ) ;; \
90 *) wins="$$wins $$wd/$$file" ;; \
865e97c1
GM
91 esac; \
92 done
80c382e5 93
49f6eb95
SM
94# `compile-main' tends to be slower than `recompile' but can be parallelized
95# with "make -j" and results in more deterministic compilation warnings.
7fae72ef 96# cus-load and finder-inf are not explicitly requested by anything, so
fc46d219
SM
97# we add them here to make sure they get built.
98all: compile-main $(lisp)/cus-load.el $(lisp)/finder-inf.el
768efd84 99 @: Let us check that we byte-compiled all the files.
24f6e371 100 $(MAKE) $(MFLAGS) compile-last EMACS=$(EMACS)
49f6eb95 101
80c382e5
SM
102doit:
103
2fe51632 104# custom-deps and finder-data both used to scan _all_ the *.el files.
7fae72ef
GM
105# This could lead to problems in parallel builds if automatically
106# generated *.el files (eg loaddefs etc) were being changed at the same time.
2fe51632
GM
107# One solution was to add autoloads as a prerequisite:
108# http://lists.gnu.org/archive/html/emacs-pretest-bug/2007-01/msg00469.html
109# http://lists.gnu.org/archive/html/bug-gnu-emacs/2007-12/msg00171.html
7fae72ef 110# However, this meant that running these targets modified loaddefs.el,
2fe51632
GM
111# every time (due to time-stamping). Calling these rules from
112# bootstrap-after would modify loaddefs after src/emacs, resulting
113# in make install remaking src/emacs for no real reason:
114# http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg00311.html
7fae72ef
GM
115# Nowadays these commands don't scan automatically generated files,
116# since they will never contain any useful information
117# (see finder-no-scan-regexp and custom-dependencies-no-scan-regexp).
fc46d219
SM
118$(lisp)/cus-load.el:
119 $(MAKE) $(MFLAGS) custom-deps
120custom-deps: doit
30089f1d 121 wd=$(lisp); $(setwins_almost); \
4746aeeb 122 echo Directories: $$wins; \
b2928357 123 $(emacs) -l cus-dep --eval '(setq generated-custom-dependencies-file "$(lisp)/cus-load.el")' -f custom-make-dependencies $$wins
009368b9 124
fc46d219
SM
125$(lisp)/finder-inf.el:
126 $(MAKE) $(MFLAGS) finder-data
127finder-data: doit
30089f1d 128 wd=$(lisp); $(setwins_almost); \
4746aeeb 129 echo Directories: $$wins; \
b2928357 130 $(emacs) -l finder --eval '(setq generated-finder-keywords-file "$(lisp)/finder-inf.el")' -f finder-compile-keywords-make-dist $$wins
009368b9 131
a5cd8bed
SM
132# The chmod +w is to handle env var CVSREAD=1. Files named
133# are identified by being the value of `generated-autoload-file'.
fc46d219 134autoloads: $(LOADDEFS) doit
a5cd8bed
SM
135 chmod +w $(lisp)/ps-print.el $(lisp)/emulation/tpu-edt.el \
136 $(lisp)/emacs-lisp/cl-loaddefs.el
6a444c7c 137 wd=$(lisp); $(setwins_almost); \
4746aeeb 138 echo Directories: $$wins; \
b2928357 139 $(emacs) -l autoload --eval '(setq generated-autoload-file "$(lisp)/loaddefs.el")' -f batch-update-autoloads $$wins
f83a4f35 140
b4945b95 141# This is required by the bootstrap-emacs target in ../src/Makefile, so
fc46d219 142# we know that if we have an emacs executable, we also have a subdirs.el.
cd1b15b8 143$(lisp)/subdirs.el:
cc953d27 144 $(MAKE) $(MFLAGS) update-subdirs
98b918b6 145update-subdirs: doit
dce6b995 146 wd=$(lisp); $(setwins); \
98b918b6 147 for file in $$wins; do \
dce6b995 148 $(srcdir)/update-subdirs $$file; \
98b918b6
RS
149 done;
150
600bc46c 151updates: update-subdirs autoloads finder-data custom-deps
c48c3772 152
a9d25c79
EZ
153# This is useful after "cvs up".
154cvs-update: recompile autoloads finder-data custom-deps
c48c3772 155
fbb43902
GM
156# Update the AUTHORS file.
157
158update-authors:
ed5e0894 159 $(emacs) -l authors -f batch-update-authors $(srcdir)/etc/AUTHORS $(srcdir)
fbb43902 160
05012a71
GM
161TAGS TAGS-LISP: $(lisptagsfiles1) $(lisptagsfiles2)
162 els=`echo $(lisptagsfiles1) $(lisptagsfiles2) | sed -e "s,$(lisp)/[^ ]*loaddefs[^ ]*,," -e "s,$(lisp)/ldefs-boot[^ ]*,,"`; \
163 ${ETAGS} -o $@ $$els
7ec641b8 164
00609773
GM
165.PHONY: update-elclist
166
768efd84
SM
167## Post-bootstrap, find the list of .elc files and use sed to update
168## ELCFILES in Makefile.in.
9d7316f0
GM
169## Errors in the final sed are non-fatal, since they have no effect on
170## building Emacs. chmod +w is for CVSREAD=1.
1ea1e2d4 171## "echo" is non-portable with regards to backslashes, eg between zsh
9d7316f0 172## and bash. Hence the use of sed on line 2 below (line 1 seems to be OK).
1ea1e2d4 173## http://lists.gnu.org/archive/html/emacs-devel/2008-05/msg01535.html
00609773
GM
174update-elclist:
175 echo "/^ELCFILES/,/^$$/c\\" > temp.sed
1ea1e2d4 176 echo "ELCFILES =" | sed -e 's/$$/ \\\\\\/' >> temp.sed
768efd84 177 LC_COLLATE=C ls $(lisp)/*.elc $(lisp)/*/*.elc | sed -e "s|^$(lisp)| \$$(lisp)|" -e 's/$$/ \\\\\\/' -e '$$ s/ \\\\//' >> temp.sed
00609773 178 echo "" >> temp.sed
a8cb2f3f 179 -sed -f temp.sed $(lisp)/Makefile.in > temp-elcfiles || rm temp-elcfiles
00609773 180 rm temp.sed
9d7316f0
GM
181 @test -f temp-elcfiles || echo "Maintainer warning: failed to update Makefile.in. You can ignore this if you are not an Emacs developer."
182 if test -f temp-elcfiles; then \
183 chmod +w $(lisp)/Makefile.in; \
184 mv -f temp-elcfiles $(lisp)/Makefile.in; \
185 fi
67292de0 186
ef7f89b2
GM
187## Explicitly list the .elc files, for the sake of parallel builds.
188## http://lists.gnu.org/archive/html/bug-gnu-emacs/2008-05/msg00016.html
00609773 189## This can probably be done more elegantly, but needs to be portable.
ef7f89b2
GM
190ELCFILES = \
191 $(lisp)/abbrev.elc \
192 $(lisp)/abbrevlist.elc \
193 $(lisp)/add-log.elc \
194 $(lisp)/align.elc \
195 $(lisp)/allout.elc \
196 $(lisp)/ansi-color.elc \
197 $(lisp)/apropos.elc \
198 $(lisp)/arc-mode.elc \
199 $(lisp)/array.elc \
200 $(lisp)/autoarg.elc \
201 $(lisp)/autoinsert.elc \
202 $(lisp)/autorevert.elc \
203 $(lisp)/avoid.elc \
204 $(lisp)/battery.elc \
205 $(lisp)/bindings.elc \
206 $(lisp)/bookmark.elc \
207 $(lisp)/bs.elc \
208 $(lisp)/buff-menu.elc \
209 $(lisp)/button.elc \
210 $(lisp)/calc/calc-aent.elc \
211 $(lisp)/calc/calc-alg.elc \
212 $(lisp)/calc/calc-arith.elc \
213 $(lisp)/calc/calc-bin.elc \
214 $(lisp)/calc/calc-comb.elc \
215 $(lisp)/calc/calc-cplx.elc \
216 $(lisp)/calc/calc-embed.elc \
217 $(lisp)/calc/calc-ext.elc \
218 $(lisp)/calc/calc-fin.elc \
219 $(lisp)/calc/calc-forms.elc \
220 $(lisp)/calc/calc-frac.elc \
221 $(lisp)/calc/calc-funcs.elc \
222 $(lisp)/calc/calc-graph.elc \
223 $(lisp)/calc/calc-help.elc \
224 $(lisp)/calc/calc-incom.elc \
225 $(lisp)/calc/calc-keypd.elc \
226 $(lisp)/calc/calc-lang.elc \
227 $(lisp)/calc/calc-macs.elc \
228 $(lisp)/calc/calc-map.elc \
229 $(lisp)/calc/calc-math.elc \
230 $(lisp)/calc/calc-menu.elc \
231 $(lisp)/calc/calc-misc.elc \
232 $(lisp)/calc/calc-mode.elc \
233 $(lisp)/calc/calc-mtx.elc \
234 $(lisp)/calc/calc-nlfit.elc \
235 $(lisp)/calc/calc-poly.elc \
236 $(lisp)/calc/calc-prog.elc \
237 $(lisp)/calc/calc-rewr.elc \
238 $(lisp)/calc/calc-rules.elc \
239 $(lisp)/calc/calc-sel.elc \
240 $(lisp)/calc/calc-stat.elc \
241 $(lisp)/calc/calc-store.elc \
242 $(lisp)/calc/calc-stuff.elc \
243 $(lisp)/calc/calc-trail.elc \
244 $(lisp)/calc/calc-undo.elc \
245 $(lisp)/calc/calc-units.elc \
246 $(lisp)/calc/calc-vec.elc \
247 $(lisp)/calc/calc-yank.elc \
248 $(lisp)/calc/calc.elc \
249 $(lisp)/calc/calcalg2.elc \
250 $(lisp)/calc/calcalg3.elc \
251 $(lisp)/calc/calccomp.elc \
252 $(lisp)/calc/calcsel2.elc \
253 $(lisp)/calculator.elc \
254 $(lisp)/calendar/appt.elc \
255 $(lisp)/calendar/cal-bahai.elc \
256 $(lisp)/calendar/cal-china.elc \
257 $(lisp)/calendar/cal-coptic.elc \
258 $(lisp)/calendar/cal-dst.elc \
259 $(lisp)/calendar/cal-french.elc \
260 $(lisp)/calendar/cal-hebrew.elc \
261 $(lisp)/calendar/cal-html.elc \
262 $(lisp)/calendar/cal-islam.elc \
263 $(lisp)/calendar/cal-iso.elc \
264 $(lisp)/calendar/cal-julian.elc \
265 $(lisp)/calendar/cal-mayan.elc \
266 $(lisp)/calendar/cal-menu.elc \
267 $(lisp)/calendar/cal-move.elc \
268 $(lisp)/calendar/cal-persia.elc \
269 $(lisp)/calendar/cal-tex.elc \
270 $(lisp)/calendar/cal-x.elc \
271 $(lisp)/calendar/calendar.elc \
272 $(lisp)/calendar/diary-lib.elc \
273 $(lisp)/calendar/holidays.elc \
274 $(lisp)/calendar/icalendar.elc \
275 $(lisp)/calendar/lunar.elc \
276 $(lisp)/calendar/parse-time.elc \
277 $(lisp)/calendar/solar.elc \
278 $(lisp)/calendar/time-date.elc \
279 $(lisp)/calendar/timeclock.elc \
280 $(lisp)/calendar/todo-mode.elc \
281 $(lisp)/case-table.elc \
282 $(lisp)/cdl.elc \
283 $(lisp)/chistory.elc \
284 $(lisp)/cmuscheme.elc \
285 $(lisp)/comint.elc \
286 $(lisp)/compare-w.elc \
287 $(lisp)/complete.elc \
288 $(lisp)/completion.elc \
289 $(lisp)/composite.elc \
290 $(lisp)/cus-dep.elc \
291 $(lisp)/cus-edit.elc \
292 $(lisp)/cus-face.elc \
293 $(lisp)/cus-start.elc \
294 $(lisp)/cus-theme.elc \
295 $(lisp)/custom.elc \
296 $(lisp)/cvs-status.elc \
297 $(lisp)/dabbrev.elc \
298 $(lisp)/delim-col.elc \
299 $(lisp)/delsel.elc \
300 $(lisp)/descr-text.elc \
301 $(lisp)/desktop.elc \
302 $(lisp)/dframe.elc \
303 $(lisp)/diff-mode.elc \
304 $(lisp)/diff.elc \
305 $(lisp)/dired-aux.elc \
306 $(lisp)/dired-x.elc \
307 $(lisp)/dired.elc \
308 $(lisp)/dirtrack.elc \
309 $(lisp)/disp-table.elc \
310 $(lisp)/dnd.elc \
311 $(lisp)/doc-view.elc \
312 $(lisp)/dos-fns.elc \
313 $(lisp)/dos-vars.elc \
314 $(lisp)/dos-w32.elc \
315 $(lisp)/double.elc \
316 $(lisp)/ebuff-menu.elc \
317 $(lisp)/echistory.elc \
318 $(lisp)/ediff-diff.elc \
319 $(lisp)/ediff-help.elc \
320 $(lisp)/ediff-hook.elc \
321 $(lisp)/ediff-init.elc \
322 $(lisp)/ediff-merg.elc \
323 $(lisp)/ediff-mult.elc \
324 $(lisp)/ediff-ptch.elc \
325 $(lisp)/ediff-util.elc \
326 $(lisp)/ediff-vers.elc \
327 $(lisp)/ediff-wind.elc \
328 $(lisp)/ediff.elc \
329 $(lisp)/edmacro.elc \
330 $(lisp)/ehelp.elc \
331 $(lisp)/electric.elc \
332 $(lisp)/elide-head.elc \
333 $(lisp)/emacs-lisp/advice.elc \
334 $(lisp)/emacs-lisp/assoc.elc \
335 $(lisp)/emacs-lisp/authors.elc \
336 $(lisp)/emacs-lisp/autoload.elc \
337 $(lisp)/emacs-lisp/avl-tree.elc \
338 $(lisp)/emacs-lisp/backquote.elc \
339 $(lisp)/emacs-lisp/benchmark.elc \
340 $(lisp)/emacs-lisp/bindat.elc \
768efd84 341 $(lisp)/emacs-lisp/byte-opt.elc \
ef7f89b2 342 $(lisp)/emacs-lisp/byte-run.elc \
768efd84 343 $(lisp)/emacs-lisp/bytecomp.elc \
ef7f89b2
GM
344 $(lisp)/emacs-lisp/check-declare.elc \
345 $(lisp)/emacs-lisp/checkdoc.elc \
346 $(lisp)/emacs-lisp/cl-compat.elc \
347 $(lisp)/emacs-lisp/cl-extra.elc \
348 $(lisp)/emacs-lisp/cl-indent.elc \
349 $(lisp)/emacs-lisp/cl-macs.elc \
350 $(lisp)/emacs-lisp/cl-seq.elc \
351 $(lisp)/emacs-lisp/cl.elc \
352 $(lisp)/emacs-lisp/copyright.elc \
353 $(lisp)/emacs-lisp/crm.elc \
354 $(lisp)/emacs-lisp/cust-print.elc \
355 $(lisp)/emacs-lisp/debug.elc \
356 $(lisp)/emacs-lisp/derived.elc \
357 $(lisp)/emacs-lisp/disass.elc \
358 $(lisp)/emacs-lisp/easy-mmode.elc \
359 $(lisp)/emacs-lisp/easymenu.elc \
360 $(lisp)/emacs-lisp/edebug.elc \
361 $(lisp)/emacs-lisp/eldoc.elc \
362 $(lisp)/emacs-lisp/elint.elc \
363 $(lisp)/emacs-lisp/elp.elc \
364 $(lisp)/emacs-lisp/ewoc.elc \
365 $(lisp)/emacs-lisp/find-func.elc \
366 $(lisp)/emacs-lisp/find-gc.elc \
367 $(lisp)/emacs-lisp/float-sup.elc \
368 $(lisp)/emacs-lisp/generic.elc \
369 $(lisp)/emacs-lisp/gulp.elc \
370 $(lisp)/emacs-lisp/helper.elc \
371 $(lisp)/emacs-lisp/levents.elc \
372 $(lisp)/emacs-lisp/lisp-mnt.elc \
373 $(lisp)/emacs-lisp/lisp-mode.elc \
374 $(lisp)/emacs-lisp/lisp.elc \
375 $(lisp)/emacs-lisp/lmenu.elc \
376 $(lisp)/emacs-lisp/lucid.elc \
377 $(lisp)/emacs-lisp/macroexp.elc \
378 $(lisp)/emacs-lisp/map-ynp.elc \
379 $(lisp)/emacs-lisp/pp.elc \
380 $(lisp)/emacs-lisp/re-builder.elc \
381 $(lisp)/emacs-lisp/regexp-opt.elc \
382 $(lisp)/emacs-lisp/regi.elc \
383 $(lisp)/emacs-lisp/ring.elc \
384 $(lisp)/emacs-lisp/rx.elc \
385 $(lisp)/emacs-lisp/shadow.elc \
386 $(lisp)/emacs-lisp/sregex.elc \
387 $(lisp)/emacs-lisp/syntax.elc \
388 $(lisp)/emacs-lisp/tcover-ses.elc \
389 $(lisp)/emacs-lisp/tcover-unsafep.elc \
390 $(lisp)/emacs-lisp/testcover.elc \
391 $(lisp)/emacs-lisp/timer.elc \
392 $(lisp)/emacs-lisp/tq.elc \
393 $(lisp)/emacs-lisp/trace.elc \
394 $(lisp)/emacs-lisp/unsafep.elc \
395 $(lisp)/emacs-lisp/warnings.elc \
396 $(lisp)/emacs-lock.elc \
397 $(lisp)/emerge.elc \
398 $(lisp)/emulation/crisp.elc \
399 $(lisp)/emulation/cua-base.elc \
400 $(lisp)/emulation/cua-gmrk.elc \
401 $(lisp)/emulation/cua-rect.elc \
402 $(lisp)/emulation/edt-lk201.elc \
403 $(lisp)/emulation/edt-mapper.elc \
404 $(lisp)/emulation/edt-pc.elc \
405 $(lisp)/emulation/edt-vt100.elc \
406 $(lisp)/emulation/edt.elc \
407 $(lisp)/emulation/keypad.elc \
408 $(lisp)/emulation/pc-mode.elc \
409 $(lisp)/emulation/pc-select.elc \
410 $(lisp)/emulation/tpu-edt.elc \
411 $(lisp)/emulation/tpu-extras.elc \
412 $(lisp)/emulation/tpu-mapper.elc \
413 $(lisp)/emulation/vi.elc \
414 $(lisp)/emulation/vip.elc \
415 $(lisp)/emulation/viper-cmd.elc \
416 $(lisp)/emulation/viper-ex.elc \
417 $(lisp)/emulation/viper-init.elc \
418 $(lisp)/emulation/viper-keym.elc \
419 $(lisp)/emulation/viper-macs.elc \
420 $(lisp)/emulation/viper-mous.elc \
421 $(lisp)/emulation/viper-util.elc \
422 $(lisp)/emulation/viper.elc \
423 $(lisp)/emulation/ws-mode.elc \
424 $(lisp)/env.elc \
425 $(lisp)/epa-dired.elc \
426 $(lisp)/epa-file.elc \
427 $(lisp)/epa-hook.elc \
428 $(lisp)/epa-mail.elc \
429 $(lisp)/epa.elc \
430 $(lisp)/epg-config.elc \
431 $(lisp)/epg.elc \
432 $(lisp)/erc/erc-autoaway.elc \
433 $(lisp)/erc/erc-backend.elc \
434 $(lisp)/erc/erc-button.elc \
435 $(lisp)/erc/erc-capab.elc \
436 $(lisp)/erc/erc-compat.elc \
437 $(lisp)/erc/erc-dcc.elc \
438 $(lisp)/erc/erc-ezbounce.elc \
439 $(lisp)/erc/erc-fill.elc \
440 $(lisp)/erc/erc-goodies.elc \
441 $(lisp)/erc/erc-hecomplete.elc \
442 $(lisp)/erc/erc-ibuffer.elc \
443 $(lisp)/erc/erc-identd.elc \
444 $(lisp)/erc/erc-imenu.elc \
445 $(lisp)/erc/erc-join.elc \
446 $(lisp)/erc/erc-lang.elc \
447 $(lisp)/erc/erc-list.elc \
448 $(lisp)/erc/erc-log.elc \
449 $(lisp)/erc/erc-match.elc \
450 $(lisp)/erc/erc-menu.elc \
451 $(lisp)/erc/erc-netsplit.elc \
452 $(lisp)/erc/erc-networks.elc \
453 $(lisp)/erc/erc-notify.elc \
454 $(lisp)/erc/erc-page.elc \
455 $(lisp)/erc/erc-pcomplete.elc \
456 $(lisp)/erc/erc-replace.elc \
457 $(lisp)/erc/erc-ring.elc \
458 $(lisp)/erc/erc-services.elc \
459 $(lisp)/erc/erc-sound.elc \
460 $(lisp)/erc/erc-speedbar.elc \
461 $(lisp)/erc/erc-spelling.elc \
462 $(lisp)/erc/erc-stamp.elc \
463 $(lisp)/erc/erc-track.elc \
464 $(lisp)/erc/erc-truncate.elc \
465 $(lisp)/erc/erc-xdcc.elc \
466 $(lisp)/erc/erc.elc \
467 $(lisp)/eshell/em-alias.elc \
468 $(lisp)/eshell/em-banner.elc \
469 $(lisp)/eshell/em-basic.elc \
470 $(lisp)/eshell/em-cmpl.elc \
471 $(lisp)/eshell/em-dirs.elc \
472 $(lisp)/eshell/em-glob.elc \
473 $(lisp)/eshell/em-hist.elc \
474 $(lisp)/eshell/em-ls.elc \
475 $(lisp)/eshell/em-pred.elc \
476 $(lisp)/eshell/em-prompt.elc \
477 $(lisp)/eshell/em-rebind.elc \
478 $(lisp)/eshell/em-script.elc \
479 $(lisp)/eshell/em-smart.elc \
480 $(lisp)/eshell/em-term.elc \
481 $(lisp)/eshell/em-unix.elc \
482 $(lisp)/eshell/em-xtra.elc \
483 $(lisp)/eshell/esh-arg.elc \
484 $(lisp)/eshell/esh-cmd.elc \
485 $(lisp)/eshell/esh-ext.elc \
486 $(lisp)/eshell/esh-io.elc \
487 $(lisp)/eshell/esh-mode.elc \
488 $(lisp)/eshell/esh-module.elc \
489 $(lisp)/eshell/esh-opt.elc \
490 $(lisp)/eshell/esh-proc.elc \
491 $(lisp)/eshell/esh-test.elc \
492 $(lisp)/eshell/esh-util.elc \
493 $(lisp)/eshell/esh-var.elc \
494 $(lisp)/eshell/eshell.elc \
495 $(lisp)/expand.elc \
496 $(lisp)/ezimage.elc \
9d3d42fb 497 $(lisp)/face-remap.elc \
ef7f89b2
GM
498 $(lisp)/facemenu.elc \
499 $(lisp)/faces.elc \
500 $(lisp)/ffap.elc \
501 $(lisp)/filecache.elc \
502 $(lisp)/files.elc \
503 $(lisp)/filesets.elc \
504 $(lisp)/find-cmd.elc \
505 $(lisp)/find-dired.elc \
506 $(lisp)/find-file.elc \
507 $(lisp)/find-lisp.elc \
508 $(lisp)/finder.elc \
509 $(lisp)/flow-ctrl.elc \
510 $(lisp)/foldout.elc \
511 $(lisp)/follow.elc \
512 $(lisp)/font-core.elc \
513 $(lisp)/font-lock.elc \
514 $(lisp)/format-spec.elc \
515 $(lisp)/format.elc \
516 $(lisp)/forms.elc \
517 $(lisp)/frame.elc \
518 $(lisp)/fringe.elc \
519 $(lisp)/generic-x.elc \
520 $(lisp)/gnus/auth-source.elc \
521 $(lisp)/gnus/canlock.elc \
522 $(lisp)/gnus/compface.elc \
523 $(lisp)/gnus/deuglify.elc \
524 $(lisp)/gnus/earcon.elc \
525 $(lisp)/gnus/ecomplete.elc \
526 $(lisp)/gnus/flow-fill.elc \
527 $(lisp)/gnus/gmm-utils.elc \
528 $(lisp)/gnus/gnus-agent.elc \
529 $(lisp)/gnus/gnus-art.elc \
530 $(lisp)/gnus/gnus-async.elc \
531 $(lisp)/gnus/gnus-audio.elc \
532 $(lisp)/gnus/gnus-bcklg.elc \
533 $(lisp)/gnus/gnus-bookmark.elc \
534 $(lisp)/gnus/gnus-cache.elc \
535 $(lisp)/gnus/gnus-cite.elc \
536 $(lisp)/gnus/gnus-cus.elc \
537 $(lisp)/gnus/gnus-delay.elc \
538 $(lisp)/gnus/gnus-demon.elc \
539 $(lisp)/gnus/gnus-diary.elc \
540 $(lisp)/gnus/gnus-dired.elc \
541 $(lisp)/gnus/gnus-draft.elc \
542 $(lisp)/gnus/gnus-dup.elc \
543 $(lisp)/gnus/gnus-eform.elc \
544 $(lisp)/gnus/gnus-ems.elc \
545 $(lisp)/gnus/gnus-fun.elc \
546 $(lisp)/gnus/gnus-group.elc \
547 $(lisp)/gnus/gnus-int.elc \
548 $(lisp)/gnus/gnus-kill.elc \
549 $(lisp)/gnus/gnus-logic.elc \
550 $(lisp)/gnus/gnus-mh.elc \
551 $(lisp)/gnus/gnus-ml.elc \
552 $(lisp)/gnus/gnus-mlspl.elc \
553 $(lisp)/gnus/gnus-move.elc \
554 $(lisp)/gnus/gnus-msg.elc \
555 $(lisp)/gnus/gnus-nocem.elc \
556 $(lisp)/gnus/gnus-picon.elc \
557 $(lisp)/gnus/gnus-range.elc \
558 $(lisp)/gnus/gnus-registry.elc \
559 $(lisp)/gnus/gnus-salt.elc \
560 $(lisp)/gnus/gnus-score.elc \
561 $(lisp)/gnus/gnus-setup.elc \
562 $(lisp)/gnus/gnus-sieve.elc \
563 $(lisp)/gnus/gnus-soup.elc \
564 $(lisp)/gnus/gnus-spec.elc \
565 $(lisp)/gnus/gnus-srvr.elc \
566 $(lisp)/gnus/gnus-start.elc \
567 $(lisp)/gnus/gnus-sum.elc \
568 $(lisp)/gnus/gnus-topic.elc \
569 $(lisp)/gnus/gnus-undo.elc \
570 $(lisp)/gnus/gnus-util.elc \
571 $(lisp)/gnus/gnus-uu.elc \
572 $(lisp)/gnus/gnus-vm.elc \
573 $(lisp)/gnus/gnus-win.elc \
574 $(lisp)/gnus/gnus.elc \
575 $(lisp)/gnus/html2text.elc \
576 $(lisp)/gnus/ietf-drums.elc \
577 $(lisp)/gnus/legacy-gnus-agent.elc \
578 $(lisp)/gnus/mail-parse.elc \
579 $(lisp)/gnus/mail-prsvr.elc \
580 $(lisp)/gnus/mail-source.elc \
581 $(lisp)/gnus/mailcap.elc \
582 $(lisp)/gnus/message.elc \
583 $(lisp)/gnus/messcompat.elc \
584 $(lisp)/gnus/mm-bodies.elc \
585 $(lisp)/gnus/mm-decode.elc \
586 $(lisp)/gnus/mm-encode.elc \
587 $(lisp)/gnus/mm-extern.elc \
588 $(lisp)/gnus/mm-partial.elc \
589 $(lisp)/gnus/mm-url.elc \
590 $(lisp)/gnus/mm-util.elc \
591 $(lisp)/gnus/mm-uu.elc \
592 $(lisp)/gnus/mm-view.elc \
593 $(lisp)/gnus/mml-sec.elc \
594 $(lisp)/gnus/mml-smime.elc \
595 $(lisp)/gnus/mml.elc \
596 $(lisp)/gnus/mml1991.elc \
597 $(lisp)/gnus/mml2015.elc \
598 $(lisp)/gnus/nnagent.elc \
599 $(lisp)/gnus/nnbabyl.elc \
600 $(lisp)/gnus/nndb.elc \
601 $(lisp)/gnus/nndiary.elc \
602 $(lisp)/gnus/nndir.elc \
603 $(lisp)/gnus/nndoc.elc \
604 $(lisp)/gnus/nndraft.elc \
605 $(lisp)/gnus/nneething.elc \
606 $(lisp)/gnus/nnfolder.elc \
607 $(lisp)/gnus/nngateway.elc \
608 $(lisp)/gnus/nnheader.elc \
609 $(lisp)/gnus/nnimap.elc \
e6d2d263 610 $(lisp)/gnus/nnir.elc \
ef7f89b2
GM
611 $(lisp)/gnus/nnkiboze.elc \
612 $(lisp)/gnus/nnlistserv.elc \
613 $(lisp)/gnus/nnmail.elc \
614 $(lisp)/gnus/nnmaildir.elc \
615 $(lisp)/gnus/nnmairix.elc \
616 $(lisp)/gnus/nnmbox.elc \
617 $(lisp)/gnus/nnmh.elc \
618 $(lisp)/gnus/nnml.elc \
619 $(lisp)/gnus/nnnil.elc \
620 $(lisp)/gnus/nnoo.elc \
621 $(lisp)/gnus/nnrss.elc \
622 $(lisp)/gnus/nnslashdot.elc \
623 $(lisp)/gnus/nnsoup.elc \
624 $(lisp)/gnus/nnspool.elc \
625 $(lisp)/gnus/nntp.elc \
626 $(lisp)/gnus/nnultimate.elc \
627 $(lisp)/gnus/nnvirtual.elc \
628 $(lisp)/gnus/nnwarchive.elc \
629 $(lisp)/gnus/nnweb.elc \
630 $(lisp)/gnus/nnwfm.elc \
631 $(lisp)/gnus/pop3.elc \
632 $(lisp)/gnus/qp.elc \
633 $(lisp)/gnus/rfc1843.elc \
634 $(lisp)/gnus/rfc2045.elc \
635 $(lisp)/gnus/rfc2047.elc \
636 $(lisp)/gnus/rfc2104.elc \
637 $(lisp)/gnus/rfc2231.elc \
638 $(lisp)/gnus/score-mode.elc \
639 $(lisp)/gnus/sieve-manage.elc \
640 $(lisp)/gnus/sieve-mode.elc \
641 $(lisp)/gnus/sieve.elc \
642 $(lisp)/gnus/smiley.elc \
643 $(lisp)/gnus/smime.elc \
644 $(lisp)/gnus/spam-report.elc \
645 $(lisp)/gnus/spam-stat.elc \
646 $(lisp)/gnus/spam-wash.elc \
647 $(lisp)/gnus/spam.elc \
648 $(lisp)/gnus/starttls.elc \
649 $(lisp)/gnus/utf7.elc \
650 $(lisp)/gnus/webmail.elc \
651 $(lisp)/gnus/yenc.elc \
652 $(lisp)/gs.elc \
653 $(lisp)/help-at-pt.elc \
654 $(lisp)/help-fns.elc \
655 $(lisp)/help-macro.elc \
656 $(lisp)/help-mode.elc \
657 $(lisp)/help.elc \
658 $(lisp)/hex-util.elc \
659 $(lisp)/hexl.elc \
660 $(lisp)/hi-lock.elc \
661 $(lisp)/hilit-chg.elc \
662 $(lisp)/hippie-exp.elc \
663 $(lisp)/hl-line.elc \
664 $(lisp)/ibuf-ext.elc \
665 $(lisp)/ibuf-macs.elc \
666 $(lisp)/ibuffer.elc \
667 $(lisp)/icomplete.elc \
668 $(lisp)/ido.elc \
669 $(lisp)/ielm.elc \
670 $(lisp)/iimage.elc \
671 $(lisp)/image-dired.elc \
672 $(lisp)/image-file.elc \
673 $(lisp)/image-mode.elc \
674 $(lisp)/image.elc \
675 $(lisp)/imenu.elc \
676 $(lisp)/indent.elc \
677 $(lisp)/info-look.elc \
678 $(lisp)/info-xref.elc \
679 $(lisp)/info.elc \
680 $(lisp)/informat.elc \
681 $(lisp)/international/ccl.elc \
682 $(lisp)/international/characters.elc \
ef7f89b2
GM
683 $(lisp)/international/encoded-kb.elc \
684 $(lisp)/international/fontset.elc \
685 $(lisp)/international/isearch-x.elc \
686 $(lisp)/international/iso-ascii.elc \
687 $(lisp)/international/iso-cvt.elc \
688 $(lisp)/international/iso-transl.elc \
689 $(lisp)/international/ja-dic-cnv.elc \
690 $(lisp)/international/ja-dic-utl.elc \
691 $(lisp)/international/kinsoku.elc \
692 $(lisp)/international/kkc.elc \
693 $(lisp)/international/latexenc.elc \
694 $(lisp)/international/latin1-disp.elc \
695 $(lisp)/international/mule-cmds.elc \
696 $(lisp)/international/mule-diag.elc \
697 $(lisp)/international/mule-util.elc \
698 $(lisp)/international/mule.elc \
699 $(lisp)/international/ogonek.elc \
700 $(lisp)/international/quail.elc \
701 $(lisp)/international/robin.elc \
702 $(lisp)/international/titdic-cnv.elc \
703 $(lisp)/international/utf-7.elc \
ef7f89b2
GM
704 $(lisp)/isearch.elc \
705 $(lisp)/isearchb.elc \
706 $(lisp)/iswitchb.elc \
707 $(lisp)/jit-lock.elc \
708 $(lisp)/jka-cmpr-hook.elc \
709 $(lisp)/jka-compr.elc \
710 $(lisp)/json.elc \
711 $(lisp)/kermit.elc \
712 $(lisp)/kmacro.elc \
713 $(lisp)/language/china-util.elc \
714 $(lisp)/language/chinese.elc \
715 $(lisp)/language/cyril-util.elc \
716 $(lisp)/language/cyrillic.elc \
717 $(lisp)/language/ethio-util.elc \
718 $(lisp)/language/ethiopic.elc \
719 $(lisp)/language/european.elc \
f641e17b 720 $(lisp)/language/hanja-util.elc \
ef7f89b2
GM
721 $(lisp)/language/ind-util.elc \
722 $(lisp)/language/indian.elc \
723 $(lisp)/language/japan-util.elc \
724 $(lisp)/language/korea-util.elc \
725 $(lisp)/language/lao-util.elc \
726 $(lisp)/language/thai-util.elc \
727 $(lisp)/language/thai-word.elc \
728 $(lisp)/language/tibet-util.elc \
729 $(lisp)/language/tibetan.elc \
730 $(lisp)/language/tv-util.elc \
731 $(lisp)/language/viet-util.elc \
732 $(lisp)/language/vietnamese.elc \
733 $(lisp)/ledit.elc \
734 $(lisp)/linum.elc \
735 $(lisp)/loadhist.elc \
736 $(lisp)/locate.elc \
737 $(lisp)/log-edit.elc \
738 $(lisp)/log-view.elc \
739 $(lisp)/longlines.elc \
740 $(lisp)/lpr.elc \
741 $(lisp)/ls-lisp.elc \
742 $(lisp)/macros.elc \
743 $(lisp)/mail/binhex.elc \
744 $(lisp)/mail/emacsbug.elc \
745 $(lisp)/mail/feedmail.elc \
746 $(lisp)/mail/footnote.elc \
747 $(lisp)/mail/hashcash.elc \
748 $(lisp)/mail/mail-extr.elc \
749 $(lisp)/mail/mail-hist.elc \
750 $(lisp)/mail/mail-utils.elc \
751 $(lisp)/mail/mailabbrev.elc \
752 $(lisp)/mail/mailalias.elc \
753 $(lisp)/mail/mailclient.elc \
754 $(lisp)/mail/mailheader.elc \
755 $(lisp)/mail/mailpost.elc \
756 $(lisp)/mail/metamail.elc \
757 $(lisp)/mail/mspools.elc \
d61ac835 758 $(lisp)/mail/pmail.elc \
d61ac835
GM
759 $(lisp)/mail/pmailedit.elc \
760 $(lisp)/mail/pmailhdr.elc \
761 $(lisp)/mail/pmailkwd.elc \
762 $(lisp)/mail/pmailmm.elc \
763 $(lisp)/mail/pmailmsc.elc \
764 $(lisp)/mail/pmailout.elc \
765 $(lisp)/mail/pmailsort.elc \
766 $(lisp)/mail/pmailsum.elc \
ef7f89b2
GM
767 $(lisp)/mail/reporter.elc \
768 $(lisp)/mail/rfc2368.elc \
769 $(lisp)/mail/rfc822.elc \
770 $(lisp)/mail/rmail-spam-filter.elc \
771 $(lisp)/mail/rmail.elc \
772 $(lisp)/mail/rmailedit.elc \
773 $(lisp)/mail/rmailkwd.elc \
774 $(lisp)/mail/rmailmsc.elc \
775 $(lisp)/mail/rmailout.elc \
776 $(lisp)/mail/rmailsort.elc \
777 $(lisp)/mail/rmailsum.elc \
778 $(lisp)/mail/sendmail.elc \
779 $(lisp)/mail/smtpmail.elc \
780 $(lisp)/mail/supercite.elc \
781 $(lisp)/mail/uce.elc \
782 $(lisp)/mail/undigest.elc \
783 $(lisp)/mail/unrmail.elc \
784 $(lisp)/mail/uudecode.elc \
785 $(lisp)/makesum.elc \
786 $(lisp)/man.elc \
787 $(lisp)/master.elc \
788 $(lisp)/mb-depth.elc \
789 $(lisp)/md4.elc \
790 $(lisp)/menu-bar.elc \
791 $(lisp)/mh-e/mh-alias.elc \
792 $(lisp)/mh-e/mh-buffers.elc \
793 $(lisp)/mh-e/mh-comp.elc \
794 $(lisp)/mh-e/mh-e.elc \
795 $(lisp)/mh-e/mh-folder.elc \
796 $(lisp)/mh-e/mh-funcs.elc \
797 $(lisp)/mh-e/mh-identity.elc \
798 $(lisp)/mh-e/mh-inc.elc \
799 $(lisp)/mh-e/mh-junk.elc \
800 $(lisp)/mh-e/mh-letter.elc \
801 $(lisp)/mh-e/mh-limit.elc \
802 $(lisp)/mh-e/mh-mime.elc \
803 $(lisp)/mh-e/mh-print.elc \
804 $(lisp)/mh-e/mh-scan.elc \
805 $(lisp)/mh-e/mh-search.elc \
806 $(lisp)/mh-e/mh-seq.elc \
807 $(lisp)/mh-e/mh-show.elc \
808 $(lisp)/mh-e/mh-speed.elc \
809 $(lisp)/mh-e/mh-thread.elc \
810 $(lisp)/mh-e/mh-tool-bar.elc \
811 $(lisp)/mh-e/mh-utils.elc \
812 $(lisp)/mh-e/mh-xface.elc \
813 $(lisp)/midnight.elc \
814 $(lisp)/minibuf-eldef.elc \
815 $(lisp)/minibuffer.elc \
816 $(lisp)/misc.elc \
29d2a698 817 $(lisp)/misearch.elc \
ef7f89b2
GM
818 $(lisp)/mouse-copy.elc \
819 $(lisp)/mouse-drag.elc \
820 $(lisp)/mouse-sel.elc \
821 $(lisp)/mouse.elc \
822 $(lisp)/msb.elc \
823 $(lisp)/mwheel.elc \
824 $(lisp)/net/ange-ftp.elc \
825 $(lisp)/net/browse-url.elc \
826 $(lisp)/net/dbus.elc \
827 $(lisp)/net/dig.elc \
828 $(lisp)/net/dns.elc \
829 $(lisp)/net/eudc-bob.elc \
830 $(lisp)/net/eudc-export.elc \
831 $(lisp)/net/eudc-hotlist.elc \
832 $(lisp)/net/eudc-vars.elc \
833 $(lisp)/net/eudc.elc \
834 $(lisp)/net/eudcb-bbdb.elc \
835 $(lisp)/net/eudcb-ldap.elc \
836 $(lisp)/net/eudcb-mab.elc \
837 $(lisp)/net/eudcb-ph.elc \
838 $(lisp)/net/goto-addr.elc \
839 $(lisp)/net/hmac-def.elc \
840 $(lisp)/net/hmac-md5.elc \
841 $(lisp)/net/imap.elc \
842 $(lisp)/net/ldap.elc \
372b103a 843 $(lisp)/net/mairix.elc \
ef7f89b2
GM
844 $(lisp)/net/net-utils.elc \
845 $(lisp)/net/netrc.elc \
f7a4b082
GM
846 $(lisp)/net/newst-backend.elc \
847 $(lisp)/net/newst-plainview.elc \
848 $(lisp)/net/newst-reader.elc \
849 $(lisp)/net/newst-ticker.elc \
850 $(lisp)/net/newst-treeview.elc \
ef7f89b2
GM
851 $(lisp)/net/newsticker.elc \
852 $(lisp)/net/ntlm.elc \
853 $(lisp)/net/quickurl.elc \
854 $(lisp)/net/rcirc.elc \
855 $(lisp)/net/rcompile.elc \
856 $(lisp)/net/rlogin.elc \
857 $(lisp)/net/sasl-cram.elc \
858 $(lisp)/net/sasl-digest.elc \
859 $(lisp)/net/sasl-ntlm.elc \
860 $(lisp)/net/sasl.elc \
861 $(lisp)/net/snmp-mode.elc \
862 $(lisp)/net/socks.elc \
863 $(lisp)/net/telnet.elc \
864 $(lisp)/net/tls.elc \
865 $(lisp)/net/tramp-cache.elc \
866 $(lisp)/net/tramp-cmds.elc \
867 $(lisp)/net/tramp-compat.elc \
868 $(lisp)/net/tramp-fish.elc \
869 $(lisp)/net/tramp-ftp.elc \
870 $(lisp)/net/tramp-gw.elc \
871 $(lisp)/net/tramp-smb.elc \
872 $(lisp)/net/tramp-uu.elc \
873 $(lisp)/net/tramp.elc \
874 $(lisp)/net/trampver.elc \
875 $(lisp)/net/webjump.elc \
0118d12c 876 $(lisp)/net/xesam.elc \
ef7f89b2
GM
877 $(lisp)/net/zeroconf.elc \
878 $(lisp)/newcomment.elc \
879 $(lisp)/novice.elc \
880 $(lisp)/nxml/nxml-enc.elc \
881 $(lisp)/nxml/nxml-glyph.elc \
882 $(lisp)/nxml/nxml-maint.elc \
883 $(lisp)/nxml/nxml-mode.elc \
884 $(lisp)/nxml/nxml-ns.elc \
885 $(lisp)/nxml/nxml-outln.elc \
886 $(lisp)/nxml/nxml-parse.elc \
887 $(lisp)/nxml/nxml-rap.elc \
888 $(lisp)/nxml/nxml-uchnm.elc \
889 $(lisp)/nxml/nxml-util.elc \
890 $(lisp)/nxml/rng-cmpct.elc \
891 $(lisp)/nxml/rng-dt.elc \
892 $(lisp)/nxml/rng-loc.elc \
893 $(lisp)/nxml/rng-maint.elc \
894 $(lisp)/nxml/rng-match.elc \
895 $(lisp)/nxml/rng-nxml.elc \
896 $(lisp)/nxml/rng-parse.elc \
897 $(lisp)/nxml/rng-pttrn.elc \
898 $(lisp)/nxml/rng-uri.elc \
899 $(lisp)/nxml/rng-util.elc \
900 $(lisp)/nxml/rng-valid.elc \
901 $(lisp)/nxml/rng-xsd.elc \
902 $(lisp)/nxml/xmltok.elc \
903 $(lisp)/nxml/xsd-regexp.elc \
ef7f89b2 904 $(lisp)/obsolete/awk-mode.elc \
ef7f89b2 905 $(lisp)/obsolete/fast-lock.elc \
ef7f89b2
GM
906 $(lisp)/obsolete/iso-acc.elc \
907 $(lisp)/obsolete/iso-insert.elc \
908 $(lisp)/obsolete/iso-swed.elc \
909 $(lisp)/obsolete/lazy-lock.elc \
ef7f89b2 910 $(lisp)/obsolete/old-whitespace.elc \
ef7f89b2 911 $(lisp)/obsolete/options.elc \
69726ac3 912 $(lisp)/obsolete/resume.elc \
ef7f89b2
GM
913 $(lisp)/obsolete/rnews.elc \
914 $(lisp)/obsolete/rnewspost.elc \
ef7f89b2
GM
915 $(lisp)/obsolete/sc.elc \
916 $(lisp)/obsolete/scribe.elc \
917 $(lisp)/obsolete/swedish.elc \
fb2facde 918 $(lisp)/obsolete/vc-mcvs.elc \
ef7f89b2
GM
919 $(lisp)/obsolete/x-menu.elc \
920 $(lisp)/org/org-agenda.elc \
921 $(lisp)/org/org-archive.elc \
f6c2397a 922 $(lisp)/org/org-attach.elc \
ef7f89b2
GM
923 $(lisp)/org/org-bbdb.elc \
924 $(lisp)/org/org-bibtex.elc \
925 $(lisp)/org/org-clock.elc \
926 $(lisp)/org/org-colview.elc \
927 $(lisp)/org/org-compat.elc \
928 $(lisp)/org/org-exp.elc \
929 $(lisp)/org/org-export-latex.elc \
930 $(lisp)/org/org-faces.elc \
931 $(lisp)/org/org-gnus.elc \
b69895cd 932 $(lisp)/org/org-id.elc \
ef7f89b2 933 $(lisp)/org/org-info.elc \
a8191fb3 934 $(lisp)/org/org-install.elc \
ef7f89b2
GM
935 $(lisp)/org/org-irc.elc \
936 $(lisp)/org/org-jsinfo.elc \
f6c2397a 937 $(lisp)/org/org-list.elc \
ef7f89b2
GM
938 $(lisp)/org/org-mac-message.elc \
939 $(lisp)/org/org-macs.elc \
940 $(lisp)/org/org-mew.elc \
941 $(lisp)/org/org-mhe.elc \
942 $(lisp)/org/org-mouse.elc \
f6c2397a 943 $(lisp)/org/org-plot.elc \
ef7f89b2
GM
944 $(lisp)/org/org-publish.elc \
945 $(lisp)/org/org-remember.elc \
946 $(lisp)/org/org-rmail.elc \
947 $(lisp)/org/org-table.elc \
5c928144 948 $(lisp)/org/org-timer.elc \
ef7f89b2 949 $(lisp)/org/org-vm.elc \
5c928144 950 $(lisp)/org/org-w3m.elc \
ef7f89b2
GM
951 $(lisp)/org/org-wl.elc \
952 $(lisp)/org/org.elc \
953 $(lisp)/outline.elc \
954 $(lisp)/paren.elc \
955 $(lisp)/password-cache.elc \
956 $(lisp)/pcmpl-cvs.elc \
957 $(lisp)/pcmpl-gnu.elc \
958 $(lisp)/pcmpl-linux.elc \
959 $(lisp)/pcmpl-rpm.elc \
960 $(lisp)/pcmpl-unix.elc \
961 $(lisp)/pcomplete.elc \
962 $(lisp)/pcvs-defs.elc \
963 $(lisp)/pcvs-info.elc \
964 $(lisp)/pcvs-parse.elc \
965 $(lisp)/pcvs-util.elc \
966 $(lisp)/pcvs.elc \
967 $(lisp)/pgg-def.elc \
968 $(lisp)/pgg-gpg.elc \
969 $(lisp)/pgg-parse.elc \
970 $(lisp)/pgg-pgp.elc \
971 $(lisp)/pgg-pgp5.elc \
972 $(lisp)/pgg.elc \
973 $(lisp)/play/5x5.elc \
974 $(lisp)/play/animate.elc \
975 $(lisp)/play/blackbox.elc \
976 $(lisp)/play/bubbles.elc \
977 $(lisp)/play/cookie1.elc \
978 $(lisp)/play/decipher.elc \
979 $(lisp)/play/dissociate.elc \
980 $(lisp)/play/doctor.elc \
981 $(lisp)/play/dunnet.elc \
982 $(lisp)/play/fortune.elc \
983 $(lisp)/play/gamegrid.elc \
984 $(lisp)/play/gametree.elc \
985 $(lisp)/play/gomoku.elc \
986 $(lisp)/play/handwrite.elc \
987 $(lisp)/play/hanoi.elc \
988 $(lisp)/play/landmark.elc \
989 $(lisp)/play/life.elc \
990 $(lisp)/play/meese.elc \
991 $(lisp)/play/morse.elc \
992 $(lisp)/play/mpuz.elc \
993 $(lisp)/play/pong.elc \
994 $(lisp)/play/snake.elc \
995 $(lisp)/play/solitaire.elc \
996 $(lisp)/play/spook.elc \
997 $(lisp)/play/studly.elc \
998 $(lisp)/play/tetris.elc \
999 $(lisp)/play/yow.elc \
1000 $(lisp)/play/zone.elc \
1001 $(lisp)/printing.elc \
1002 $(lisp)/proced.elc \
1003 $(lisp)/progmodes/ada-mode.elc \
1004 $(lisp)/progmodes/ada-prj.elc \
1005 $(lisp)/progmodes/ada-stmt.elc \
1006 $(lisp)/progmodes/ada-xref.elc \
1007 $(lisp)/progmodes/antlr-mode.elc \
1008 $(lisp)/progmodes/asm-mode.elc \
1009 $(lisp)/progmodes/autoconf.elc \
1010 $(lisp)/progmodes/bug-reference.elc \
1011 $(lisp)/progmodes/cap-words.elc \
1012 $(lisp)/progmodes/cc-align.elc \
1013 $(lisp)/progmodes/cc-awk.elc \
1014 $(lisp)/progmodes/cc-bytecomp.elc \
1015 $(lisp)/progmodes/cc-cmds.elc \
1016 $(lisp)/progmodes/cc-compat.elc \
1017 $(lisp)/progmodes/cc-defs.elc \
1018 $(lisp)/progmodes/cc-engine.elc \
1019 $(lisp)/progmodes/cc-fonts.elc \
1020 $(lisp)/progmodes/cc-langs.elc \
1021 $(lisp)/progmodes/cc-menus.elc \
768efd84 1022 $(lisp)/progmodes/cc-mode.elc \
ef7f89b2
GM
1023 $(lisp)/progmodes/cc-styles.elc \
1024 $(lisp)/progmodes/cc-subword.elc \
768efd84 1025 $(lisp)/progmodes/cc-vars.elc \
ef7f89b2
GM
1026 $(lisp)/progmodes/cfengine.elc \
1027 $(lisp)/progmodes/cmacexp.elc \
1028 $(lisp)/progmodes/compile.elc \
1029 $(lisp)/progmodes/cperl-mode.elc \
1030 $(lisp)/progmodes/cpp.elc \
1031 $(lisp)/progmodes/cwarn.elc \
1032 $(lisp)/progmodes/dcl-mode.elc \
1033 $(lisp)/progmodes/delphi.elc \
1034 $(lisp)/progmodes/ebnf-abn.elc \
1035 $(lisp)/progmodes/ebnf-bnf.elc \
1036 $(lisp)/progmodes/ebnf-dtd.elc \
1037 $(lisp)/progmodes/ebnf-ebx.elc \
1038 $(lisp)/progmodes/ebnf-iso.elc \
1039 $(lisp)/progmodes/ebnf-otz.elc \
1040 $(lisp)/progmodes/ebnf-yac.elc \
1041 $(lisp)/progmodes/ebnf2ps.elc \
1042 $(lisp)/progmodes/ebrowse.elc \
1043 $(lisp)/progmodes/etags.elc \
1044 $(lisp)/progmodes/executable.elc \
1045 $(lisp)/progmodes/f90.elc \
1046 $(lisp)/progmodes/flymake.elc \
1047 $(lisp)/progmodes/fortran.elc \
1048 $(lisp)/progmodes/gdb-ui.elc \
1049 $(lisp)/progmodes/glasses.elc \
1050 $(lisp)/progmodes/grep.elc \
1051 $(lisp)/progmodes/gud.elc \
1052 $(lisp)/progmodes/hideif.elc \
1053 $(lisp)/progmodes/hideshow.elc \
1054 $(lisp)/progmodes/icon.elc \
1055 $(lisp)/progmodes/idlw-complete-structtag.elc \
1056 $(lisp)/progmodes/idlw-help.elc \
1057 $(lisp)/progmodes/idlw-shell.elc \
1058 $(lisp)/progmodes/idlw-toolbar.elc \
1059 $(lisp)/progmodes/idlwave.elc \
1060 $(lisp)/progmodes/inf-lisp.elc \
1061 $(lisp)/progmodes/ld-script.elc \
1062 $(lisp)/progmodes/m4-mode.elc \
1063 $(lisp)/progmodes/make-mode.elc \
1064 $(lisp)/progmodes/mantemp.elc \
1065 $(lisp)/progmodes/meta-mode.elc \
1066 $(lisp)/progmodes/mixal-mode.elc \
1067 $(lisp)/progmodes/modula2.elc \
1068 $(lisp)/progmodes/octave-inf.elc \
1069 $(lisp)/progmodes/octave-mod.elc \
1070 $(lisp)/progmodes/pascal.elc \
1071 $(lisp)/progmodes/perl-mode.elc \
1072 $(lisp)/progmodes/prolog.elc \
1073 $(lisp)/progmodes/ps-mode.elc \
1074 $(lisp)/progmodes/python.elc \
1075 $(lisp)/progmodes/scheme.elc \
1076 $(lisp)/progmodes/sh-script.elc \
1077 $(lisp)/progmodes/simula.elc \
1078 $(lisp)/progmodes/sql.elc \
1079 $(lisp)/progmodes/sym-comp.elc \
1080 $(lisp)/progmodes/tcl.elc \
1081 $(lisp)/progmodes/vera-mode.elc \
1082 $(lisp)/progmodes/verilog-mode.elc \
1083 $(lisp)/progmodes/vhdl-mode.elc \
1084 $(lisp)/progmodes/which-func.elc \
1085 $(lisp)/progmodes/xscheme.elc \
1086 $(lisp)/ps-bdf.elc \
1087 $(lisp)/ps-def.elc \
1088 $(lisp)/ps-mule.elc \
1089 $(lisp)/ps-print.elc \
1090 $(lisp)/ps-samp.elc \
1091 $(lisp)/recentf.elc \
1092 $(lisp)/rect.elc \
1093 $(lisp)/register.elc \
1094 $(lisp)/repeat.elc \
1095 $(lisp)/replace.elc \
1096 $(lisp)/reposition.elc \
ef7f89b2
GM
1097 $(lisp)/reveal.elc \
1098 $(lisp)/rfn-eshadow.elc \
1099 $(lisp)/rot13.elc \
1100 $(lisp)/ruler-mode.elc \
1101 $(lisp)/s-region.elc \
1102 $(lisp)/savehist.elc \
1103 $(lisp)/saveplace.elc \
1104 $(lisp)/sb-image.elc \
1105 $(lisp)/scroll-all.elc \
1106 $(lisp)/scroll-bar.elc \
1107 $(lisp)/scroll-lock.elc \
1108 $(lisp)/select.elc \
1109 $(lisp)/server.elc \
1110 $(lisp)/ses.elc \
1111 $(lisp)/sha1.elc \
1112 $(lisp)/shadowfile.elc \
1113 $(lisp)/shell.elc \
1114 $(lisp)/simple.elc \
1115 $(lisp)/skeleton.elc \
1116 $(lisp)/smerge-mode.elc \
1117 $(lisp)/sort.elc \
1118 $(lisp)/soundex.elc \
1119 $(lisp)/speedbar.elc \
1120 $(lisp)/startup.elc \
1121 $(lisp)/strokes.elc \
768efd84 1122 $(lisp)/subr.elc \
ef7f89b2
GM
1123 $(lisp)/t-mouse.elc \
1124 $(lisp)/tabify.elc \
1125 $(lisp)/talk.elc \
1126 $(lisp)/tar-mode.elc \
1127 $(lisp)/tempo.elc \
1128 $(lisp)/term.elc \
93d102d0 1129 $(lisp)/term/common-win.elc \
40281995 1130 $(lisp)/term/internal.elc \
edfda783 1131 $(lisp)/term/ns-win.elc \
ef7f89b2
GM
1132 $(lisp)/term/pc-win.elc \
1133 $(lisp)/term/rxvt.elc \
1134 $(lisp)/term/sun.elc \
1135 $(lisp)/term/sup-mouse.elc \
1136 $(lisp)/term/tty-colors.elc \
1137 $(lisp)/term/tvi970.elc \
1138 $(lisp)/term/vt100.elc \
1139 $(lisp)/term/w32-win.elc \
1140 $(lisp)/term/w32console.elc \
1141 $(lisp)/term/x-win.elc \
1142 $(lisp)/term/xterm.elc \
1143 $(lisp)/terminal.elc \
1144 $(lisp)/textmodes/artist.elc \
1145 $(lisp)/textmodes/bib-mode.elc \
1146 $(lisp)/textmodes/bibtex-style.elc \
1147 $(lisp)/textmodes/bibtex.elc \
1148 $(lisp)/textmodes/conf-mode.elc \
1149 $(lisp)/textmodes/css-mode.elc \
1150 $(lisp)/textmodes/dns-mode.elc \
1151 $(lisp)/textmodes/enriched.elc \
1152 $(lisp)/textmodes/fill.elc \
1153 $(lisp)/textmodes/flyspell.elc \
1154 $(lisp)/textmodes/ispell.elc \
1155 $(lisp)/textmodes/makeinfo.elc \
1156 $(lisp)/textmodes/nroff-mode.elc \
1157 $(lisp)/textmodes/page-ext.elc \
1158 $(lisp)/textmodes/page.elc \
1159 $(lisp)/textmodes/paragraphs.elc \
1160 $(lisp)/textmodes/picture.elc \
1161 $(lisp)/textmodes/po.elc \
1162 $(lisp)/textmodes/refbib.elc \
1163 $(lisp)/textmodes/refer.elc \
1164 $(lisp)/textmodes/refill.elc \
1165 $(lisp)/textmodes/reftex-auc.elc \
1166 $(lisp)/textmodes/reftex-cite.elc \
1167 $(lisp)/textmodes/reftex-dcr.elc \
1168 $(lisp)/textmodes/reftex-global.elc \
1169 $(lisp)/textmodes/reftex-index.elc \
1170 $(lisp)/textmodes/reftex-parse.elc \
1171 $(lisp)/textmodes/reftex-ref.elc \
1172 $(lisp)/textmodes/reftex-sel.elc \
1173 $(lisp)/textmodes/reftex-toc.elc \
1174 $(lisp)/textmodes/reftex-vars.elc \
1175 $(lisp)/textmodes/reftex.elc \
1176 $(lisp)/textmodes/remember.elc \
768efd84 1177 $(lisp)/textmodes/rst.elc \
ef7f89b2
GM
1178 $(lisp)/textmodes/sgml-mode.elc \
1179 $(lisp)/textmodes/spell.elc \
1180 $(lisp)/textmodes/table.elc \
1181 $(lisp)/textmodes/tex-mode.elc \
1182 $(lisp)/textmodes/texinfmt.elc \
1183 $(lisp)/textmodes/texinfo.elc \
1184 $(lisp)/textmodes/texnfo-upd.elc \
1185 $(lisp)/textmodes/text-mode.elc \
1186 $(lisp)/textmodes/tildify.elc \
1187 $(lisp)/textmodes/two-column.elc \
1188 $(lisp)/textmodes/underline.elc \
1189 $(lisp)/thingatpt.elc \
1190 $(lisp)/thumbs.elc \
1191 $(lisp)/time-stamp.elc \
1192 $(lisp)/time.elc \
1193 $(lisp)/timezone.elc \
1194 $(lisp)/tmm.elc \
1195 $(lisp)/tool-bar.elc \
1196 $(lisp)/tooltip.elc \
1197 $(lisp)/tree-widget.elc \
1198 $(lisp)/tutorial.elc \
1199 $(lisp)/type-break.elc \
1200 $(lisp)/uniquify.elc \
1201 $(lisp)/url/url-about.elc \
1202 $(lisp)/url/url-auth.elc \
1203 $(lisp)/url/url-cache.elc \
1204 $(lisp)/url/url-cid.elc \
1205 $(lisp)/url/url-cookie.elc \
1206 $(lisp)/url/url-dav.elc \
1207 $(lisp)/url/url-dired.elc \
1208 $(lisp)/url/url-expand.elc \
1209 $(lisp)/url/url-file.elc \
1210 $(lisp)/url/url-ftp.elc \
1211 $(lisp)/url/url-gw.elc \
1212 $(lisp)/url/url-handlers.elc \
1213 $(lisp)/url/url-history.elc \
1214 $(lisp)/url/url-http.elc \
1215 $(lisp)/url/url-imap.elc \
1216 $(lisp)/url/url-irc.elc \
1217 $(lisp)/url/url-ldap.elc \
1218 $(lisp)/url/url-mailto.elc \
1219 $(lisp)/url/url-methods.elc \
1220 $(lisp)/url/url-misc.elc \
1221 $(lisp)/url/url-news.elc \
1222 $(lisp)/url/url-nfs.elc \
1223 $(lisp)/url/url-ns.elc \
1224 $(lisp)/url/url-parse.elc \
1225 $(lisp)/url/url-privacy.elc \
1226 $(lisp)/url/url-proxy.elc \
1227 $(lisp)/url/url-util.elc \
1228 $(lisp)/url/url-vars.elc \
1229 $(lisp)/url/url.elc \
ef7f89b2 1230 $(lisp)/userlock.elc \
f439c140 1231 $(lisp)/vc-annotate.elc \
ef7f89b2
GM
1232 $(lisp)/vc-arch.elc \
1233 $(lisp)/vc-bzr.elc \
1234 $(lisp)/vc-cvs.elc \
0b5c4225 1235 $(lisp)/vc-dav.elc \
74d0991f 1236 $(lisp)/vc-dir.elc \
ef7f89b2
GM
1237 $(lisp)/vc-dispatcher.elc \
1238 $(lisp)/vc-git.elc \
1239 $(lisp)/vc-hg.elc \
1240 $(lisp)/vc-hooks.elc \
ef7f89b2
GM
1241 $(lisp)/vc-mtn.elc \
1242 $(lisp)/vc-rcs.elc \
1243 $(lisp)/vc-sccs.elc \
1244 $(lisp)/vc-svn.elc \
1245 $(lisp)/vc.elc \
1246 $(lisp)/vcursor.elc \
1247 $(lisp)/view.elc \
1248 $(lisp)/vt-control.elc \
1249 $(lisp)/vt100-led.elc \
1250 $(lisp)/w32-fns.elc \
1251 $(lisp)/w32-vars.elc \
1252 $(lisp)/wdired.elc \
1253 $(lisp)/whitespace.elc \
1254 $(lisp)/wid-browse.elc \
1255 $(lisp)/wid-edit.elc \
1256 $(lisp)/widget.elc \
1257 $(lisp)/windmove.elc \
1258 $(lisp)/window.elc \
1259 $(lisp)/winner.elc \
1260 $(lisp)/woman.elc \
1261 $(lisp)/x-dnd.elc \
1262 $(lisp)/xml.elc \
1263 $(lisp)/xt-mouse.elc
cc953d27 1264
768efd84
SM
1265# The src/Makefile.in has its own set of dependencies and when they decide
1266# that one Lisp file needs to be re-compiled, we had better recompile it as
1267# well, otherwise every subsequent make will again call us, until we finally
1268# end up deciding that yes, the file deserves recompilation.
1269# One option is to try and reproduce exactly the same dependencies here as
1270# we have in src/Makefile.in, but it turns out to be painful
1271# (e.g. src/Makefile.in may have a dependency for ../lisp/foo.elc where we
1272# only know of $(lisp)/foo.elc). So instead we provide a direct way for
1273# src/Makefile.in to rebuild a particular Lisp file, no questions asked.
1274compile-onefile:
1275 @echo Compiling $(THEFILE)
1276 @$(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $(THEFILE)
1277
ef7f89b2
GM
1278# Files MUST be compiled one by one. If we compile several files in a
1279# row (i.e., in the same instance of Emacs) we can't make sure that
938cbd34
LK
1280# the compilation environment is clean. We also set the load-path of
1281# the Emacs used for compilation to the current directory and its
1282# subdirectories, to make sure require's and load's in the files being
1283# compiled find the right files.
29ad9e56 1284
ef7f89b2
GM
1285.SUFFIXES: .elc .el
1286
1287# An old-fashioned suffix rule, which, according to the GNU Make manual,
1288# cannot have prerequisites.
1289# Note that if a .el file is removed from the repository without
1290# updating ELCFILES, make will abort.
1291.el.elc:
1292 @echo Compiling $<
1293 @$(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $<
1294
1295.PHONY: compile-first compile-main compile-last compile compile-always
1296
768efd84 1297compile-first: $(COMPILE_FIRST)
61b92c33 1298
ef7f89b2
GM
1299compile-main: $(ELCFILES)
1300
1301# Compile all Lisp files, but don't recompile those that are up to
1302# date. Some .el files don't get compiled because they set the
1303# local variable no-byte-compile.
1304# Calling make recursively because suffix rule cannot have prerequisites.
2c01ac6a
GM
1305# Explicitly pass EMACS (sometimes ../src/bootstrap-emacs) to those
1306# sub-makes that run rules that use it, for the sake of some non-GNU makes.
fc46d219 1307compile: $(LOADDEFS) autoloads compile-first
2c01ac6a
GM
1308 $(MAKE) $(MFLAGS) compile-main EMACS=$(EMACS)
1309 $(MAKE) $(MFLAGS) compile-last EMACS=$(EMACS)
ef7f89b2 1310
2fe51632
GM
1311## Doing this causes make install to dump another emacs.
1312# $(MAKE) $(MFLAGS) update-elclist
1313
938cbd34
LK
1314# Compile all Lisp files. This is like `compile' but compiles files
1315# unconditionally. Some files don't actually get compiled because they
1316# set the local variable no-byte-compile.
ef7f89b2 1317compile-always: doit
05012a71 1318 cd $(lisp); rm -f *.elc */*.elc
2c01ac6a 1319 $(MAKE) $(MFLAGS) compile EMACS=$(EMACS)
938cbd34 1320
ef7f89b2 1321## In case any files are missing from ELCFILES.
40281995 1322## Why is the UnicodeData check needed, when these files are no-byte-compile?
ef7f89b2
GM
1323compile-last:
1324 @wd=$(lisp); $(setwins); \
10498e1c 1325 els=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \
768efd84 1326 for el in $$els; do \
10498e1c
GM
1327 test -f $$el || continue; \
1328 test -f $${el}c && continue; \
1329 grep 'no-byte-compile: t' $$el > /dev/null && continue; \
1dd3a812 1330 head -n 1 $$el | grep '^;; Automatically generated from UnicodeData.txt.' > /dev/null && continue; \
10498e1c
GM
1331 sel=`echo $$el | sed "s|^$(lisp)|\\$$(lisp)|"`; \
1332 echo "Maintainer warning: $$sel missing from \$$ELCFILES?"; \
1333 echo "Compiling $$el"; \
1334 $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $$el || exit 1; \
8256e31b 1335 done
96ff0f09 1336
f1180544 1337compile-calc:
ef7f89b2 1338 for el in $(lisp)/calc/*.el; do \
dcf91c25 1339 echo Compiling $$el; \
ef7f89b2 1340 $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $$el || exit 1; \
dcf91c25
CW
1341 done
1342
a9b67cf4
GM
1343# Backup compiled Lisp files in elc.tar.gz. If that file already
1344# exists, make a backup of it.
1345
1346backup-compiled-files:
dce6b995
GM
1347 -mv $(lisp)/elc.tar.gz $(lisp)/elc.tar.gz~
1348 -tar czf $(lisp)/elc.tar.gz $(lisp)/*.elc $(lisp)/*/*.elc
a9b67cf4
GM
1349
1350# Compile Lisp files, but save old compiled files first.
1351
61b92c33 1352compile-after-backup: backup-compiled-files compile-always
a9b67cf4 1353
773cb1a4
NR
1354# Recompile all Lisp files which are newer than their .elc files and compile
1355# new ones.
df19c2fb
GM
1356# This has the same effect as compile-main (followed up with compile-last,
1357# if ELCFILES is out of date). recompile has some advantages:
1358# i) It is faster (on a single processor), since it only has to start
1359# Emacs once. It was 33% faster on a test with a random 10% of the .el
1360# files needing recompilation.
1361# ii) The explicit cc-mode dependency.
1362# recompile's disadvantages are:
1363# i) Not parallelizable.
1364# ii) Compiling multiple files in the same instance of Emacs is wrong,
1365# since the environment of later files is affected by definitions in
1366# earlier ones.
f7a043c3 1367recompile: doit $(LOADDEFS) compile-first $(lisp)/progmodes/cc-mode.elc
b2928357 1368 $(emacs) --eval "(batch-byte-recompile-directory 0)" $(lisp)
7ec641b8 1369
1eee3de4 1370# Update MH-E internal autoloads. These are not to be confused with
2537fa5d 1371# the autoloads for the MH-E entry points, which are already in loaddefs.el.
e9906608
GM
1372MH_E_DIR = $(lisp)/mh-e
1373## MH_E_SRC avoids a circular dependency warning for mh-loaddefs.el.
1374MH_E_SRC = $(MH_E_DIR)/mh-acros.el $(MH_E_DIR)/mh-alias.el \
1375 $(MH_E_DIR)/mh-buffers.el $(MH_E_DIR)/mh-compat.el \
1376 $(MH_E_DIR)/mh-comp.el $(MH_E_DIR)/mh-e.el \
1377 $(MH_E_DIR)/mh-folder.el $(MH_E_DIR)/mh-funcs.el \
1378 $(MH_E_DIR)/mh-gnus.el $(MH_E_DIR)/mh-identity.el \
1379 $(MH_E_DIR)/mh-inc.el $(MH_E_DIR)/mh-junk.el \
1380 $(MH_E_DIR)/mh-letter.el $(MH_E_DIR)/mh-limit.el \
1381 $(MH_E_DIR)/mh-mime.el $(MH_E_DIR)/mh-print.el \
1382 $(MH_E_DIR)/mh-scan.el $(MH_E_DIR)/mh-search.el \
1383 $(MH_E_DIR)/mh-seq.el $(MH_E_DIR)/mh-show.el \
1384 $(MH_E_DIR)/mh-speed.el $(MH_E_DIR)/mh-thread.el \
1385 $(MH_E_DIR)/mh-tool-bar.el $(MH_E_DIR)/mh-utils.el \
1386 $(MH_E_DIR)/mh-xface.el
1387
1388mh-autoloads: $(MH_E_DIR)/mh-loaddefs.el
fc46d219 1389$(MH_E_DIR)/mh-loaddefs.el: $(MH_E_SRC)
2537fa5d 1390 $(emacs) -l autoload \
a6f6840e 1391 --eval "(setq generate-autoload-cookie \";;;###mh-autoload\")" \
2537fa5d 1392 --eval "(setq generated-autoload-file \"$@\")" \
a6f6840e 1393 --eval "(setq make-backup-files nil)" \
e9906608
GM
1394 -f batch-update-autoloads $(MH_E_DIR)
1395
1396CAL_DIR = $(lisp)/calendar
1397## Those files that may contain internal calendar autoload cookies.
1398## Avoids circular dependency warning for *-loaddefs.el.
1399CAL_SRC = $(CAL_DIR)/cal-bahai.el $(CAL_DIR)/cal-china.el \
1400 $(CAL_DIR)/cal-coptic.el $(CAL_DIR)/cal-dst.el \
1401 $(CAL_DIR)/cal-french.el $(CAL_DIR)/cal-hebrew.el \
1402 $(CAL_DIR)/cal-html.el $(CAL_DIR)/cal-islam.el \
1403 $(CAL_DIR)/cal-iso.el $(CAL_DIR)/cal-julian.el \
1404 $(CAL_DIR)/cal-mayan.el $(CAL_DIR)/cal-menu.el \
1405 $(CAL_DIR)/cal-move.el $(CAL_DIR)/cal-persia.el \
1406 $(CAL_DIR)/cal-tex.el $(CAL_DIR)/cal-x.el \
1407 $(CAL_DIR)/calendar.el $(CAL_DIR)/diary-lib.el \
1408 $(CAL_DIR)/holidays.el $(CAL_DIR)/lunar.el \
1409 $(CAL_DIR)/solar.el
1410
fc46d219 1411$(CAL_DIR)/cal-loaddefs.el: $(CAL_SRC)
2537fa5d
GM
1412 $(emacs) -l autoload \
1413 --eval "(setq generate-autoload-cookie \";;;###cal-autoload\")" \
1414 --eval "(setq generated-autoload-file \"$@\")" \
1415 --eval "(setq make-backup-files nil)" \
e9906608 1416 -f batch-update-autoloads $(CAL_DIR)
2537fa5d 1417
fc46d219 1418$(CAL_DIR)/diary-loaddefs.el: $(CAL_SRC)
2537fa5d
GM
1419 $(emacs) -l autoload \
1420 --eval "(setq generate-autoload-cookie \";;;###diary-autoload\")" \
1421 --eval "(setq generated-autoload-file \"$@\")" \
1422 --eval "(setq make-backup-files nil)" \
e9906608 1423 -f batch-update-autoloads $(CAL_DIR)
2537fa5d 1424
fc46d219 1425$(CAL_DIR)/hol-loaddefs.el: $(CAL_SRC)
2537fa5d
GM
1426 $(emacs) -l autoload \
1427 --eval "(setq generate-autoload-cookie \";;;###holiday-autoload\")" \
1428 --eval "(setq generated-autoload-file \"$@\")" \
1429 --eval "(setq make-backup-files nil)" \
e9906608 1430 -f batch-update-autoloads $(CAL_DIR)
2537fa5d 1431
6b61353c
KH
1432# Prepare a bootstrap in the lisp subdirectory.
1433#
f586d18e
LK
1434# Build loaddefs.el to make sure it's up-to-date. If it's not, that
1435# might lead to errors during the bootstrap because something fails to
1436# autoload as expected. If there is no emacs binary, then we can't
71d77b40
LT
1437# build autoloads yet. In that case we have to use ldefs-boot.el.
1438# Bootstrap should always work with ldefs-boot.el. Therefore,
1439# whenever a new autoload cookie gets added that is necessary during
1440# bootstrapping, ldefs-boot.el should be updated by overwriting it with
1441# an up-to-date copy of loaddefs.el that is uncorrupted by
1442# local changes. (Because loaddefs.el is an automatically generated
1443# file, we don't want to store it in the source repository).
6b61353c 1444
fc46d219
SM
1445bootstrap-clean:
1446 cd $(lisp); rm -f *.elc */*.elc $(AUTOGENEL)
a9b67cf4 1447
b7bc82c5 1448distclean:
64865454 1449 -rm -f ./Makefile
b7bc82c5
SM
1450
1451maintainer-clean: distclean bootstrap-clean
43280888 1452
f772cd18
GM
1453.PHONY: check-declare
1454
1455check-declare:
1456 $(emacs) -l $(lisp)/emacs-lisp/check-declare \
1457 --eval '(check-declare-directory "$(lisp)")'
1458
4860b1b8
EZ
1459# Dependencies
1460
1461# CC Mode uses a compile time macro system which causes a compile time
1462# dependency in cc-*.elc files on the macros in other cc-*.el and the
1463# version string in cc-defs.el.
1464$(lisp)/progmodes/cc-align.elc $(lisp)/progmodes/cc-awk.elc\
1465 $(lisp)/progmodes/cc-cmds.elc $(lisp)/progmodes/cc-compat.elc\
1466 $(lisp)/progmodes/cc-engine.elc $(lisp)/progmodes/cc-fonts.elc\
1467 $(lisp)/progmodes/cc-langs.elc $(lisp)/progmodes/cc-menus.elc\
1468 $(lisp)/progmodes/cc-mode.elc $(lisp)/progmodes/cc-styles.elc\
1469 $(lisp)/progmodes/cc-subword.elc $(lisp)/progmodes/cc-vars.elc: \
1470 $(lisp)/progmodes/cc-bytecomp.elc $(lisp)/progmodes/cc-defs.elc
1471
1472$(lisp)/progmodes/cc-align.elc: \
1473 $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-engine.elc
1474
1475$(lisp)/progmodes/cc-cmds.elc: \
1476 $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-engine.elc
1477
1478$(lisp)/progmodes/cc-compat.elc: \
1479 $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-styles.elc \
1480 $(lisp)/progmodes/cc-engine.elc
1481
1482$(lisp)/progmodes/cc-defs.elc: $(lisp)/progmodes/cc-bytecomp.elc \
1483 $(lisp)/emacs-lisp/cl.elc $(lisp)/emacs-lisp/regexp-opt.elc
1484
1485$(lisp)/progmodes/cc-engine.elc: $(lisp)/progmodes/cc-langs.elc \
1486 $(lisp)/progmodes/cc-vars.elc
1487
1488$(lisp)/progmodes/cc-fonts.elc: $(lisp)/progmodes/cc-langs.elc \
1489 $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-engine.elc \
1490 $(lisp)/font-lock.elc
1491
1492$(lisp)/progmodes/cc-langs.elc: $(lisp)/progmodes/cc-vars.elc \
1493 $(lisp)/emacs-lisp/cl.elc
1494
1495$(lisp)/progmodes/cc-mode.elc: $(lisp)/progmodes/cc-langs.elc \
1496 $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-engine.elc \
1497 $(lisp)/progmodes/cc-styles.elc $(lisp)/progmodes/cc-cmds.elc \
1498 $(lisp)/progmodes/cc-align.elc $(lisp)/progmodes/cc-menus.elc
1499
1500$(lisp)/progmodes/cc-styles.elc: $(lisp)/progmodes/cc-vars.elc \
1501 $(lisp)/progmodes/cc-align.elc
1502
1503$(lisp)/progmodes/cc-subword.elc: $(lisp)/progmodes/cc-cmds.elc
1504
1505$(lisp)/progmodes/cc-vars.elc: $(lisp)/custom.elc $(lisp)/widget.elc
7ec641b8 1506# Makefile ends here.