aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorGlenn Morris2013-11-02 12:18:50 -0700
committerGlenn Morris2013-11-02 12:18:50 -0700
commitb0b9e5923267012e5c4f3523ee601c229ea85232 (patch)
treeeae7642a57eb26e46185d176f8c65033a21a0f8b /lisp
parent5246583bdbbf7f00daae1d94abfd17b28dcbddac (diff)
downloademacs-b0b9e5923267012e5c4f3523ee601c229ea85232.tar.gz
emacs-b0b9e5923267012e5c4f3523ee601c229ea85232.zip
Small Makefile cleanup mainly related to tags file generation
* src/Makefile.in (abs_srcdir): New, set by configure. (maintainer-clean): Remove pointless echo. That should be in the top-level Makefile, if anywhere. Delete TAGS-LISP. (extraclean): No s/ and m/ directories for some time. (TAGS): Remove no-longer-defined S_FILE. Pass absolute filenames to etags once more. (TAGS-LISP, $(lwlibdir)/TAGS): Correctly pass ETAGS to sub-makes. ($(lwlibdir)/TAGS): Remove useless subshell, check cd return value. * lisp/Makefile.in (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3) (lisptagsfiles4): Use absolute filenames again. (TAGS, TAGS-LISP): Not everything needs to run in one line. Remove all *loaddefs files, not just the first. Remove esh-groups. (maintainer-clean): Delete TAGS, TAGS-LISP. * lwlib/Makefile.in (abs_srcdir): New, set by configure. (ETAGS, ctagsfiles): New variables. (TAGS): Use ETAGS, ctagsfiles. Use absolute filenames again.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog8
-rw-r--r--lisp/Makefile.in33
2 files changed, 32 insertions, 9 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index fba59e1c8b8..8bdf2d3a83e 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,11 @@
12013-11-02 Glenn Morris <rgm@gnu.org>
2
3 * Makefile.in (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3)
4 (lisptagsfiles4): Use absolute filenames again.
5 (TAGS, TAGS-LISP): Not everything needs to run in one line.
6 Remove all *loaddefs files, not just the first. Remove esh-groups.
7 (maintainer-clean): Delete TAGS, TAGS-LISP.
8
12013-11-02 Bozhidar Batsov <bozhidar@batsov.com> 92013-11-02 Bozhidar Batsov <bozhidar@batsov.com>
2 10
3 * emacs-lisp/package.el (package-version-join): Recognize 11 * emacs-lisp/package.el (package-version-join): Recognize
diff --git a/lisp/Makefile.in b/lisp/Makefile.in
index 537603a3018..be7a413b15b 100644
--- a/lisp/Makefile.in
+++ b/lisp/Makefile.in
@@ -49,12 +49,6 @@ BYTE_COMPILE_EXTRA_FLAGS =
49# BYTE_COMPILE_EXTRA_FLAGS = --eval '(setq byte-compile-warnings (quote (not unresolved)))' 49# BYTE_COMPILE_EXTRA_FLAGS = --eval '(setq byte-compile-warnings (quote (not unresolved)))'
50# The example above is just for developers, it should not be used by default. 50# The example above is just for developers, it should not be used by default.
51 51
52lisptagsfiles1 = $(lisp)/*.el
53lisptagsfiles2 = $(lisp)/*/*.el
54lisptagsfiles3 = $(lisp)/*/*/*.el
55lisptagsfiles4 = $(lisp)/*/*/*/*.el
56ETAGS = ../lib-src/etags
57
58# Automatically generated autoload files, apart from lisp/loaddefs.el. 52# Automatically generated autoload files, apart from lisp/loaddefs.el.
59# Note this includes only those files that need special rules to 53# Note this includes only those files that need special rules to
60# build; ie it does not need to include things created via 54# build; ie it does not need to include things created via
@@ -217,10 +211,30 @@ bzr-update: compile finder-data custom-deps
217update-authors: 211update-authors:
218 $(emacs) -l authors -f batch-update-authors $(top_srcdir)/etc/AUTHORS $(top_srcdir) 212 $(emacs) -l authors -f batch-update-authors $(top_srcdir)/etc/AUTHORS $(top_srcdir)
219 213
214
215ETAGS = ../lib-src/etags
216
217## NB We use absolute filenames because ../src/Makefile calls this via
218## make -f ../lisp/Makefile.
219## FIXME? Can etags work ok with relative filenames?
220lisptagsfiles1 = $(abs_srcdir)/*.el
221lisptagsfiles2 = $(abs_srcdir)/*/*.el
222lisptagsfiles3 = $(abs_srcdir)/*/*/*.el
223lisptagsfiles4 = $(abs_srcdir)/*/*/*/*.el
224
225## Apparently the echo | sed | xargs is to stop the command line
226## getting too long on MS Windows. It will make no difference on
227## POSIX systems, where the shell does the globbing right away, before
228## passing the expanded arguments to echo.
220TAGS TAGS-LISP: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4) 229TAGS TAGS-LISP: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4)
221 rm -f $@; touch $@; \ 230 rm -f $@
222 echo $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4) | sed -e "s,$(lisp)/[^ ]*loaddefs[^ ]*,," -e "s,$(lisp)/ldefs-boot[^ ]*,," | \ 231 touch $@
223 xargs $(XARGS_LIMIT) ${ETAGS} -a -o $@ 232 echo $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsfiles4) | \
233 sed -e 's,$(abs_srcdir)/[^ ]*loaddefs[^ ]*,,g' \
234 -e 's,$(abs_srcdir)/ldefs-boot[^ ]*,,' \
235 -e 's,$(abs_srcdir)/[^ ]*esh-groups.el[^ ]*,,' | \
236 xargs $(XARGS_LIMIT) "$(ETAGS)" -a -o $@
237
224 238
225# The src/Makefile.in has its own set of dependencies and when they decide 239# The src/Makefile.in has its own set of dependencies and when they decide
226# that one Lisp file needs to be re-compiled, we had better recompile it as 240# that one Lisp file needs to be re-compiled, we had better recompile it as
@@ -444,6 +458,7 @@ distclean:
444 -rm -f ./Makefile $(lisp)/loaddefs.el~ 458 -rm -f ./Makefile $(lisp)/loaddefs.el~
445 459
446maintainer-clean: distclean bootstrap-clean 460maintainer-clean: distclean bootstrap-clean
461 rm -f TAGS TAGS-LISP
447 462
448.PHONY: check-declare 463.PHONY: check-declare
449 464