]> code.delx.au - gnu-emacs/blobdiff - lisp/makefile.w32-in
Merge: current_column: Now returns EMACS_INT, fixing some iftc
[gnu-emacs] / lisp / makefile.w32-in
index 871b690f007b4f37baf0a8f4b9bf47facb8dcebd..0e3d54408fd27e3e9e1fc3054dcc179f65330120 100644 (file)
@@ -1,6 +1,5 @@
 # -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.
-# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-#   2009, 2010  Free Software Foundation, Inc.
+# Copyright (C) 2000-2011  Free Software Foundation, Inc.
 
 # This file is part of GNU Emacs.
 
@@ -32,10 +31,9 @@ srcdir = $(CURDIR)/..
 
 EMACS = $(THISDIR)/../bin/emacs.exe
 
-# Command line flags for Emacs.  This must include --multibyte,
-# otherwise some files will not compile.
+# Command line flags for Emacs.
 
-EMACSOPT = -batch --no-init-file --no-site-file --multibyte
+EMACSOPT = -batch --no-site-file --no-site-lisp
 
 # Extra flags to pass to the byte compiler
 BYTE_COMPILE_EXTRA_FLAGS =
@@ -51,12 +49,16 @@ LC_ALL = C
 
 lisptagsfiles1 = $(lisp)/*.el
 lisptagsfiles2 = $(lisp)/*/*.el
-ETAGS = "../lib-src/$(BLD)/etags"
+lisptagsfiles3 = $(lisp)/*/*/*.el
+lisptagsfiles4 = $(lisp)/*/*/*/*.el
+ETAGS = "../lib-src/$(BLD)/etags.exe"
+## $(DEST) is overridden by ../src/makefile.w32-in.
+DEST=$(lisp)
 
 # Automatically generated autoload files, apart from lisp/loaddefs.el.
 LOADDEFS = $(lisp)/calendar/cal-loaddefs.el \
        $(lisp)/calendar/diary-loaddefs.el $(lisp)/calendar/hol-loaddefs.el \
-       $(lisp)/mh-e/mh-loaddefs.el
+       $(lisp)/mh-e/mh-loaddefs.el $(lisp)/net/tramp-loaddefs.el
 
 AUTOGENEL = $(lisp)/loaddefs.el $(LOADDEFS) $(lisp)/cus-load.el \
        $(lisp)/finder-inf.el $(lisp)/subdirs.el $(lisp)/eshell/esh-groups.el \
@@ -245,11 +247,42 @@ cvs-update: bzr-update
 update-authors:
        $(emacs) -l authors -f batch-update-authors $(srcdir)/etc/AUTHORS $(srcdir)
 
-TAGS: $(lisptagsfiles1) $(lisptagsfiles2)
-       $(ETAGS) $(lisptagsfiles1) $(lisptagsfiles2)
+TAGS: TAGS-$(MAKETYPE)
 
-TAGS-LISP: $(lisptagsfiles1) $(lisptagsfiles2)
-       $(ETAGS) -o TAGS-LISP $(lisptagsfiles1) $(lisptagsfiles2)
+TAGS-LISP: TAGS-LISP-$(MAKETYPE)
+
+TAGS-nmake:
+       echo This target is not supported with NMake
+       exit -1
+
+TAGS-LISP-nmake:
+       echo This target is not supported with NMake
+       exit -1
+
+TAGS-gmake: TAGS-$(SHELLTYPE)
+
+TAGS-LISP-gmake: TAGS-LISP-$(SHELLTYPE)
+
+TAGS-SH: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4)
+       - $(DEL) TAGS
+       for dir in . $(WINS_UPDATES); do \
+         $(ETAGS) -a $(lisp)/$$dir/*.el; \
+       done
+
+TAGS-LISP-SH: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4)
+       - $(DEL) $(DEST)/TAGS-LISP
+       for dir in . $(WINS_UPDATES); do \
+         $(ETAGS) -a -o $(DEST)/TAGS-LISP $(lisp)/$$dir/*.el; \
+       done
+
+TAGS-CMD: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4)
+       - $(DEL) TAGS
+       for %%d in (. $(WINS_UPDATES)) do $(ETAGS) -a $(lisp)/%%d/*.el
+
+TAGS-LISP-CMD: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4)
+       - $(DEL) $(DEST)/TAGS-LISP
+       for %%d in (. $(WINS_UPDATES)) do \
+         $(ETAGS) -a -o $(DEST)/TAGS-LISP $(lisp)/%%d/*.el
 
 .SUFFIXES: .elc .el
 
@@ -404,6 +437,25 @@ $(lisp)/mh-e/mh-loaddefs.el: $(MH_E_SRC)
           -f w32-batch-update-autoloads \
           $(ARGQUOTE)$(lisp)/mh-e/mh-loaddefs.el$(ARGQUOTE) $(MAKE) ./mh-e
 
+# Update TRAMP internal autoloads. Maybe we could move tramp*.el into
+# its own subdirectory. OTOH, it does not hurt to keep them in
+# lisp/net.
+TRAMP_SRC = $(lisp)/net/tramp.el  $(lisp)/net/tramp-cache.el  \
+       $(lisp)/net/tramp-cmds.el $(lisp)/net/tramp-compat.el \
+       $(lisp)/net/tramp-ftp.el  $(lisp)/net/tramp-gvfs.el   \
+       $(lisp)/net/tramp-gw.el   $(lisp)/net/tramp-sh.el     \
+       $(lisp)/net/tramp-smb.el  $(lisp)/net/tramp-uu.el     \
+       $(lisp)/net/trampver.el
+
+$(lisp)/net/tramp-loaddefs.el: $(TRAMP_SRC)
+       "$(EMACS)" $(EMACSOPT) \
+          -l autoload \
+          --eval $(ARGQUOTE)(setq generate-autoload-cookie $(DQUOTE);;;###tramp-autoload$(DQUOTE))$(ARGQUOTE) \
+          --eval $(ARGQUOTE)(setq find-file-suppress-same-file-warnings t)$(ARGQUOTE) \
+          --eval $(ARGQUOTE)(setq make-backup-files nil)$(ARGQUOTE) \
+          -f w32-batch-update-autoloads \
+          $(ARGQUOTE)$(lisp)/net/tramp-loaddefs.el$(ARGQUOTE) $(MAKE) ./net
+
 # Prepare a bootstrap in the lisp subdirectory.
 #
 # Build loaddefs.el to make sure it's up-to-date.  If it's not, that