OBS User unknown 2007-01-09 16:43:20 +00:00 committed by Git OBS Bridge
parent d5ac79e1c2
commit 960aaf2cea
6 changed files with 14 additions and 99 deletions

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Tue Jan 9 13:48:55 CET 2007 - schwab@suse.de
- More etags fixes from CVS.
-------------------------------------------------------------------
Sat Dec 30 10:36:34 CET 2006 - schwab@suse.de

View File

@ -1,7 +1,7 @@
#
# spec file for package ctags (Version 2006.12.30)
# spec file for package ctags (Version 2007.1.9)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
@ -15,8 +15,8 @@ License: GNU General Public License (GPL)
Group: Development/Tools/Navigators
Autoreqprov: on
%define exuberant_ver 5.6
%define emacs_ver 17.25
Version: 2006.12.30
%define emacs_ver 17.26
Version: 2007.1.9
Release: 1
Summary: A Program to Generate Tag Files for Use with vi and Other Editors
URL: http://ctags.sourceforge.net/
@ -26,7 +26,6 @@ Source2: README.SuSE
Patch0: ctags-%{exuberant_ver}.diff
Patch1: ctags-ycp-parser.diff
Patch2: etags-%{emacs_ver}.diff
Patch3: etags-gnuctags-allow-duplicates.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@ -52,7 +51,6 @@ Authors:
%patch1
cd ../etags-%{emacs_ver}
%patch2
%patch3
%build
CC=gcc
@ -90,6 +88,8 @@ rm -rf $RPM_BUILD_ROOT
%{_docdir}/ctags
%changelog -n ctags
* Tue Jan 09 2007 - schwab@suse.de
- More etags fixes from CVS.
* Sat Dec 30 2006 - schwab@suse.de
- Fix handling of relative names in #line.
* Wed Dec 20 2006 - schwab@suse.de

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2ecbf99c89ea63f4e516aa3798e8c0e0c70f2f79afd286edbfa1e63421cd1538
size 55432

3
etags-17.26.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:89c32356c97244e97bfc195d8426016c97663ebb2006b2c7bcc5b7514018a1dd
size 55594

View File

@ -1,90 +0,0 @@
--- etags.1
+++ etags.1
@@ -26,12 +26,12 @@
[\|\-\-help\|] [\|\-\-version\|]
\fIfile\fP .\|.\|.
-\fBgnuctags\fP [\|\-aCdgIRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
+\fBgnuctags\fP [\|\-aCdgIRVh\|] [\|\-ABtTuvwx\|] [\|\-l \fIlanguage\fP\|]
.if n .br
[\|\-o \fItagfile\fP\|] [\|\-r \fIregexp\fP\|]
[\|\-\-parse\-stdin=\fIfile\fP\|]
.br
-[\|\-\-append\|] [\|\-\-backward\-search\|]
+[\|\-\-allow\-duplicates\|] [\|\-\-append\|] [\|\-\-backward\-search\|]
[\|\-\-cxref\|] [\|\-\-defines\|] [\|\-\-forward\-search\|]
[\|\-\-globals\|] [\|\-\-ignore\-indentation\|]
[\|\-\-language=\fIlanguage\fP\|] [\|\-\-members\|]
@@ -75,6 +75,12 @@
\fBetags\fP does not recognize them.
The programs accept unambiguous abbreviations for long option names.
.TP
+.B \-A, \-\-allow\-duplicates
+Create entries for duplicate tags. Some editors accept tags files with
+entries for duplicate tags.
+Since this is the default behavior of \fBetags\fP, only \fBgnuctags\fP
+accepts this option.
+.TP
.B \-a, \-\-append
Append to existing tag file. (For \fBvi\fP-format tag files, see also
\fB\-\-update\fP.)
--- etags.c
+++ etags.c
@@ -444,6 +444,7 @@
*midtk = "ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz$0123456789";
static bool append_to_tagfile; /* -a: append to tags */
+static bool allow_duplicates; /* -A: allow duplicate tags */
/* The next four default to TRUE for etags, but to FALSE for ctags. */
static bool typedefs; /* -t: create tags for C and Ada typedefs */
static bool typedefs_or_cplusplus; /* -T: create tags for C typedefs, level */
@@ -496,6 +497,7 @@
{ "version", no_argument, NULL, 'V' },
#if CTAGS /* Ctags options */
+ { "allow-duplicates", no_argument, NULL, 'A' },
{ "backward-search", no_argument, NULL, 'B' },
{ "cxref", no_argument, NULL, 'x' },
{ "defines", no_argument, NULL, 'd' },
@@ -875,6 +877,12 @@
Absolute names are stored in the output file as they are.\n\
Relative ones are stored relative to the output file's directory.\n");
+ if (CTAGS)
+ {
+ puts ("-A, --allow-duplicates\n\
+ Allow duplicate tag entries.");
+ }
+
puts ("-a, --append\n\
Append tag entries to existing tags file.");
@@ -1175,7 +1183,7 @@
non-options arguments to be at the end, but leaves them alone. */
optstring = concat (NO_LONG_OPTIONS ? "" : "-",
"ac:Cf:Il:o:r:RSVhH",
- (CTAGS) ? "BxdtTuvw" : "Di:");
+ (CTAGS) ? "ABxdtTuvw" : "Di:");
while ((opt = getopt_long (argc, argv, optstring, longopts, NULL)) != EOF)
switch (opt)
@@ -1259,6 +1267,7 @@
case 'i': included_files[nincluded_files++] = optarg; break;
/* Ctags options. */
+ case 'A': allow_duplicates = TRUE; break;
case 'B': searchar = '?'; break;
case 'd': constantypedefs = TRUE; break;
case 't': typedefs = TRUE; break;
@@ -2167,8 +2176,10 @@
/*
* If this tag name matches an existing one, then
* do not add the node, but maybe print a warning.
+ * If duplicates are allowed, continue looking for
+ * a node with a branch where we can insert this node.
*/
- if (!dif)
+ if (!allow_duplicates && !dif)
{
if (np->fdp == cur_node->fdp)
{