Mercurial > emacs
comparison lisp/Makefile @ 26145:760a5b91fe7f
(compile-files, backup-compiled-files): New targets.
(bootstrap, bootstrap-clean): Ditto.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Sat, 23 Oct 1999 13:22:02 +0000 |
parents | a2591ab1ddaf |
children | 00e23959ec43 |
comparison
equal
deleted
inserted
replaced
26144:8fee653decdf | 26145:760a5b91fe7f |
---|---|
19 | 19 |
20 # Files which should not be compiled. All file names must be relative | 20 # Files which should not be compiled. All file names must be relative |
21 # to the `lisp' directory. | 21 # to the `lisp' directory. |
22 # - emacs-lisp/cl-specs.el: only contains `def-edebug-spec's so there's | 22 # - emacs-lisp/cl-specs.el: only contains `def-edebug-spec's so there's |
23 # no point compiling it, although it doesn't hurt. | 23 # no point compiling it, although it doesn't hurt. |
24 | |
24 DONTCOMPILE = bindings.el mail/blessmail.el play/bruce.el cus-load.el \ | 25 DONTCOMPILE = bindings.el mail/blessmail.el play/bruce.el cus-load.el \ |
25 cus-start.el forms-d2.el forms-pass.el \ | 26 cus-start.el forms-d2.el forms-pass.el \ |
26 international/latin-1.el international/latin-2.el \ | 27 international/latin-1.el international/latin-2.el \ |
27 international/latin-3.el international/latin-4.el \ | 28 international/latin-3.el international/latin-4.el \ |
28 international/latin-5.el \ | 29 international/latin-5.el \ |
106 # compiled later. We also set the load-path of the Emacs used for | 107 # compiled later. We also set the load-path of the Emacs used for |
107 # compilation to the current directory and its subdirectories, to | 108 # compilation to the current directory and its subdirectories, to |
108 # make sure require's and load's in the files being compiled find | 109 # make sure require's and load's in the files being compiled find |
109 # the right files. | 110 # the right files. |
110 | 111 |
111 compile: subdirs.el doit | 112 compile-files: subdirs.el doit |
112 find . -name "*.elc" -print | xargs chmod +w; \ | 113 find . -name "*.elc" -print | xargs chmod +w; \ |
113 wd=.; $(setwins); \ | 114 wd=.; $(setwins); \ |
114 elpat=`echo $$wins | tr '[ ]' '[\012\012]' | \ | 115 elpat=`echo $$wins | tr '[ ]' '[\012\012]' | \ |
115 sed -e 's|\(.\)$$|\1/|' -e 's|^\./||' -e 's|$$|*.el|'`; \ | 116 sed -e 's|\(.\)$$|\1/|' -e 's|^\./||' -e 's|$$|*.el|'`; \ |
116 els=`echo $$elpat $(DONTCOMPILE) | tr '[ ]' '[\012\012]' | sort | uniq -u`; \ | 117 els=`echo $$elpat $(DONTCOMPILE) | tr '[ ]' '[\012\012]' | sort | uniq -u`; \ |
117 echo $$els; \ | 118 echo $$els; \ |
118 EMACSLOADPATH=`pwd` $(emacs) -f batch-byte-compile $$els | 119 EMACSLOADPATH=`pwd` $(emacs) -f batch-byte-compile $$els |
119 | 120 |
121 # Backup compiled Lisp files in elc.tar.gz. If that file already | |
122 # exists, make a backup of it. | |
123 | |
124 backup-compiled-files: | |
125 -mv elc.tar.gz elc.tar.gz~ | |
126 tar czf elc.tar.gz *.elc */*.elc | |
127 | |
128 # Compile Lisp files, but save old compiled files first. | |
129 | |
130 compile: backup-compiled-files compile-files | |
131 | |
120 # Recompile all Lisp files which are newer than their .elc files. | 132 # Recompile all Lisp files which are newer than their .elc files. |
121 # Note that this doesn't create .elc files. It only recompiles if an | 133 # Note that this doesn't create .elc files. It only recompiles if an |
122 # .elc is present. | 134 # .elc is present. |
123 | 135 |
124 recompile: doit | 136 recompile: doit |
125 $(emacs) -f batch-byte-recompile-directory . | 137 $(emacs) -f batch-byte-recompile-directory . |
126 | 138 |
139 # Remove files for a bootstrap. Compiled Lisp files must be removed | |
140 # because otherwise `bootstrap-emacs' would not be built from sources. | |
141 | |
142 bootstrap-clean: | |
143 -rm -f *.elc */*.elc | |
144 | |
145 # Generate/update files for the bootstrap process. | |
146 | |
147 bootstrap: compile-files autoloads custom-deps | |
148 | |
127 # Makefile ends here. | 149 # Makefile ends here. |