Mercurial > emacs
comparison lisp/Makefile @ 28049:25ba68b7cbdb
(compile-files): Compile files one by one because
that's the only way to ensure a clean compilation environment for
each individual file.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Wed, 08 Mar 2000 13:56:00 +0000 |
parents | 884246071553 |
children | a4faa7999de1 |
comparison
equal
deleted
inserted
replaced
28048:b4c4dbcddc79 | 28049:25ba68b7cbdb |
---|---|
100 -rm -f $@ | 100 -rm -f $@ |
101 | 101 |
102 # Compile all Lisp files, except those from DONTCOMPILE. This | 102 # Compile all Lisp files, except those from DONTCOMPILE. This |
103 # compiles files unconditionally. All .elc files are made writable | 103 # compiles files unconditionally. All .elc files are made writable |
104 # before compilation in case we checked out read-only (CVS option -r). | 104 # before compilation in case we checked out read-only (CVS option -r). |
105 # Files must be compiled one by one, otherwise apparently | 105 # Files MUST be compiled one by one. If we compile several files in a |
106 # eval-when-compile's in some Lisp files make problems in files being | 106 # row we can't make sure that the compilation environment is clean. |
107 # compiled later. We also set the load-path of the Emacs used for | 107 # We also set the load-path of the Emacs used for compilation to the |
108 # compilation to the current directory and its subdirectories, to | 108 # current directory and its subdirectories, to make sure require's and |
109 # make sure require's and load's in the files being compiled find | 109 # load's in the files being compiled find the right files. |
110 # the right files. | |
111 | 110 |
112 compile-files: subdirs.el doit | 111 compile-files: subdirs.el doit |
113 find . -name "*.elc" -print | xargs chmod +w; \ | 112 find . -name "*.elc" -print | xargs chmod +w; \ |
114 wd=.; $(setwins); \ | 113 wd=.; $(setwins); \ |
115 elpat=`echo $$wins | tr ' ' '\012\012' | \ | 114 elpat=`echo $$wins | tr ' ' '\012\012' | \ |
116 sed -e 's|\(.\)$$|\1/|' -e 's|^\./||' -e 's|$$|*.el|'`; \ | 115 sed -e 's|\(.\)$$|\1/|' -e 's|^\./||' -e 's|$$|*.el|'`; \ |
117 els=`echo $$elpat $(DONTCOMPILE) | tr ' ' '\012\012' | sort | uniq -u`; \ | 116 els=`echo $$elpat $(DONTCOMPILE) | tr ' ' '\012\012' | sort | uniq -u`; \ |
118 echo $$els; \ | 117 for el in $$els; do \ |
119 EMACSLOADPATH=`pwd` $(emacs) -f batch-byte-compile $$els | 118 echo Compiling $$el; \ |
119 EMACSLOADPATH=`pwd` $(emacs) -f batch-byte-compile $$el ;\ | |
120 done | |
120 | 121 |
121 # Backup compiled Lisp files in elc.tar.gz. If that file already | 122 # Backup compiled Lisp files in elc.tar.gz. If that file already |
122 # exists, make a backup of it. | 123 # exists, make a backup of it. |
123 | 124 |
124 backup-compiled-files: | 125 backup-compiled-files: |