aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYang Bai <hamo.by@gmail.com>2012-03-12 16:20:51 +0800
committerMichal Marek <mmarek@suse.cz>2012-03-26 22:22:15 +0200
commit66979224c0d288331edcadb1e6ebd978d920d476 (patch)
treecd111b785932b9b624356fbb965d57f3d35171d5
parent98bd46223322a84fdac235a0e40d97f9a1e3144c (diff)
scripts: refactor remove structure forward declarations
Since now it has some problems when generate TAGS, refactor this code. Now it will not show the error message and will remove declarations using emacs etags. Signed-off-by: Yang Bai <hamo.by@gmail.com> Reviewed-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Michal Marek <mmarek@suse.cz>
-rwxr-xr-xscripts/tags.sh11
1 files changed, 8 insertions, 3 deletions
diff --git a/scripts/tags.sh b/scripts/tags.sh
index 0bc8588b630..0d6004e2065 100755
--- a/scripts/tags.sh
+++ b/scripts/tags.sh
@@ -166,9 +166,6 @@ exuberant()
all_defconfigs | xargs -r $1 -a \
--langdef=dotconfig --language-force=dotconfig \
--regex-dotconfig='/^#?[[:blank:]]*(CONFIG_[[:alnum:]_]+)/\1/'
-
- # Remove structure forward declarations.
- LANG=C sed -i -e '/^\([a-zA-Z_][a-zA-Z0-9_]*\)\t.*\t\/\^struct \1;.*\$\/;"\tx$/d' tags
}
emacs()
@@ -233,6 +230,7 @@ if [ "${ARCH}" = "um" ]; then
fi
fi
+remove_structs=
case "$1" in
"cscope")
docscope
@@ -245,10 +243,17 @@ case "$1" in
"tags")
rm -f tags
xtags ctags
+ remove_structs=y
;;
"TAGS")
rm -f TAGS
xtags etags
+ remove_structs=y
;;
esac
+
+# Remove structure forward declarations.
+if [ -n $remove_structs ]; then
+ LANG=C sed -i -e '/^\([a-zA-Z_][a-zA-Z0-9_]*\)\t.*\t\/\^struct \1;.*\$\/;"\tx$/d' $1
+fi