aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Innes2003-01-15 12:14:05 +0000
committerAndrew Innes2003-01-15 12:14:05 +0000
commite22b24eb87c4b02c55e8b38c16ca0194ec5115c0 (patch)
tree265ab2347a9168e08a496ae09115f7223fdebe79
parente2f4caea36baf88c95a4fddc4f57c969d8f78834 (diff)
downloademacs-e22b24eb87c4b02c55e8b38c16ca0194ec5115c0.tar.gz
emacs-e22b24eb87c4b02c55e8b38c16ca0194ec5115c0.zip
(loaddefs.el): Invoke make to build stub file
using appropriate rule for build environment. (loaddefs.el-SH, loaddefs.el-CMD): New targets. Include small set of autoloads and defvars, sufficient to dump bootstrap emacs. (update-subdirs-SH): Use hard-coded list of top-level lisp subdirs, because find program on Windows is not compatible with Unix find. (compile-CMD, compile-SH): Use `batch-byte-compile-if-not-done'. Explicitly load loaddefs.el so that bootstrap emacs can compile properly. (bootstrap-clean): Add dependency on loaddefs.el, to ensure minimal stub sufficient for dumping bootstrap emacs is available.
-rw-r--r--lisp/makefile.w32-in47
1 files changed, 39 insertions, 8 deletions
diff --git a/lisp/makefile.w32-in b/lisp/makefile.w32-in
index 31c39737c99..f23b49c4f89 100644
--- a/lisp/makefile.w32-in
+++ b/lisp/makefile.w32-in
@@ -171,9 +171,39 @@ finder-data: doit
171 $(emacs) -l finder -f finder-compile-keywords-make-dist $(lisp) $(WINS) 171 $(emacs) -l finder -f finder-compile-keywords-make-dist $(lisp) $(WINS)
172 172
173loaddefs.el: 173loaddefs.el:
174 $(MAKE) $(MFLAGS) loaddefs.el-$(SHELLTYPE)
175 cp loaddefs.el-$(SHELLTYPE) $@
176 rm loaddefs.el-$(SHELLTYPE)
177
178loaddefs.el-SH:
179 echo ";;; loaddefs.el --- automatically extracted autoloads" > $@
180 echo ";;" >> $@; echo ";;; Code:" >> $@
181 echo "(autoload 'define-minor-mode \"easy-mmode\")" >>$@
182 echo "(autoload 'define-ccl-program \"ccl\")" >>$@
183 echo "(autoload 'regexp-opt \"regexp-opt\")" >>$@
184 echo "(autoload 'string-to-list \"mule-util\")" >>$@
185 echo "(autoload 'define-derived-mode \"derived\")" >>$@
186 echo "(autoload 'encoded-kbd-mode \"encoded-kb\")" >>$@
187 echo "(defvar cvs-global-menu nil)" >>$@
188 echo " " >> $@
189 echo ";;; Local Variables:" >> $@
190 echo ";;; version-control: never" >> $@
191 echo ";;; no-byte-compile: t" >> $@
192 echo ";;; no-update-autoloads: t" >> $@
193 echo ";;; End:" >> $@
194 echo ";;; loaddefs.el ends here" >> $@
195
196loaddefs.el-CMD:
174 echo ;;; loaddefs.el --- automatically extracted autoloads> $@ 197 echo ;;; loaddefs.el --- automatically extracted autoloads> $@
175 echo ;;; Code:>> $@ 198 echo ;;; Code:>> $@
176 echo >> $@ 199 echo (autoload 'define-minor-mode "easy-mmode")>> $@
200 echo (autoload 'define-ccl-program "ccl")>> $@
201 echo (autoload 'regexp-opt "regexp-opt")>> $@
202 echo (autoload 'string-to-list "mule-util")>> $@
203 echo (autoload 'define-derived-mode "derived")>> $@
204 echo (autoload 'encoded-kbd-mode "encoded-kb")>> $@
205 echo (defvar cvs-global-menu nil)>> $@
206 echo. >> $@
177 echo ;;; Local Variables:>> $@ 207 echo ;;; Local Variables:>> $@
178 echo ;;; version-control: never>> $@ 208 echo ;;; version-control: never>> $@
179 echo ;;; no-byte-compile: t>> $@ 209 echo ;;; no-byte-compile: t>> $@
@@ -205,8 +235,7 @@ update-subdirs-CMD: doit
205 echo ))>> subdirs.el 235 echo ))>> subdirs.el
206 236
207update-subdirs-SH: doit 237update-subdirs-SH: doit
208 wd=$(lisp); $(setwins); \ 238 for file in $(WINS); do \
209 for file in $$wins; do \
210 $(srcdir)/update-subdirs $$file; \ 239 $(srcdir)/update-subdirs $$file; \
211 done; 240 done;
212 241
@@ -247,21 +276,23 @@ compile: subdirs.el compile-$(SHELLTYPE) doit
247 276
248compile-CMD: 277compile-CMD:
249# -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @attrib -r %g 278# -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @attrib -r %g
250 for %f in ($(COMPILE_FIRST)) do $(emacs) -f batch-byte-compile %f 279 for %f in ($(COMPILE_FIRST)) do \
251 for %f in (. $(WINS)) do for %g in (%f/*.el) do $(emacs) -f batch-byte-compile %f/%g 280 $(emacs) -l loaddefs -f batch-byte-compile-if-not-done %f
281 for %f in (. $(WINS)) do for %g in (%f/*.el) do \
282 $(emacs) -l loaddefs -f batch-byte-compile-if-not-done %f/%g
252 283
253compile-SH: 284compile-SH:
254# for elc in $(lisp)/*.elc $(lisp)/*/*.elc; do attrib -r $$elc; done 285# for elc in $(lisp)/*.elc $(lisp)/*/*.elc; do attrib -r $$elc; done
255 for el in $(COMPILE_FIRST); do \ 286 for el in $(COMPILE_FIRST); do \
256 echo Compiling $$el; \ 287 echo Compiling $$el; \
257 $(emacs) -f batch-byte-compile $$el; \ 288 $(emacs) -l loaddefs -f batch-byte-compile-if-not-done $$el; \
258 done 289 done
259 for dir in $(lisp) $(WINS); do \ 290 for dir in $(lisp) $(WINS); do \
260 for el in $$dir/*.el; do \ 291 for el in $$dir/*.el; do \
261 if test -f $$el; \ 292 if test -f $$el; \
262 then \ 293 then \
263 echo Compiling $$el; \ 294 echo Compiling $$el; \
264 $(emacs) -f batch-byte-compile-if-not-done $$el; \ 295 $(emacs) -l loaddefs -f batch-byte-compile-if-not-done $$el; \
265 fi \ 296 fi \
266 done; \ 297 done; \
267 done 298 done
@@ -324,7 +355,7 @@ recompile: doit
324# bootstrap-emacs will be built from sources only. 355# bootstrap-emacs will be built from sources only.
325 356
326# Need separate version for sh and native cmd.exe 357# Need separate version for sh and native cmd.exe
327bootstrap-clean: bootstrap-clean-$(SHELLTYPE) 358bootstrap-clean: bootstrap-clean-$(SHELLTYPE) loaddefs.el
328 359
329bootstrap-clean-CMD: 360bootstrap-clean-CMD:
330# if exist $(EMACS) $(MAKE) $(MFLAGS) autoloads 361# if exist $(EMACS) $(MAKE) $(MFLAGS) autoloads