X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/b4aa60262c04e987eac02418262939cdefb8b7dc..78df961d5989299fc8e663fd83a33ea65256efdd:/lisp/Makefile.in diff --git a/lisp/Makefile.in b/lisp/Makefile.in index 81d7b1d184..8af24856d9 100644 --- a/lisp/Makefile.in +++ b/lisp/Makefile.in @@ -1,6 +1,6 @@ # Maintenance productions for the Lisp directory # Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, -# 2006, 2007 Free Software Foundation, Inc. +# 2006, 2007, 2008 Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -35,6 +35,12 @@ EMACS = ../src/emacs EMACSOPT = -batch --no-site-file --multibyte +# Extra flags to pass to the byte compiler +BYTE_COMPILE_EXTRA_FLAGS = +# For example to not display the undefined function warnings you can use this: +# BYTE_COMPILE_EXTRA_FLAGS = --eval '(setq byte-compile-warnings (quote (not unresolved)))' +# The example above is just for developers, it should not be used by default. + SOURCES = *.el COPYING Makefile lisptagsfiles1 = $(lisp)/[a-zA-Z]*.el lisptagsfiles2 = $(lisp)/[a-zA-Z]*/[a-zA-Z]*.el @@ -46,7 +52,9 @@ AUTOGENEL = loaddefs.el \ finder-inf.el \ subdirs.el \ eshell/esh-groups.el \ - mh-e/mh-loaddefs.el + mh-e/mh-loaddefs.el \ + international/charprop.el \ + international/uni-*.el # Files to compile before others during a bootstrap. This is done to # speed up the bootstrap process. The CC files are compiled first @@ -63,7 +71,7 @@ COMPILE_FIRST = \ # The actual Emacs command run in the targets below. -emacs = EMACSLOADPATH=$(lisp) $(EMACS) $(EMACSOPT) +emacs = EMACSLOADPATH=$(lisp) LC_ALL=C $(EMACS) $(EMACSOPT) # Common command to find subdirectories @@ -87,15 +95,19 @@ doit: $(lisp)/cus-load.el: touch $@ -custom-deps: $(lisp)/subdirs.el $(lisp)/loaddefs.el $(lisp)/cus-load.el doit +# Note that custom-deps and finder-data depend on autoloads rather +# than on loaddefs.el, so that autoloads does not run in parallel with +# them under "make -j", because that could delete loaddefs.el from +# under their feet. +custom-deps: $(lisp)/subdirs.el autoloads $(lisp)/cus-load.el doit wd=$(lisp); $(setwins_almost); \ echo Directories: $$wins; \ - $(EMACS) $(EMACSOPT) -l cus-dep --eval '(setq generated-custom-dependencies-file "$(lisp)/cus-load.el")' -f custom-make-dependencies $$wins + LC_ALL=C $(emacs) -l cus-dep --eval '(setq generated-custom-dependencies-file "$(lisp)/cus-load.el")' -f custom-make-dependencies $$wins -finder-data: $(lisp)/subdirs.el $(lisp)/loaddefs.el doit +finder-data: $(lisp)/subdirs.el autoloads doit wd=$(lisp); $(setwins_almost); \ echo Directories: $$wins; \ - $(EMACS) $(EMACSOPT) -l finder --eval '(setq generated-finder-keywords-file "$(lisp)/finder-inf.el")' -f finder-compile-keywords-make-dist $$wins + LC_ALL=C $(emacs) -l finder --eval '(setq generated-finder-keywords-file "$(lisp)/finder-inf.el")' -f finder-compile-keywords-make-dist $$wins $(lisp)/loaddefs.el: echo ";;; loaddefs.el --- automatically extracted autoloads" >> $@ @@ -110,7 +122,7 @@ $(lisp)/loaddefs.el: autoloads: $(lisp)/subdirs.el $(lisp)/loaddefs.el doit wd=$(lisp); $(setwins_almost); \ echo Directories: $$wins; \ - $(EMACS) $(EMACSOPT) -l autoload --eval '(setq generated-autoload-file "$(lisp)/loaddefs.el")' -f batch-update-autoloads $$wins + LC_ALL=C $(emacs) -l autoload --eval '(setq generated-autoload-file "$(lisp)/loaddefs.el")' -f batch-update-autoloads $$wins $(lisp)/subdirs.el: $(MAKE) $(MFLAGS) update-subdirs @@ -128,7 +140,7 @@ cvs-update: recompile autoloads finder-data custom-deps # Update the AUTHORS file. update-authors: - $(emacs) -l authors -f batch-update-authors $(srcdir)/AUTHORS $(srcdir) + $(emacs) -l authors -f batch-update-authors $(srcdir)/etc/AUTHORS $(srcdir) TAGS: $(lisptagsfiles1) $(lisptagsfiles2) els=`echo $(lisptagsfiles1) $(lisptagsfiles2) | sed -e "s,$(lisp)/loaddefs[^ ]*,," -e "s,$(lisp)/ldefs-boot[^ ]*,,"`; \ @@ -141,7 +153,7 @@ TAGS-LISP: $(lisptagsfiles1) $(lisptagsfiles2) .SUFFIXES: .elc .el .el.elc: $(lisp)/subdirs.el - -$(emacs) -f batch-byte-compile $< + -$(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $< # Compile all Lisp files, but don't recompile those that are up to # date. Some files don't actually get compiled because they set the @@ -166,7 +178,7 @@ compile: $(lisp)/subdirs.el mh-autoloads doit if test -f $$el; \ then \ echo Compiling $$el; \ - $(emacs) -f batch-byte-compile-if-not-done $$el || exit 1; \ + $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile-if-not-done $$el || exit 1; \ fi \ done @@ -185,14 +197,14 @@ compile-always: $(lisp)/subdirs.el mh-autoloads doit if test -f $$el; \ then \ echo Compiling $$el; \ - $(emacs) -f batch-byte-compile $$el || exit 1; \ + $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $$el || exit 1; \ fi \ done compile-calc: for el in `find $(lisp)/calc -name '*.el'`; do \ echo Compiling $$el; \ - $(emacs) -f batch-byte-compile $$el || exit 1; \ + $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $$el || exit 1; \ done # Backup compiled Lisp files in elc.tar.gz. If that file already @@ -210,7 +222,7 @@ compile-after-backup: backup-compiled-files compile-always # new ones. recompile: doit mh-autoloads $(lisp)/progmodes/cc-mode.elc - $(EMACS) $(EMACSOPT) --eval "(batch-byte-recompile-directory 0)" $(lisp) + LC_ALL=C $(emacs) --eval "(batch-byte-recompile-directory 0)" $(lisp) # CC Mode uses a compile time macro system which causes a compile time # dependency in cc-mode.elc on the macros in cc-langs.el and the @@ -219,7 +231,7 @@ $(lisp)/progmodes/cc-mode.elc: \ $(lisp)/progmodes/cc-mode.el \ $(lisp)/progmodes/cc-langs.el \ $(lisp)/progmodes/cc-defs.el - $(EMACS) $(EMACSOPT) -f batch-byte-compile $(lisp)/progmodes/cc-mode.el + $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $(lisp)/progmodes/cc-mode.el # Update MH-E internal autoloads. These are not to be confused with # the autoloads for the MH-E entry points, which are already in @@ -242,7 +254,7 @@ mh-autoloads: $(lisp)/mh-e/mh-loaddefs.el $(lisp)/mh-e/mh-loaddefs.el: $(lisp)/subdirs.el $(MH_E_SRC) echo ";;; mh-loaddefs.el --- automatically extracted autoloads" > $@ echo "" >> $@ - echo ";; Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc." >> $@ + echo ";; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc." >> $@ echo ";; Author: Bill Wohler " >> $@ echo ";; Keywords: mail" >> $@ echo ";;; Commentary:" >> $@ @@ -256,7 +268,7 @@ $(lisp)/mh-e/mh-loaddefs.el: $(lisp)/subdirs.el $(MH_E_SRC) echo ";; no-update-autoloads: t" >> $@ echo ";; End:" >> $@ echo ";;; mh-loaddefs.el ends here" >> $@ - $(EMACS) $(EMACSOPT) \ + $(emacs) \ -l autoload \ --eval "(setq generate-autoload-cookie \";;;###mh-autoload\")" \ --eval "(setq generated-autoload-file \"$(lisp)/mh-e/mh-loaddefs.el\")" \ @@ -275,6 +287,9 @@ $(lisp)/mh-e/mh-loaddefs.el: $(lisp)/subdirs.el $(MH_E_SRC) # an up-to-date copy of loaddefs.el that is uncorrupted by # local changes. (Because loaddefs.el is an automatically generated # file, we don't want to store it in the source repository). +# +# The chmod +w is to handle env var CVSREAD=1. Files named +# are identified by being the value of `generated-autoload-file'. bootstrap-prepare: if test -x $(EMACS); then \ @@ -282,10 +297,16 @@ bootstrap-prepare: else \ cp $(lisp)/ldefs-boot.el $(lisp)/loaddefs.el; \ fi + chmod +w $(lisp)/loaddefs.el \ + $(lisp)/ps-print.el \ + $(lisp)/emacs-lisp/cl-loaddefs.el -maintainer-clean: distclean - cd $(lisp); rm -f *.elc */*.elc $(AUTOGENEL) +maintainer-clean: distclean bootstrap-clean + cd $(lisp); rm -f $(AUTOGENEL) +## NB note that this rules assume only one level of subdirs below lisp/. +## If nested subdirs are added, it's probably time to switch to: +## find $(lisp) -name "*.elc" -exec rm -f '{}' ';' bootstrap-clean: cd $(lisp); rm -f *.elc */*.elc @@ -301,4 +322,10 @@ bootstrap-after: finder-data custom-deps distclean: -rm -f ./Makefile +.PHONY: check-declare + +check-declare: + $(emacs) -l $(lisp)/emacs-lisp/check-declare \ + --eval '(check-declare-directory "$(lisp)")' + # Makefile ends here.