aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog9
-rw-r--r--lisp/Makefile.in53
-rw-r--r--lisp/loadup.el18
3 files changed, 40 insertions, 40 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index bed038f31ef..817dc58ecdd 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,12 @@
12008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * loadup.el: Don't add emacs-<VERS> name when bootstrapping.
4
5 * Makefile.in (emacs-deps): Remove.
6 ($(lisp)/cus-load.el, $(lisp)/finder-inf.el): Re-add.
7 (all): Use them.
8 (autogen-clean): Remove.
9
12008-06-20 Stefan Monnier <monnier@iro.umontreal.ca> 102008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
2 11
3 * Makefile.in (all): New target. 12 * Makefile.in (all): New target.
diff --git a/lisp/Makefile.in b/lisp/Makefile.in
index 9b354b9bdf6..0633324b714 100644
--- a/lisp/Makefile.in
+++ b/lisp/Makefile.in
@@ -77,8 +77,6 @@ COMPILE_FIRST = \
77# The actual Emacs command run in the targets below. 77# The actual Emacs command run in the targets below.
78 78
79emacs = EMACSLOADPATH=$(lisp) LC_ALL=C $(EMACS) $(EMACSOPT) 79emacs = EMACSLOADPATH=$(lisp) LC_ALL=C $(EMACS) $(EMACSOPT)
80# Prerequisites for running $(emacs)
81emacs-deps = $(lisp)/subdirs.el
82 80
83# Common command to find subdirectories 81# Common command to find subdirectories
84 82
@@ -100,7 +98,9 @@ setwins_almost=subdirs=`(cd $$wd; find . -type d -print)`; \
100 98
101# `compile-main' tends to be slower than `recompile' but can be parallelized 99# `compile-main' tends to be slower than `recompile' but can be parallelized
102# with "make -j" and results in more deterministic compilation warnings. 100# with "make -j" and results in more deterministic compilation warnings.
103all: compile-main 101# cus-load ans finder-inf are not explicitly requested by anything, so
102# we add them here to make sure they get built.
103all: compile-main $(lisp)/cus-load.el $(lisp)/finder-inf.el
104 104
105doit: 105doit:
106 106
@@ -117,27 +117,31 @@ doit:
117# bootstrap-after would modify loaddefs after src/emacs, resulting 117# bootstrap-after would modify loaddefs after src/emacs, resulting
118# in make install remaking src/emacs for no real reason: 118# in make install remaking src/emacs for no real reason:
119# http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg00311.html 119# http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg00311.html
120custom-deps: $(emacs-deps) doit 120$(lisp)/cus-load.el:
121 $(MAKE) $(MFLAGS) custom-deps
122custom-deps: doit
121 wd=$(lisp); $(setwins_almost); \ 123 wd=$(lisp); $(setwins_almost); \
122 echo Directories: $$wins; \ 124 echo Directories: $$wins; \
123 $(emacs) -l cus-dep --eval '(setq generated-custom-dependencies-file "$(lisp)/cus-load.el")' -f custom-make-dependencies $$wins 125 $(emacs) -l cus-dep --eval '(setq generated-custom-dependencies-file "$(lisp)/cus-load.el")' -f custom-make-dependencies $$wins
124 126
125finder-data: $(emacs-deps) doit 127$(lisp)/finder-inf.el:
128 $(MAKE) $(MFLAGS) finder-data
129finder-data: doit
126 wd=$(lisp); $(setwins_almost); \ 130 wd=$(lisp); $(setwins_almost); \
127 echo Directories: $$wins; \ 131 echo Directories: $$wins; \
128 $(emacs) -l finder --eval '(setq generated-finder-keywords-file "$(lisp)/finder-inf.el")' -f finder-compile-keywords-make-dist $$wins 132 $(emacs) -l finder --eval '(setq generated-finder-keywords-file "$(lisp)/finder-inf.el")' -f finder-compile-keywords-make-dist $$wins
129 133
130# The chmod +w is to handle env var CVSREAD=1. Files named 134# The chmod +w is to handle env var CVSREAD=1. Files named
131# are identified by being the value of `generated-autoload-file'. 135# are identified by being the value of `generated-autoload-file'.
132autoloads: $(emacs-deps) $(LOADDEFS) doit 136autoloads: $(LOADDEFS) doit
133 chmod +w $(lisp)/ps-print.el $(lisp)/emulation/tpu-edt.el \ 137 chmod +w $(lisp)/ps-print.el $(lisp)/emulation/tpu-edt.el \
134 $(lisp)/emacs-lisp/cl-loaddefs.el 138 $(lisp)/emacs-lisp/cl-loaddefs.el
135 wd=$(lisp); $(setwins_almost); \ 139 wd=$(lisp); $(setwins_almost); \
136 echo Directories: $$wins; \ 140 echo Directories: $$wins; \
137 $(emacs) -l autoload --eval '(setq generated-autoload-file "$(lisp)/loaddefs.el")' -f batch-update-autoloads $$wins 141 $(emacs) -l autoload --eval '(setq generated-autoload-file "$(lisp)/loaddefs.el")' -f batch-update-autoloads $$wins
138 142
139# Note: every rule that runs $(emacs) and is called during bootstrap must 143# This is required by the witness-emacs target in ../src/Makefile, so
140# depend on this. 144# we know that if we have an emacs executable, we also have a subdirs.el.
141$(lisp)/subdirs.el: 145$(lisp)/subdirs.el:
142 $(MAKE) $(MFLAGS) update-subdirs 146 $(MAKE) $(MFLAGS) update-subdirs
143update-subdirs: doit 147update-subdirs: doit
@@ -1254,7 +1258,7 @@ ELCFILES = \
1254 1258
1255.PHONY: compile-first compile-main compile-last compile compile-always 1259.PHONY: compile-first compile-main compile-last compile compile-always
1256 1260
1257compile-first: $(emacs-deps) $(LOADDEFS) autoloads $(COMPILE_FIRST) 1261compile-first: $(LOADDEFS) autoloads $(COMPILE_FIRST)
1258 for el in $(COMPILE_FIRST); do \ 1262 for el in $(COMPILE_FIRST); do \
1259 echo Compiling $$el; \ 1263 echo Compiling $$el; \
1260 $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile-if-not-done $$el || exit 1; \ 1264 $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile-if-not-done $$el || exit 1; \
@@ -1268,7 +1272,7 @@ compile-main: $(ELCFILES)
1268# Calling make recursively because suffix rule cannot have prerequisites. 1272# Calling make recursively because suffix rule cannot have prerequisites.
1269# Explicitly pass EMACS (sometimes ../src/bootstrap-emacs) to those 1273# Explicitly pass EMACS (sometimes ../src/bootstrap-emacs) to those
1270# sub-makes that run rules that use it, for the sake of some non-GNU makes. 1274# sub-makes that run rules that use it, for the sake of some non-GNU makes.
1271compile: $(emacs-deps) $(LOADDEFS) autoloads compile-first 1275compile: $(LOADDEFS) autoloads compile-first
1272 $(MAKE) $(MFLAGS) compile-main EMACS=$(EMACS) 1276 $(MAKE) $(MFLAGS) compile-main EMACS=$(EMACS)
1273 $(MAKE) $(MFLAGS) compile-last EMACS=$(EMACS) 1277 $(MAKE) $(MFLAGS) compile-last EMACS=$(EMACS)
1274 1278
@@ -1349,7 +1353,7 @@ MH_E_SRC = $(MH_E_DIR)/mh-acros.el $(MH_E_DIR)/mh-alias.el \
1349 $(MH_E_DIR)/mh-xface.el 1353 $(MH_E_DIR)/mh-xface.el
1350 1354
1351mh-autoloads: $(MH_E_DIR)/mh-loaddefs.el 1355mh-autoloads: $(MH_E_DIR)/mh-loaddefs.el
1352$(MH_E_DIR)/mh-loaddefs.el: $(emacs-deps) $(MH_E_SRC) 1356$(MH_E_DIR)/mh-loaddefs.el: $(MH_E_SRC)
1353 $(emacs) -l autoload \ 1357 $(emacs) -l autoload \
1354 --eval "(setq generate-autoload-cookie \";;;###mh-autoload\")" \ 1358 --eval "(setq generate-autoload-cookie \";;;###mh-autoload\")" \
1355 --eval "(setq generated-autoload-file \"$@\")" \ 1359 --eval "(setq generated-autoload-file \"$@\")" \
@@ -1371,21 +1375,21 @@ CAL_SRC = $(CAL_DIR)/cal-bahai.el $(CAL_DIR)/cal-china.el \
1371 $(CAL_DIR)/holidays.el $(CAL_DIR)/lunar.el \ 1375 $(CAL_DIR)/holidays.el $(CAL_DIR)/lunar.el \
1372 $(CAL_DIR)/solar.el 1376 $(CAL_DIR)/solar.el
1373 1377
1374$(CAL_DIR)/cal-loaddefs.el: $(emacs-deps) $(CAL_SRC) 1378$(CAL_DIR)/cal-loaddefs.el: $(CAL_SRC)
1375 $(emacs) -l autoload \ 1379 $(emacs) -l autoload \
1376 --eval "(setq generate-autoload-cookie \";;;###cal-autoload\")" \ 1380 --eval "(setq generate-autoload-cookie \";;;###cal-autoload\")" \
1377 --eval "(setq generated-autoload-file \"$@\")" \ 1381 --eval "(setq generated-autoload-file \"$@\")" \
1378 --eval "(setq make-backup-files nil)" \ 1382 --eval "(setq make-backup-files nil)" \
1379 -f batch-update-autoloads $(CAL_DIR) 1383 -f batch-update-autoloads $(CAL_DIR)
1380 1384
1381$(CAL_DIR)/diary-loaddefs.el: $(emacs-deps) $(CAL_SRC) 1385$(CAL_DIR)/diary-loaddefs.el: $(CAL_SRC)
1382 $(emacs) -l autoload \ 1386 $(emacs) -l autoload \
1383 --eval "(setq generate-autoload-cookie \";;;###diary-autoload\")" \ 1387 --eval "(setq generate-autoload-cookie \";;;###diary-autoload\")" \
1384 --eval "(setq generated-autoload-file \"$@\")" \ 1388 --eval "(setq generated-autoload-file \"$@\")" \
1385 --eval "(setq make-backup-files nil)" \ 1389 --eval "(setq make-backup-files nil)" \
1386 -f batch-update-autoloads $(CAL_DIR) 1390 -f batch-update-autoloads $(CAL_DIR)
1387 1391
1388$(CAL_DIR)/hol-loaddefs.el: $(emacs-deps) $(CAL_SRC) 1392$(CAL_DIR)/hol-loaddefs.el: $(CAL_SRC)
1389 $(emacs) -l autoload \ 1393 $(emacs) -l autoload \
1390 --eval "(setq generate-autoload-cookie \";;;###holiday-autoload\")" \ 1394 --eval "(setq generate-autoload-cookie \";;;###holiday-autoload\")" \
1391 --eval "(setq generated-autoload-file \"$@\")" \ 1395 --eval "(setq generated-autoload-file \"$@\")" \
@@ -1405,25 +1409,12 @@ $(CAL_DIR)/hol-loaddefs.el: $(emacs-deps) $(CAL_SRC)
1405# local changes. (Because loaddefs.el is an automatically generated 1409# local changes. (Because loaddefs.el is an automatically generated
1406# file, we don't want to store it in the source repository). 1410# file, we don't want to store it in the source repository).
1407 1411
1408autogen-clean: 1412bootstrap-clean:
1409 cd $(lisp); rm -f $(AUTOGENEL) 1413 cd $(lisp); rm -f *.elc */*.elc $(AUTOGENEL)
1410 1414
1411maintainer-clean: distclean bootstrap-clean 1415distclean: bootstrap-clean
1412
1413bootstrap-clean: autogen-clean
1414 cd $(lisp); rm -f *.elc */*.elc
1415
1416# Generate/update files for the bootstrap process.
1417
1418bootstrap: update-subdirs autoloads compile
1419
1420# Generate/update files after the bootstrap process.
1421# custom-deps needs `preloaded-file-list'.
1422
1423bootstrap-after: finder-data custom-deps
1424
1425distclean:
1426 -rm -f ./Makefile 1416 -rm -f ./Makefile
1417maintainer-clean: distclean
1427 1418
1428.PHONY: check-declare 1419.PHONY: check-declare
1429 1420
diff --git a/lisp/loadup.el b/lisp/loadup.el
index 805f82c09f4..eb51d10ee9e 100644
--- a/lisp/loadup.el
+++ b/lisp/loadup.el
@@ -343,14 +343,9 @@
343 (message "Dumping data as file temacs.dump") 343 (message "Dumping data as file temacs.dump")
344 (dump-emacs "temacs.dump" "temacs") 344 (dump-emacs "temacs.dump" "temacs")
345 (kill-emacs)) 345 (kill-emacs))
346 (let ((name (concat "emacs-" emacs-version))) 346 (if (memq system-type '(ms-dos windows-nt cygwin))
347 (while (string-match "[^-+_.a-zA-Z0-9]+" name) 347 (message "Dumping under the name emacs")
348 (setq name (concat (downcase (substring name 0 (match-beginning 0))) 348 (message "Dumping under the name emacs"))
349 "-"
350 (substring name (match-end 0)))))
351 (if (memq system-type '(ms-dos windows-nt cygwin))
352 (message "Dumping under the name emacs")
353 (message "Dumping under names emacs and %s" name)))
354 (condition-case () 349 (condition-case ()
355 (delete-file "emacs") 350 (delete-file "emacs")
356 (file-error nil)) 351 (file-error nil))
@@ -361,12 +356,17 @@
361 (dump-emacs "emacs" "temacs") 356 (dump-emacs "emacs" "temacs")
362 (message "%d pure bytes used" pure-bytes-used) 357 (message "%d pure bytes used" pure-bytes-used)
363 ;; Recompute NAME now, so that it isn't set when we dump. 358 ;; Recompute NAME now, so that it isn't set when we dump.
364 (if (not (memq system-type '(ms-dos windows-nt cygwin))) 359 (if (not (or (memq system-type '(ms-dos windows-nt cygwin))
360 ;; Don't bother adding another name if we're just
361 ;; building bootstrap-emacs.
362 (equal (nth 3 command-line-args) "bootstrap")
363 (equal (nth 4 command-line-args) "bootstrap")))
365 (let ((name (concat "emacs-" emacs-version))) 364 (let ((name (concat "emacs-" emacs-version)))
366 (while (string-match "[^-+_.a-zA-Z0-9]+" name) 365 (while (string-match "[^-+_.a-zA-Z0-9]+" name)
367 (setq name (concat (downcase (substring name 0 (match-beginning 0))) 366 (setq name (concat (downcase (substring name 0 (match-beginning 0)))
368 "-" 367 "-"
369 (substring name (match-end 0))))) 368 (substring name (match-end 0)))))
369 (message "Adding name %s" name)
370 (add-name-to-file "emacs" name t))) 370 (add-name-to-file "emacs" name t)))
371 (kill-emacs))) 371 (kill-emacs)))
372 372