summary refs log tree commit diff
diff options
context:
space:
mode:
authorRabin Vincent <rabin@rab.in>2009-01-25 18:39:12 +0530
committerSam Ravnborg <sam@ravnborg.org>2009-02-15 12:50:09 +0100
commit5123b327c107db9e560fd62d50c27a3816e5a078 (patch)
treec22d2ff66c636ad6dcef6fdf3fbb0ffa5a2f96df
parent953fae66d124486c9e284806429c52c5402f59ac (diff)
downloadlinux-5123b327c107db9e560fd62d50c27a3816e5a078.tar.gz
kbuild: add sys_* entries for syscalls in tags
Currently, it is no longer possible to use the tags file to jump to
system call function definitions with sys_foo, because the definitions
are obscured by use of the SYSCALL_DEFINE* macros.

This patch adds the appropriate option to ctags to make it see through
the macro.  Also, it adds the ENTRY() work already done for Exuberant
to Emacs too.

Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-rwxr-xr-xscripts/tags.sh7
1 files changed, 5 insertions, 2 deletions
diff --git a/scripts/tags.sh b/scripts/tags.sh
index 7e21e9146118..5bd8b1003d44 100755
--- a/scripts/tags.sh
+++ b/scripts/tags.sh
@@ -102,7 +102,8 @@ exuberant()
 	-I ____cacheline_internodealigned_in_smp                \
 	-I EXPORT_SYMBOL,EXPORT_SYMBOL_GPL                      \
 	--extra=+f --c-kinds=+px                                \
-	--regex-asm='/^ENTRY\(([^)]*)\).*/\1/'
+	--regex-asm='/^ENTRY\(([^)]*)\).*/\1/'                  \
+	--regex-c='/^SYSCALL_DEFINE[[:digit:]]?\(([^,)]*).*/sys_\1/'
 
 	all_kconfigs | xargs $1 -a                              \
 	--langdef=kconfig --language-force=kconfig              \
@@ -120,7 +121,9 @@ exuberant()
 
 emacs()
 {
-	all_sources | xargs $1 -a
+	all_sources | xargs $1 -a                               \
+	--regex='/^ENTRY(\([^)]*\)).*/\1/'                      \
+	--regex='/^SYSCALL_DEFINE[0-9]?(\([^,)]*\).*/sys_\1/'
 
 	all_kconfigs | xargs $1 -a                              \
 	--regex='/^[ \t]*\(\(menu\)*config\)[ \t]+\([a-zA-Z0-9_]+\)/\3/'