diff --git a/Makefile.in b/Makefile.in index b6cd04d1f3d..53703638c42 100644 --- a/Makefile.in +++ b/Makefile.in @@ -944,7 +944,9 @@ extraclean: $(extraclean_dirs:=_extraclean) # The src subdir knows how to do the right thing # even when the build directory and source dir are different. .PHONY: TAGS tags -TAGS tags: lib lib-src src +# FIXME: We used to include `src` in the dependencies, not sure why. +# I removed it because it causes `make tags` to build Emacs. +TAGS tags: lib lib-src # src $(MAKE) -C src tags .PHONY: have-tests diff --git a/src/Makefile.in b/src/Makefile.in index 7eb58732672..5890eac8c63 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -720,7 +720,10 @@ ETAGS = ../lib-src/etags${EXEEXT} ${ETAGS}: FORCE ${MAKE} -C ../lib-src $(notdir $@) -ctagsfiles1 = $(wildcard ${srcdir}/*.[hc]) +# Remove macuvs.h and fingerprint.c since they'd cause `src/emacs` +# to be built before we can get TAGS. +ctagsfiles1 = $(filter-out ${srcdir}/macuvs.h ${srcdir}/fingerprint.c, \ + $(wildcard ${srcdir}/*.[hc])) ctagsfiles2 = $(wildcard ${srcdir}/*.m) ## In out-of-tree builds, TAGS are generated in the build dir, like