lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 12 Mar 2012 00:34:58 -0700
From:	Stephen Boyd <sboyd@...eaurora.org>
To:	Yang Bai <hamo.by@...il.com>
CC:	mmarek@...e.cz, rostedt@...dmis.org, adobriyan@...il.com,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] Makefile: fix error when gen TAGS

On 3/12/2012 12:06 AM, Yang Bai wrote:
> On Mon, Mar 12, 2012 at 2:46 PM, Stephen Boyd<sboyd@...eaurora.org>  wrote:
>>
>> What does ctags --version print out for you? I'm not aware of exuberant tags
>> outputting files called TAGS (although etags would do that and then this
>> patch wouldn't make sense).
> hamo@...nity ~ $ ctags --version
> Exuberant Ctags 5.9~svn20110310, Copyright (C) 1996-2009 Darren Hiebert
>    Compiled: Nov  9 2011, 03:17:31
>    Addresses:<dhiebert@...rs.sourceforge.net>, http://ctags.sourceforge.net
>    Optional compiled features: +wildcards, +regex
>
> hamo@...nity ~ $ etags --version
> Exuberant Ctags 5.9~svn20110310, Copyright (C) 1996-2009 Darren Hiebert
>    Compiled: Nov  9 2011, 03:17:31
>    Addresses:<dhiebert@...rs.sourceforge.net>, http://ctags.sourceforge.net
>    Optional compiled features: +wildcards, +regex
>
> hamo@...nity ~ $ ls -l /usr/bin/etags
> lrwxrwxrwx 1 root root 23 Feb  8 17:48 /usr/bin/etags ->  /etc/alternatives/etags
> hamo@...nity ~ $ ls -l /etc/alternatives/etags
> lrwxrwxrwx 1 root root 24 Feb 15 10:06 /etc/alternatives/etags ->
> /usr/bin/ctags-exuberant
>
> So I think which kind of name Exuberant Ctags generates depends on argv[0].
>

Ah ok. How about this patch instead? Then we don't duplicate the sed 
statement.

---->8-------

diff --git a/scripts/tags.sh b/scripts/tags.sh
index 833813a..b390096 100755
--- a/scripts/tags.sh
+++ b/scripts/tags.sh
@@ -168,7 +168,7 @@ exuberant()
         --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
+       LANG=C sed -i -e '/^\([a-zA-Z_][a-zA-Z0-9_]*\)\t.*\t\/\^struct \1;.*\$\/;"\tx$/d' $2
  }

  emacs()
@@ -213,9 +213,9 @@ emacs()
  xtags()
  {
         if $1 --version 2>&1 | grep -iq exuberant; then
-               exuberant $1
+               exuberant $1 $2
         elif $1 --version 2>&1 | grep -iq emacs; then
-               emacs $1
+               emacs $1 $2
         else
                 all_sources | xargs $1 -a
          fi
@@ -244,11 +244,11 @@ case "$1" in

         "tags")
                 rm -f tags
-               xtags ctags
+               xtags ctags $1
                 ;;

         "TAGS")
                 rm -f TAGS
-               xtags etags
+               xtags etags $1
                 ;;
  esac


But then with your next patch maybe it would be better to just have a flag?

----8<-----

diff --git a/scripts/tags.sh b/scripts/tags.sh
index 833813a..4b1755d 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
@@ -244,11 +242,18 @@ case "$1" in

         "tags")
                 rm -f tags
-               xtags ctags
+               xtags ctags $1
+               remove_structs=y
                 ;;

         "TAGS")
                 rm -f TAGS
-               xtags etags
+               xtags etags $1
+               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


-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ