nt/makefile.w32-in (frc, TAGS, TAGS-gmake, TAGS-nmake): New targets.
emacs-src.tags: New file.
src/makefile.w32-in (TAGS, frc, TAGS-LISP, ../nt/TAGS, tags)
(TAGS-gmake, TAGS-nmake, TAGS-LISP-gmake, TAGS-LISP-nmake)
(nt-TAGS-gmake, nt-TAGS-nmake): New targets.
lisp/makefile.w32-in (DEST, TAGS, TAGS-LISP, TAGS-nmake)
(TAGS-LISP-nmake, TAGS-gmake, TAGS-LISP-gmake, TAGS-SH)
(TAGS-LISP-SH, TAGS-CMD, TAGS-LISP-CMD): New targets.
lib-src/makefile.w32-in (tags, TAGS): New targets.
+2010-10-01 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (tags, TAGS): New targets.
+
2010-09-30 Juanma Barranquero <lekktu@gmail.com>
* emacsclient.c (get_server_config): Don't read Emacs pid from
getopt.h: getopt_.h
$(CP) $(ALL_DEPS) $@
+### TAGS ###
+
+tags: TAGS
+TAGS: $(BLD)/etags.exe *.c *.h
+ $(BLD)/etags.exe *.c *.h
+
### DEPENDENCIES ###
EMACS_ROOT = ..
+2010-10-01 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (DEST, TAGS, TAGS-LISP, TAGS-nmake)
+ (TAGS-LISP-nmake, TAGS-gmake, TAGS-LISP-gmake, TAGS-SH)
+ (TAGS-LISP-SH, TAGS-CMD, TAGS-LISP-CMD): New targets.
+
2010-10-01 Glenn Morris <rgm@gnu.org>
* obsolete/sc.el: Remove file.
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 \
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
2010-10-01 Eli Zaretskii <eliz@gnu.org>
+ * makefile.w32-in (frc, TAGS, TAGS-gmake, TAGS-nmake): New targets.
+
* gmake.defs: Add a comment with a single quote to fix
fontification. (Bug#7102)
--- /dev/null
+ This file defines the regular expressions for etags to look for
+ in the src directory. It is used by the w32 build to work around
+ the annoyances of quoting command-line arguments with various
+ w32 shell.
+
+/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/
\r
realclean: cleanall\r
- $(DEL_TREE) ../bin\r
+\r
+TAGS: TAGS-$(MAKETYPE)\r
+\r
+frc:\r
+TAGS-gmake: frc\r
+ ../lib-src/$(BLD)/etags $(CURDIR)/*.c\r
+ $(MAKE) $(MFLAGS) -C ../src TAGS TAGS-LISP\r
+ $(MAKE) $(MFLAGS) -C ../lib-src TAGS\r
+\r
+TAGS-nmake:\r
+ echo This target is not supported with NMake\r
+\r
+.PHONY: frc\r
+2010-10-01 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (TAGS, frc, TAGS-LISP, ../nt/TAGS, tags)
+ (TAGS-gmake, TAGS-nmake, TAGS-LISP-gmake, TAGS-LISP-nmake)
+ (nt-TAGS-gmake, nt-TAGS-nmake): New targets.
+
2010-09-30 Dan Nicolaescu <dann@ics.uci.edu>
* xml.c (parse_string): Use const.
- $(DEL_TREE) oo
- $(DEL_TREE) oo-spd
+## Arrange to make a tags table TAGS-LISP for ../lisp,
+## plus TAGS for the C files, which includes ../lisp/TAGS by reference.
+##
+## This works only with GNU Make.
+
+TAGS: $(OBJ0) $(OBJ1) $(WIN32OBJ)
+ $(MAKE) $(MFLAGS) TAGS-$(MAKETYPE)
+
+TAGS-LISP: $(OBJ0) $(OBJ1) $(WIN32OBJ)
+ $(MAKE) $(MFLAGS) TAGS-LISP-$(MAKETYPE)
+
+TAGS-gmake:
+ ../lib-src/$(BLD)/etags.exe --include=TAGS-LISP --include=../nt/TAGS \
+ --regex=@../nt/emacs-src.tags \
+ $(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(OBJ0))
+ ../lib-src/$(BLD)/etags.exe -a --regex=@../nt/emacs-src.tags \
+ $(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(OBJ1))
+ ../lib-src/$(BLD)/etags.exe -a --regex=@../nt/emacs-src.tags \
+ $(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(WIN32OBJ)) $(CURDIR)/*.h
+
+TAGS-nmake:
+ echo This target is not supported with NMake
+ exit -1
+
+frc:
+TAGS-LISP-gmake: frc
+ $(MAKE) $(MFLAGS) -C ../lisp TAGS-LISP DEST=../src
+
+TAGS-LISP-nmake:
+ echo This target is not supported with NMake
+ exit -1
+
+../nt/TAGS: frc
+ $(MAKE) $(MFLAGS) nt-TAGS-$(MAKETYPE)
+
+nt-TAGS-gmake:
+ $(MAKE) $(MFLAGS) -C ../nt TAGS
+
+nt-TAGS-nmake:
+ echo This target is not supported with NMake
+ exit -1
+
+tags: TAGS TAGS-LISP ../nt/TAGS
+.PHONY: tags
+
### DEPENDENCIES ###
EMACS_ROOT = ..