bug-automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Exhuberant Tags and make tags


From: Akim Demaille
Subject: Exhuberant Tags and make tags
Date: Sat, 01 Mar 2003 12:22:11 +0100
User-agent: Gnus/5.090015 (Oort Gnus v0.15) Emacs/21.2

There is a portability problem with CVS Automake's way of attacking
etags to compile several TAGS files:

| tags=; \
| here=`pwd`; \
| list='config po lib data src doc m4 tests'; for subdir in $list; do \
|   if test "$subdir" = .; then :; else \
|     test -f $subdir/TAGS && tags="$tags -i $here/$subdir/TAGS"; \
|   fi; \
| done; \
| list='  config.hin  '; \
| unique=`for i in $list; do \
|     if test -f "$i"; then echo $i; else echo ./$i; fi; \
|   done | \
|   gawk '    { files[$0] = 1; } \
|        END { for (i in files) print i; }'`; \
| test -z "$tags$unique" \
|   || etags    \
|      $tags $unique
| etags: Warning: -i option is deprecated; use --c-types option instead
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'h' for -i option
| etags: Warning: Unsupported parameter 'o' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'a' for -i option
| etags: Warning: Unsupported parameter 'k' for -i option
| etags: Warning: Unsupported parameter 'i' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'r' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'b' for -i option
| etags: Warning: Unsupported parameter 'i' for -i option
| etags: Warning: Unsupported parameter 'o' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'l' for -i option
| etags: Warning: Unsupported parameter 'i' for -i option
| etags: Warning: Unsupported parameter 'b' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'T' for -i option
| etags: Warning: Unsupported parameter 'A' for -i option
| etags: Warning: Unsupported parameter 'G' for -i option
| etags: Warning: -i option is deprecated; use --c-types option instead
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'h' for -i option
| etags: Warning: Unsupported parameter 'o' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'a' for -i option
| etags: Warning: Unsupported parameter 'k' for -i option
| etags: Warning: Unsupported parameter 'i' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'r' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'b' for -i option
| etags: Warning: Unsupported parameter 'i' for -i option
| etags: Warning: Unsupported parameter 'o' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'r' for -i option
| etags: Warning: Unsupported parameter '/' for -i option
| etags: Warning: Unsupported parameter 'T' for -i option
| etags: Warning: Unsupported parameter 'A' for -i option
| etags: Warning: Unsupported parameter 'G' for -i option

~/src/bison % etags --version                                    nostromo 12:08
Exuberant Ctags 5.4, Copyright (C) 1996-2002 Darren Hiebert
  Compiled: Oct 18 2002, 01:51:23
  Addresses: <address@hidden>, http://ctags.sourceforge.net
  Optional compiled features: +wildcards, +regex



I think that the intend meaning is:

       --etags-include=file
            Include a reference to file in the tag file. This  option  may  be
            specified  as many times as desired. This supports Emacs' capabil-
            ity to use a tag file which "includes" other tag files. [Available
            only in etags mode]


I suggest the appended patch.  But first, a warning:

~/src/bison % etags --etags-include src/TAGS                     nostromo 12:17
~/src/bison % cat TAGS                                           nostromo 12:18

,include
~/src/bison % etags --etags-include=src/TAGS                     nostromo 12:18
~/src/bison % cat TAGS                                           nostromo 12:18

src/TAGS,include


Index: ChangeLog
from  Akim Demaille  <address@hidden>

        * lib/am/tags.am (TAGS): Use --etags-include, not -i, that is
        not recognized by Exuberant Ctags.

Index: lib/am/tags.am
===================================================================
RCS file: /cvs/automake/automake/lib/am/tags.am,v
retrieving revision 1.38
diff -u -u -r1.38 tags.am
--- lib/am/tags.am 10 Jul 2002 05:36:46 -0000 1.38
+++ lib/am/tags.am 1 Mar 2003 11:19:37 -0000
@@ -1,5 +1,5 @@
 ## automake - create Makefile.in from Makefile.am
-## Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003
 ## Free Software Foundation, Inc.
 
 ## This program is free software; you can redistribute it and/or modify
@@ -53,7 +53,9 @@
 ?SUBDIRS?      list='$(SUBDIRS)'; for subdir in $$list; do \
 ## Do nothing if we're trying to look in `.'.
 ?SUBDIRS?        if test "$$subdir" = .; then :; else \
-?SUBDIRS?          test -f $$subdir/TAGS && tags="$$tags -i 
$$here/$$subdir/TAGS"; \
+?SUBDIRS?          test -f $$subdir/TAGS && \
+## Note that the = is mandatory for --etags-include.
+?SUBDIRS?            tags="$$tags --etags-include=$$here/$$subdir/TAGS"; \
 ?SUBDIRS?        fi; \
 ?SUBDIRS?      done; \
 ## Make sure the list of sources is unique.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]