aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGlenn Morris2013-11-02 12:18:50 -0700
committerGlenn Morris2013-11-02 12:18:50 -0700
commitb0b9e5923267012e5c4f3523ee601c229ea85232 (patch)
treeeae7642a57eb26e46185d176f8c65033a21a0f8b /src
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 'src')
-rw-r--r--src/ChangeLog11
-rw-r--r--src/Makefile.in35
2 files changed, 32 insertions, 14 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 1cea67b8689..99d19cd68c7 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,14 @@
12013-11-02 Glenn Morris <rgm@gnu.org>
2
3 * Makefile.in (abs_srcdir): New, set by configure.
4 (maintainer-clean): Remove pointless echo. That should be in the
5 top-level Makefile, if anywhere. Delete TAGS-LISP.
6 (extraclean): No s/ and m/ directories for some time.
7 (TAGS): Remove no-longer-defined S_FILE.
8 Pass absolute filenames to etags once more.
9 (TAGS-LISP, $(lwlibdir)/TAGS): Correctly pass ETAGS to sub-makes.
10 ($(lwlibdir)/TAGS): Remove useless subshell, check cd return value.
11
12013-11-02 Jan Djärv <jan.h.d@swipnet.se> 122013-11-02 Jan Djärv <jan.h.d@swipnet.se>
2 13
3 * xfaces.c (check_lface_attrs, realize_default_face): Add 14 * xfaces.c (check_lface_attrs, realize_default_face): Add
diff --git a/src/Makefile.in b/src/Makefile.in
index 21d92463f20..c61ff2ddd46 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -28,6 +28,7 @@ SHELL = @SHELL@
28# Here are the things that we expect ../configure to edit. 28# Here are the things that we expect ../configure to edit.
29# We use $(srcdir) explicitly in dependencies so as not to depend on VPATH. 29# We use $(srcdir) explicitly in dependencies so as not to depend on VPATH.
30srcdir = @srcdir@ 30srcdir = @srcdir@
31abs_srcdir = @abs_srcdir@
31# MinGW CPPFLAGS may use this. 32# MinGW CPPFLAGS may use this.
32abs_top_srcdir=@abs_top_srcdir@ 33abs_top_srcdir=@abs_top_srcdir@
33ntsource = $(srcdir)/../nt 34ntsource = $(srcdir)/../nt
@@ -580,38 +581,44 @@ bootstrap-clean: clean
580 if test -f "$(srcdir)/.gdbinit"; then rm -f ./.gdbinit.save; \ 581 if test -f "$(srcdir)/.gdbinit"; then rm -f ./.gdbinit.save; \
581 else mv ./.gdbinit.save ./.gdbinit; fi; \ 582 else mv ./.gdbinit.save ./.gdbinit; fi; \
582 fi 583 fi
583## This is used in making a distribution. 584
584## Do not use it on development directories!
585distclean: bootstrap-clean 585distclean: bootstrap-clean
586 rm -f Makefile 586 rm -f Makefile
587
587maintainer-clean: distclean 588maintainer-clean: distclean
588 @echo "This command is intended for maintainers to use;" 589 rm -f TAGS TAGS-LISP
589 @echo "it deletes files that may require special tools to rebuild."
590 rm -f TAGS
591versionclean: 590versionclean:
592 -rm -f emacs$(EXEEXT) emacs-*.*.*$(EXEEXT) ../etc/DOC* 591 -rm -f emacs$(EXEEXT) emacs-*.*.*$(EXEEXT) ../etc/DOC*
593extraclean: distclean 592extraclean: distclean
594 -rm -f *~ \#* m/?*~ s/?*~ 593 -rm -f *~ \#*
594
595 595
596## Arrange to make a tags table TAGS-LISP for ../lisp, 596ETAGS = ../lib-src/etags
597## plus TAGS for the C files, which includes ../lisp/TAGS by reference.
598 597
599ctagsfiles1 = [xyzXYZ]*.[hc] 598ctagsfiles1 = [xyzXYZ]*.[hc]
600ctagsfiles2 = [a-wA-W]*.[hc] 599ctagsfiles2 = [a-wA-W]*.[hc]
601ctagsfiles3 = [a-zA-Z]*.m 600ctagsfiles3 = [a-zA-Z]*.m
602 601
603TAGS: $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(S_FILE) 602## FIXME? Do we really need to use absolute filenames here?
604 ../lib-src/etags --include=TAGS-LISP --include=$(lwlibdir)/TAGS \ 603
604## This does not need to depend on ../lisp and ../lwlib TAGS files,
605## because etags "--include" only includes a pointer to the file,
606## rather than the file contents.
607TAGS: $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(srcdir)/$(ctagsfiles3)
608 "$(ETAGS)" --include=TAGS-LISP --include=$(lwlibdir)/TAGS \
605 --regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' \ 609 --regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' \
606 $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(S_FILE) \ 610 "$(abs_srcdir)"/$(ctagsfiles1) "$(abs_srcdir)"/$(ctagsfiles2) \
607 --regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' \ 611 --regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' \
608 $(srcdir)/$(ctagsfiles3) 612 "$(abs_srcdir)"/$(ctagsfiles3)
613
614## Arrange to make tags tables for ../lisp and ../lwlib,
615## which the above TAGS file for the C files includes by reference.
609frc: 616frc:
610TAGS-LISP: frc 617TAGS-LISP: frc
611 $(MAKE) -f $(lispdir)/Makefile TAGS-LISP ETAGS=../lib-src/etags 618 $(MAKE) -f $(lispdir)/Makefile TAGS-LISP ETAGS="$(ETAGS)"
612 619
613$(lwlibdir)/TAGS: 620$(lwlibdir)/TAGS:
614 (cd $(lwlibdir); $(MAKE) -f $(lwlibdir)/Makefile tags ETAGS=../lib-src/etags) 621 cd $(lwlibdir) && $(MAKE) TAGS ETAGS="$(ETAGS)"
615 622
616tags: TAGS TAGS-LISP $(lwlibdir)/TAGS 623tags: TAGS TAGS-LISP $(lwlibdir)/TAGS
617.PHONY: tags 624.PHONY: tags