[PATCH] TAGS and tags targets for emacs, vi, etc users.

Rusty Russell (rusty@linuxcare.com.au)
Mon, 20 Dec 1999 13:18:57 +1100


Linus, please apply v. 2.3; everyone applies this patch themselves
when required, and it's a pain.

--- linux-2.3-official/Makefile Tue Nov 30 17:58:57 1999
+++ linux-2.3/Makefile Sun Dec 12 16:47:31 1999
@@ -323,6 +327,18 @@
fs lib mm ipc kernel drivers net: dummy
$(MAKE) $(subst $@, _dir_$@, $@)

+TAGS: dummy
+ etags `find include/asm-$(ARCH) -name '*.h'`
+ find include -type d \( -name "asm-*" -o -name config \) -prune -o -name '*.h' -print | xargs etags -a
+ find $(SUBDIRS) init -name '*.c' | xargs etags -a
+
+# Exuberant ctags works better with -I
+tags: dummy
+ CTAGSF=`ctags --version | grep -i exuberant >/dev/null && echo "-I __initdata,__initlocaldata,__exitdata,EXPORT_SYMBOL,EXPORT_SYMBOL_NOVERS"`; \
+ ctags $$CTAGSF `find include/asm-$(ARCH) -name '*.h'` && \
+ find include -type d \( -name "asm-*" -o -name config \) -prune -o -name '*.h' -print | xargs ctags $$CTAGSF -a && \
+ find $(SUBDIRS) init -name '*.c' | xargs ctags $$CTAGSF -a
+
MODFLAGS = -DMODULE
ifdef CONFIG_MODULES
ifdef CONFIG_MODVERSIONS
@@ -426,7 +442,7 @@
distclean: mrproper
rm -f core `find . \( -name '*.orig' -o -name '*.rej' -o -name '*~' \
-o -name '*.bak' -o -name '#*#' -o -name '.*.orig' \
- -o -name '.*.rej' -o -name '.SUMS' -o -size 0 \) -print` TAGS
+ -o -name '.*.rej' -o -name '.SUMS' -o -size 0 \) -print` TAGS tags

backup: mrproper
cd .. && tar cf - linux/ | gzip -9 > backup.gz

--
Hacking time.

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/