* src/Makefile.in (abs_srcdir): Remove it again.
(.PHONY): Remove frc.
(maintainer-clean): No more TAGS-LISP file.
(TAGS): Pass relative file names to etags.
(../lisp/TAGS): Rename from TAGS-LISP. Work in ../lisp.
* lisp/Makefile.in (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3)
(lisptagsfiles4, TAGS): Use relative file names.
(TAGS-LISP): Remove.
(maintainer-clean): No more TAGS-LISP file.
* lwlib/Makefile.in (abs_srcdir): Remove it again.
(ctagsfiles, TAGS): Use relative filenames.
* .bzrignore: Remove TAGS-LISP.
2013-11-02 Glenn Morris <rgm@gnu.org>
+ Use relative filenames in TAGS files.
+ * Makefile.in (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3)
+ (lisptagsfiles4, TAGS): Use relative file names.
+ (TAGS-LISP): Remove.
+ (maintainer-clean): No more TAGS-LISP file.
+
* Makefile.in (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3)
(lisptagsfiles4): Use absolute filenames again.
(TAGS, TAGS-LISP): Not everything needs to run in one line.
ETAGS = ../lib-src/etags
-## NB We use absolute filenames because ../src/Makefile calls this via
-## make -f ../lisp/Makefile.
-## FIXME? Can etags work ok with relative filenames?
-lisptagsfiles1 = $(abs_srcdir)/*.el
-lisptagsfiles2 = $(abs_srcdir)/*/*.el
-lisptagsfiles3 = $(abs_srcdir)/*/*/*.el
-lisptagsfiles4 = $(abs_srcdir)/*/*/*/*.el
+lisptagsfiles1 = $(srcdir)/*.el
+lisptagsfiles2 = $(srcdir)/*/*.el
+lisptagsfiles3 = $(srcdir)/*/*/*.el
+lisptagsfiles4 = $(srcdir)/*/*/*/*.el
## Apparently the echo | sed | xargs is to stop the command line
## getting too long on MS Windows. It will make no difference on
## POSIX systems, where the shell does the globbing right away, before
## passing the expanded arguments to echo.
-TAGS TAGS-LISP: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4)
+## The POSIX way would be to use find in a similar way to compile-main.
+## But maybe this is not even necessary any more now that this uses
+## relative filenames.
+TAGS: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4)
rm -f $@
touch $@
echo $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4) | \
- sed -e 's,$(abs_srcdir)/[^ ]*loaddefs[^ ]*,,g' \
- -e 's,$(abs_srcdir)/ldefs-boot[^ ]*,,' \
- -e 's,$(abs_srcdir)/[^ ]*esh-groups.el[^ ]*,,' | \
+ sed -e 's,$(srcdir)/[^ ]*loaddefs[^ ]*,,g' \
+ -e 's,$(srcdir)/ldefs-boot[^ ]*,,' \
+ -e 's,$(srcdir)/[^ ]*esh-groups.el[^ ]*,,' | \
xargs $(XARGS_LIMIT) "$(ETAGS)" -a -o $@
-rm -f ./Makefile $(lisp)/loaddefs.el~
maintainer-clean: distclean bootstrap-clean
- rm -f TAGS TAGS-LISP
+ rm -f TAGS
.PHONY: check-declare
2013-11-02 Glenn Morris <rgm@gnu.org>
+ Use relative filenames in TAGS files.
+ * Makefile.in (abs_srcdir): Remove it again.
+ (ctagsfiles, TAGS): Use relative filenames.
+
* Makefile.in (abs_srcdir): New, set by configure.
(ETAGS, ctagsfiles): New variables.
(TAGS): Use ETAGS, ctagsfiles. Use absolute filenames again.
# and set up to be configured by ../configure.
srcdir=@srcdir@
-abs_srcdir=@abs_srcdir@
# MinGW CPPFLAGS may use this.
abs_top_srcdir=@abs_top_srcdir@
VPATH=@srcdir@
ETAGS = ../lib-src/etags
-## FIXME? Does etags need to use absolute filenames?
-## See comments in lisp/Makefile.in, src/Makefile.in.
-ctagsfiles= *.[ch]
+ctagsfiles= $(srcdir)/*.[ch]
-TAGS: $(srcdir)/$(ctagsfiles)
- "$(ETAGS)" "$(abs_srcdir)"/$(ctagsfiles)
+TAGS: $(ctagsfiles)
+ "$(ETAGS)" $(ctagsfiles)
tags: TAGS
.PHONY: tags
2013-11-02 Glenn Morris <rgm@gnu.org>
+ Use relative filenames in TAGS files.
+ * Makefile.in (abs_srcdir): Remove it again.
+ (.PHONY): Remove frc.
+ (maintainer-clean): No more TAGS-LISP file.
+ (TAGS): Pass relative file names to etags.
+ (../lisp/TAGS): Rename from TAGS-LISP. Work in ../lisp.
+
* Makefile.in (abs_srcdir): New, set by configure.
(lispdir): Remove.
(maintainer-clean): Remove pointless echo. That should be in the
### @configure_input@
-# Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2013 Free Software
-# Foundation, Inc.
+# Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2013
+# Free Software Foundation, Inc.
# This file is part of GNU Emacs.
# Here are the things that we expect ../configure to edit.
# We use $(srcdir) explicitly in dependencies so as not to depend on VPATH.
srcdir = @srcdir@
-abs_srcdir = @abs_srcdir@
# MinGW CPPFLAGS may use this.
abs_top_srcdir=@abs_top_srcdir@
ntsource = $(srcdir)/../nt
cd ../nextstep && $(MAKE) $(MFLAGS) all
.PHONY: mostlyclean clean bootstrap-clean distclean maintainer-clean
-.PHONY: versionclean extraclean frc
+.PHONY: versionclean extraclean
mostlyclean:
rm -f temacs$(EXEEXT) core *.core \#* *.o libXMenu11.a liblw.a
rm -f Makefile
maintainer-clean: distclean
- rm -f TAGS TAGS-LISP
+ rm -f TAGS
versionclean:
-rm -f emacs$(EXEEXT) emacs-*.*.*$(EXEEXT) ../etc/DOC*
extraclean: distclean
ctagsfiles2 = [a-wA-W]*.[hc]
ctagsfiles3 = [a-zA-Z]*.m
-## FIXME? Do we really need to use absolute filenames here?
+## FIXME? In out-of-tree builds, should TAGS be generated in srcdir?
## This does not need to depend on ../lisp and ../lwlib TAGS files,
## because etags "--include" only includes a pointer to the file,
## rather than the file contents.
TAGS: $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(srcdir)/$(ctagsfiles3)
- "$(ETAGS)" --include=TAGS-LISP --include=$(lwlibdir)/TAGS \
+ "$(ETAGS)" --include=../lisp/TAGS --include=$(lwlibdir)/TAGS \
--regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' \
- "$(abs_srcdir)"/$(ctagsfiles1) "$(abs_srcdir)"/$(ctagsfiles2) \
+ $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) \
--regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' \
- "$(abs_srcdir)"/$(ctagsfiles3)
+ $(srcdir)/$(ctagsfiles3)
## Arrange to make tags tables for ../lisp and ../lwlib,
## which the above TAGS file for the C files includes by reference.
-frc:
-TAGS-LISP: frc
- $(MAKE) -f ../lisp/Makefile TAGS-LISP ETAGS="$(ETAGS)"
+../lisp/TAGS:
+ cd ../lisp && $(MAKE) TAGS ETAGS="$(ETAGS)"
$(lwlibdir)/TAGS:
cd $(lwlibdir) && $(MAKE) TAGS ETAGS="$(ETAGS)"
-tags: TAGS TAGS-LISP $(lwlibdir)/TAGS
+tags: TAGS ../lisp/TAGS $(lwlibdir)/TAGS
.PHONY: tags