aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorAndrew Innes <[email protected]>2003-01-15 12:14:05 +0000
committerAndrew Innes <[email protected]>2003-01-15 12:14:05 +0000
commite22b24eb87c4b02c55e8b38c16ca0194ec5115c0 (patch)
tree265ab2347a9168e08a496ae09115f7223fdebe79 /lisp
parente2f4caea36baf88c95a4fddc4f57c969d8f78834 (diff)
(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.
Diffstat (limited to 'lisp')
-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 31c39737c9..f23b49c4f8 100644
--- a/lisp/makefile.w32-in
+++ b/lisp/makefile.w32-in
@@ -171,9 +171,39 @@ finder-data: doit
$(emacs) -l finder -f finder-compile-keywords-make-dist $(lisp) $(WINS)
loaddefs.el:
+ $(MAKE) $(MFLAGS) loaddefs.el-$(SHELLTYPE)
+ cp loaddefs.el-$(SHELLTYPE) $@
+ rm loaddefs.el-$(SHELLTYPE)
+
+loaddefs.el-SH:
+ echo ";;; loaddefs.el --- automatically extracted autoloads" > $@
+ echo ";;" >> $@; echo ";;; Code:" >> $@
+ echo "(autoload 'define-minor-mode \"easy-mmode\")" >>$@
+ echo "(autoload 'define-ccl-program \"ccl\")" >>$@
+ echo "(autoload 'regexp-opt \"regexp-opt\")" >>$@
+ echo "(autoload 'string-to-list \"mule-util\")" >>$@
+ echo "(autoload 'define-derived-mode \"derived\")" >>$@
+ echo "(autoload 'encoded-kbd-mode \"encoded-kb\")" >>$@
+ echo "(defvar cvs-global-menu nil)" >>$@
+ echo " " >> $@
+ echo ";;; Local Variables:" >> $@
+ echo ";;; version-control: never" >> $@
+ echo ";;; no-byte-compile: t" >> $@
+ echo ";;; no-update-autoloads: t" >> $@
+ echo ";;; End:" >> $@
+ echo ";;; loaddefs.el ends here" >> $@
+
+loaddefs.el-CMD:
echo ;;; loaddefs.el --- automatically extracted autoloads> $@
echo ;;; Code:>> $@
- echo >> $@
+ echo (autoload 'define-minor-mode "easy-mmode")>> $@
+ echo (autoload 'define-ccl-program "ccl")>> $@
+ echo (autoload 'regexp-opt "regexp-opt")>> $@
+ echo (autoload 'string-to-list "mule-util")>> $@
+ echo (autoload 'define-derived-mode "derived")>> $@
+ echo (autoload 'encoded-kbd-mode "encoded-kb")>> $@
+ echo (defvar cvs-global-menu nil)>> $@
+ echo. >> $@
echo ;;; Local Variables:>> $@
echo ;;; version-control: never>> $@
echo ;;; no-byte-compile: t>> $@
@@ -205,8 +235,7 @@ update-subdirs-CMD: doit
echo ))>> subdirs.el
update-subdirs-SH: doit
- wd=$(lisp); $(setwins); \
- for file in $$wins; do \
+ for file in $(WINS); do \
$(srcdir)/update-subdirs $$file; \
done;
@@ -247,21 +276,23 @@ compile: subdirs.el compile-$(SHELLTYPE) doit
compile-CMD:
# -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @attrib -r %g
- for %f in ($(COMPILE_FIRST)) do $(emacs) -f batch-byte-compile %f
- for %f in (. $(WINS)) do for %g in (%f/*.el) do $(emacs) -f batch-byte-compile %f/%g
+ for %f in ($(COMPILE_FIRST)) do \
+ $(emacs) -l loaddefs -f batch-byte-compile-if-not-done %f
+ for %f in (. $(WINS)) do for %g in (%f/*.el) do \
+ $(emacs) -l loaddefs -f batch-byte-compile-if-not-done %f/%g
compile-SH:
# for elc in $(lisp)/*.elc $(lisp)/*/*.elc; do attrib -r $$elc; done
for el in $(COMPILE_FIRST); do \
echo Compiling $$el; \
- $(emacs) -f batch-byte-compile $$el; \
+ $(emacs) -l loaddefs -f batch-byte-compile-if-not-done $$el; \
done
for dir in $(lisp) $(WINS); do \
for el in $$dir/*.el; do \
if test -f $$el; \
then \
echo Compiling $$el; \
- $(emacs) -f batch-byte-compile-if-not-done $$el; \
+ $(emacs) -l loaddefs -f batch-byte-compile-if-not-done $$el; \
fi \
done; \
done
@@ -324,7 +355,7 @@ recompile: doit
# bootstrap-emacs will be built from sources only.
# Need separate version for sh and native cmd.exe
-bootstrap-clean: bootstrap-clean-$(SHELLTYPE)
+bootstrap-clean: bootstrap-clean-$(SHELLTYPE) loaddefs.el
bootstrap-clean-CMD:
# if exist $(EMACS) $(MAKE) $(MFLAGS) autoloads