diff options
| author | Glenn Morris | 2016-01-06 18:25:47 -0500 |
|---|---|---|
| committer | Glenn Morris | 2016-01-06 18:25:47 -0500 |
| commit | c6d3c60f283a9c2071b4db185773a00e53e20a61 (patch) | |
| tree | 07222d80f5c1a4fd24cd9ea07e9911ff4bf009e6 /src | |
| parent | efa8087d4b681a6bf673ec6f2d8220bf98705e72 (diff) | |
| download | emacs-c6d3c60f283a9c2071b4db185773a00e53e20a61.tar.gz emacs-c6d3c60f283a9c2071b4db185773a00e53e20a61.zip | |
Build tweaks related to tags files.
* lib-src/Makefile.in (tagsfiles): New variable.
(TAGS): Also depend on the source files. Use our own etags program.
* lisp/Makefile.in (ETAGS): Add EXEEXT.
(lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
Remove.
(tagsfiles): New, replacing lisptagsfiles1 etc.
Remove irrelevant source files here rather than in the TAGS rule.
(${ETAGS}): New rule.
(TAGS): Also depend on the etags executable.
* lwlib/Makefile.in (EXEEXT): New, set by configure.
(ETAGS): Add EXEEXT.
(${ETAGS}): New rule.
(ctagsfiles): Use "wildcard".
(TAGS): Also depend on the etags executable.
* nt/Makefile.in (ETAGS, tagsfiles): New variables.
(${ETAGS}): New rule.
(TAGS): Fix dependencies.
* oldXMenu/Makefile.in (EXEEXT): New, set by configure.
(ETAGS): New variable, replacing $TAGS. Use our own etags program.
Remove "-t" argument.
(${ETAGS}): New rule.
(tagsfiles): New variable.
(TAGS): New rule, with proper dependencies.
* src/Makefile.in (ETAGS): Add EXEEXT. Add a build rule.
(ctagsfiles1, ctagsfiles2): Use "wildcard".
(ctagsfiles3): Remove.
(TAGS): Depend on etags.
(../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
directories decide if updates are needed.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Makefile.in | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/Makefile.in b/src/Makefile.in index f96ebb2aeeb..97505b98687 100644 --- a/src/Makefile.in +++ b/src/Makefile.in | |||
| @@ -649,32 +649,34 @@ extraclean: distclean | |||
| 649 | -rm -f *~ \#* | 649 | -rm -f *~ \#* |
| 650 | 650 | ||
| 651 | 651 | ||
| 652 | ETAGS = ../lib-src/etags | 652 | ETAGS = ../lib-src/etags${EXEEXT} |
| 653 | 653 | ||
| 654 | ctagsfiles1 = [xyzXYZ]*.[hc] | 654 | ${ETAGS}: FORCE |
| 655 | ctagsfiles2 = [a-wA-W]*.[hc] | 655 | ${MAKE} -C ../lib-src $(notdir $@) |
| 656 | ctagsfiles3 = [a-zA-Z]*.m | 656 | |
| 657 | ctagsfiles1 = $(wildcard ${srcdir}/*.[hc]) | ||
| 658 | ctagsfiles2 = $(wildcard ${srcdir}/*.m) | ||
| 657 | 659 | ||
| 658 | ## FIXME? In out-of-tree builds, should TAGS be generated in srcdir? | 660 | ## FIXME? In out-of-tree builds, should TAGS be generated in srcdir? |
| 659 | 661 | ||
| 660 | ## This does not need to depend on ../lisp and ../lwlib TAGS files, | 662 | ## This does not need to depend on ../lisp and ../lwlib TAGS files, |
| 661 | ## because etags "--include" only includes a pointer to the file, | 663 | ## because etags "--include" only includes a pointer to the file, |
| 662 | ## rather than the file contents. | 664 | ## rather than the file contents. |
| 663 | TAGS: $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(srcdir)/$(ctagsfiles3) | 665 | TAGS: ${ETAGS} $(ctagsfiles1) $(ctagsfiles2) |
| 664 | "$(ETAGS)" --include=../lisp/TAGS --include=$(lwlibdir)/TAGS \ | 666 | ${ETAGS} --include=../lisp/TAGS --include=$(lwlibdir)/TAGS \ |
| 665 | --regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/\1/' \ | 667 | --regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/\1/' \ |
| 666 | --regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"[^"]+",[ ]\([A-Za-z0-9_]+\)/\1/' \ | 668 | --regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"[^"]+",[ ]\([A-Za-z0-9_]+\)/\1/' \ |
| 667 | $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) \ | 669 | $(ctagsfiles1) \ |
| 668 | --regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/\1/' \ | 670 | --regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/\1/' \ |
| 669 | --regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"[^"]+",[ ]\([A-Za-z0-9_]+\)/\1/' \ | 671 | --regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"[^"]+",[ ]\([A-Za-z0-9_]+\)/\1/' \ |
| 670 | $(srcdir)/$(ctagsfiles3) | 672 | $(ctagsfiles2) |
| 671 | 673 | ||
| 672 | ## Arrange to make tags tables for ../lisp and ../lwlib, | 674 | ## Arrange to make tags tables for ../lisp and ../lwlib, |
| 673 | ## which the above TAGS file for the C files includes by reference. | 675 | ## which the above TAGS file for the C files includes by reference. |
| 674 | ../lisp/TAGS: | 676 | ../lisp/TAGS: FORCE |
| 675 | $(MAKE) -C ../lisp TAGS ETAGS="$(ETAGS)" | 677 | $(MAKE) -C ../lisp TAGS ETAGS="$(ETAGS)" |
| 676 | 678 | ||
| 677 | $(lwlibdir)/TAGS: | 679 | $(lwlibdir)/TAGS: FORCE |
| 678 | $(MAKE) -C $(lwlibdir) TAGS ETAGS="$(ETAGS)" | 680 | $(MAKE) -C $(lwlibdir) TAGS ETAGS="$(ETAGS)" |
| 679 | 681 | ||
| 680 | tags: TAGS ../lisp/TAGS $(lwlibdir)/TAGS | 682 | tags: TAGS ../lisp/TAGS $(lwlibdir)/TAGS |