Mercurial > emacs
annotate lisp/Makefile @ 25936:3223912646d8
(compile): Compile files one by one. Set load-path to
current directory and subdirectories when compiling.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Fri, 08 Oct 1999 21:51:14 +0000 |
parents | 663097d932a4 |
children | aff7b4b37817 |
rev | line source |
---|---|
17392 | 1 # |
2 # Maintenance productions for the Lisp directory | |
3 # | |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
4 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
5 # You can specify a different executable on the make command line, |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
6 # e.g. "make EMACS=../src/emacs ...". |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
7 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
8 EMACS = emacs |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
9 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
10 # Command line flags for Emacs. This must include --multibyte, |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
11 # otherwise some files will not compile. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
12 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
13 EMACSOPT = --no-init-file --no-site-file --multibyte -batch |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
14 |
17392 | 15 SOURCES = *.el COPYING Makefile |
21924
e37aa6f8f583
(TAGS-LISP): New target.
Richard M. Stallman <rms@gnu.org>
parents:
21756
diff
changeset
|
16 lisptagsfiles1 = [a-zA-Z]*.el |
e37aa6f8f583
(TAGS-LISP): New target.
Richard M. Stallman <rms@gnu.org>
parents:
21756
diff
changeset
|
17 lisptagsfiles2 = [a-zA-Z]*/[a-zA-Z]*.el |
18962 | 18 ETAGS = ../lib-src/etags |
17392 | 19 |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
20 # Leave this in. I don't know if some utility depends on it. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
21 |
17903
aa26c694525e
(dontcompilefiles): Add list of files that should not be byte-compiled.
Richard M. Stallman <rms@gnu.org>
parents:
17748
diff
changeset
|
22 dontcompilefiles: bindings.el blessmail.el bruce.el cus-load.el cus-start.el |
19157
5dada86a0c63
(dontcompilefiles): Delete cyril-util.el.
Richard M. Stallman <rms@gnu.org>
parents:
18962
diff
changeset
|
23 dontcompilefiles: forms-d2.el forms-pass.el |
18482
9c5e6b1dafc5
(lisptagsfiles): Look at subdirs only if name
Richard M. Stallman <rms@gnu.org>
parents:
17942
diff
changeset
|
24 dontcompilefiles: latin-1.el latin-2.el latin-3.el latin-4.el latin-5.el |
17903
aa26c694525e
(dontcompilefiles): Add list of files that should not be byte-compiled.
Richard M. Stallman <rms@gnu.org>
parents:
17748
diff
changeset
|
25 dontcompilefiles: loaddefs.el loadup.el mule-conf.el patcomp.el |
aa26c694525e
(dontcompilefiles): Add list of files that should not be byte-compiled.
Richard M. Stallman <rms@gnu.org>
parents:
17748
diff
changeset
|
26 dontcompilefiles: paths.el sc.el subdirs.el term-nasty.el version.el |
25104
ce45b5985d7e
(dontcompilefiles): Add latin-[89].el.
Dave Love <fx@gnu.org>
parents:
24035
diff
changeset
|
27 dontcompilefiles: generic-x.el latin-8.el latin-9.el |
17903
aa26c694525e
(dontcompilefiles): Add list of files that should not be byte-compiled.
Richard M. Stallman <rms@gnu.org>
parents:
17748
diff
changeset
|
28 |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
29 # Files which should not be compiled. All file names must be relative |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
30 # to the `lisp' directory. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
31 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
32 DONTCOMPILE = bindings.el mail/blessmail.el play/bruce.el cus-load.el \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
33 cus-start.el forms-d2.el forms-pass.el \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
34 international/latin-1.el international/latin-2.el \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
35 international/latin-3.el international/latin-4.el \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
36 international/latin-5.el \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
37 loaddefs.el loadup.el international/mule-conf.el patcomp.el \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
38 paths.el mail/sc.el subdirs.el term-nasty.el version.el \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
39 generic-x.el international/latin-8.el international/latin-9.el |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
40 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
41 # All Lisp source files in the current directory. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
42 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
43 EL = $(lisptagsfiles1) $(lisptagsfiles2) |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
44 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
45 # The actual Emacs command run in the targets below. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
46 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
47 emacs = $(EMACS) $(EMACSOPT) |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
48 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
49 |
17394
b793e8f5a9c2
Added cus-load.el target.
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
17392
diff
changeset
|
50 doit: |
b793e8f5a9c2
Added cus-load.el target.
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
17392
diff
changeset
|
51 |
17743
8ec60a2d3ddb
(custom-deps): Target renamed from cus-load.el.
Richard M. Stallman <rms@gnu.org>
parents:
17399
diff
changeset
|
52 custom-deps: doit |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
53 subdirs=`find . -type d -print`; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
54 for file in $$subdirs; do \ |
25340 | 55 case $$file in */Old | */RCS | */CVS | */=* ) ;; \ |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
56 *) wins="$$wins $$file" ;; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
57 esac; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
58 done; \ |
21756
ed07a8592f60
(custom-deps, updates): Allow cus-dep to be compiled.
Richard M. Stallman <rms@gnu.org>
parents:
21753
diff
changeset
|
59 echo Directories: $$wins; \ |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
60 $(emacs) -l cus-dep -f custom-make-dependencies $$wins |
17399
04fc73bb3416
(finder-inf.el, autoloads): New targets.
Richard M. Stallman <rms@gnu.org>
parents:
17394
diff
changeset
|
61 |
17743
8ec60a2d3ddb
(custom-deps): Target renamed from cus-load.el.
Richard M. Stallman <rms@gnu.org>
parents:
17399
diff
changeset
|
62 finder-data: doit |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
63 subdirs=`find . -type d -print`; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
64 for file in $$subdirs; do \ |
25340 | 65 case $$file in */Old | */RCS | */CVS | */=* ) ;; \ |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
66 *) wins="$$wins $$file" ;; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
67 esac; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
68 done; \ |
21756
ed07a8592f60
(custom-deps, updates): Allow cus-dep to be compiled.
Richard M. Stallman <rms@gnu.org>
parents:
21753
diff
changeset
|
69 echo Directories: $$wins; \ |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
70 $(emacs) -l finder -f finder-compile-keywords-make-dist $$wins |
17399
04fc73bb3416
(finder-inf.el, autoloads): New targets.
Richard M. Stallman <rms@gnu.org>
parents:
17394
diff
changeset
|
71 |
04fc73bb3416
(finder-inf.el, autoloads): New targets.
Richard M. Stallman <rms@gnu.org>
parents:
17394
diff
changeset
|
72 autoloads: doit |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
73 subdirs=`find . -type d -print`; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
74 for file in $$subdirs; do \ |
25340 | 75 case $$file in */Old | */RCS | */CVS | */=* ) ;; \ |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
76 *) wins="$$wins $$file" ;; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
77 esac; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
78 done; \ |
21756
ed07a8592f60
(custom-deps, updates): Allow cus-dep to be compiled.
Richard M. Stallman <rms@gnu.org>
parents:
21753
diff
changeset
|
79 echo Directories: $$wins; \ |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
80 $(emacs) -f batch-update-autoloads $$wins |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
81 |
17748
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
82 update-subdirs: doit |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
83 subdirs=`find . -type d -print`; \ |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
84 for file in $$subdirs; do \ |
25340 | 85 case $$file in */Old | */RCS | */CVS | */=* ) ;; \ |
17748
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
86 *) wins="$$wins $$file" ;; \ |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
87 esac; \ |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
88 done; \ |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
89 for file in $$wins; do \ |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
90 ../update-subdirs $$file; \ |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
91 done; |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
92 |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
93 updates: doit |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
94 subdirs=`find . -type d -print`; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
95 for file in $$subdirs; do \ |
25340 | 96 case $$file in */Old | */RCS | */CVS | */=* ) ;; \ |
17746
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
97 *) wins="$$wins $$file" ;; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
98 esac; \ |
e3508d038aee
(autoloads, custom-deps, finder-data):
Richard M. Stallman <rms@gnu.org>
parents:
17743
diff
changeset
|
99 done; \ |
17748
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
100 for file in $$wins; do \ |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
101 ../update-subdirs $$file; \ |
689e217c6c8e
(update-subdirs): New target.
Richard M. Stallman <rms@gnu.org>
parents:
17746
diff
changeset
|
102 done; \ |
21756
ed07a8592f60
(custom-deps, updates): Allow cus-dep to be compiled.
Richard M. Stallman <rms@gnu.org>
parents:
21753
diff
changeset
|
103 echo Directories: $$wins; \ |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
104 $(emacs) -l cus-dep -f custom-make-dependencies $$wins; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
105 $(emacs) -l finder -f finder-compile-keywords-make-dist $$wins; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
106 $(emacs) -f batch-update-autoloads $$wins |
17394
b793e8f5a9c2
Added cus-load.el target.
Per Abrahamsen <abraham@dina.kvl.dk>
parents:
17392
diff
changeset
|
107 |
21924
e37aa6f8f583
(TAGS-LISP): New target.
Richard M. Stallman <rms@gnu.org>
parents:
21756
diff
changeset
|
108 TAGS: $(lisptagsfiles1) $(lisptagsfiles2) |
e37aa6f8f583
(TAGS-LISP): New target.
Richard M. Stallman <rms@gnu.org>
parents:
21756
diff
changeset
|
109 ${ETAGS} $(lisptagsfiles1) $(lisptagsfiles2) |
e37aa6f8f583
(TAGS-LISP): New target.
Richard M. Stallman <rms@gnu.org>
parents:
21756
diff
changeset
|
110 |
e37aa6f8f583
(TAGS-LISP): New target.
Richard M. Stallman <rms@gnu.org>
parents:
21756
diff
changeset
|
111 TAGS-LISP: $(lispsource)$(lisptagsfiles1) $(lispsource)$(lisptagsfiles2) |
e37aa6f8f583
(TAGS-LISP): New target.
Richard M. Stallman <rms@gnu.org>
parents:
21756
diff
changeset
|
112 ${ETAGS} -o TAGS-LISP \ |
e37aa6f8f583
(TAGS-LISP): New target.
Richard M. Stallman <rms@gnu.org>
parents:
21756
diff
changeset
|
113 $(lispsource)$(lisptagsfiles1) $(lispsource)$(lisptagsfiles2) |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
114 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
115 # Compile all Lisp files, except those from DONTCOMPILE. This |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
116 # compiles files unconditionally. All .elc files are made writable |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
117 # before compilation in case we checked out read-only (CVS option -r). |
25936
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
118 # Files must be compiled one by one, otherwise apparently |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
119 # eval-when-compile's in some Lisp files make problems in files being |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
120 # compiled later. We also set the load-path of the Emacs used for |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
121 # compilation to the current directory and its subdirectories, to |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
122 # make sure require's and load's in the files being compiled find |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
123 # the right files. |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
124 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
125 compile: doit |
25936
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
126 wd=`pwd`; \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
127 find $$wd -name "*.elc" | xargs chmod +w; \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
128 subdirs=`find $$wd -type d -print`; \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
129 for dir in $$subdirs; do \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
130 case $$dir in \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
131 */Old | */RCS | */CVS | */=* ) ;; \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
132 *) loadpath="$$loadpath \"$$dir\"" ;; \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
133 esac; \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
134 done; \ |
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
135 loadpath="(setq load-path '($$loadpath))"; \ |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
136 dont_compile=`echo $(DONTCOMPILE)`; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
137 for el in $(EL); do \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
138 compile_it=y; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
139 for dont in $$dont_compile; do \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
140 if test $$el = $$dont; then \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
141 compile_it=n; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
142 fi; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
143 done; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
144 if test $$compile_it = y; then \ |
25936
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
145 $(emacs) --eval "$$loadpath" -f batch-byte-compile $$el; \ |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
146 else \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
147 echo "Don't compile $$el"; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
148 fi; \ |
25936
3223912646d8
(compile): Compile files one by one. Set load-path to
Gerd Moellmann <gerd@gnu.org>
parents:
25917
diff
changeset
|
149 done |
25917
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
150 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
151 # Recompile all Lisp files which are newer than their .elc files. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
152 # Note that this doesn't create .elc files. It only recompiles if an |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
153 # .elc is present. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
154 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
155 recompile: doit |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
156 $(emacs) -f batch-byte-recompile-directory . |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
157 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
158 # Build loaddefs.el but with an Emacs executable which was not built |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
159 # in the current directory tree. The problem in this case is that |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
160 # autoload.el reads and writes loaddefs.el in its `source-directory'. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
161 # If that's different from the current directory tree, we can't build |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
162 # loaddefs.el. |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
163 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
164 autoloads-with-other-emacs: doit |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
165 subdirs=`find . -type d -print`; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
166 for file in $$subdirs; do \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
167 case $$file in */Old | */RCS | */CVS | */=* ) ;; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
168 *) wins="$$wins $$file" ;; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
169 esac; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
170 done; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
171 echo Directories: $$wins; \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
172 $(emacs) --eval '(setq source-directory ".")' \ |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
173 -f batch-update-autoloads $$wins |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
174 |
663097d932a4
(EMACSOPT, DONTCOMPILE, EL): New.
Gerd Moellmann <gerd@gnu.org>
parents:
25340
diff
changeset
|
175 # Makefile ends here. |