ctags/ctags.spec

188 lines
6.2 KiB
RPMSpec

#
# spec file for package ctags (Version 2006.12.30)
#
# Copyright (c) 2006 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.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: ctags
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
Release: 1
Summary: A Program to Generate Tag Files for Use with vi and Other Editors
URL: http://ctags.sourceforge.net/
Source0: ftp://ftp.sourceforge.net/pub/sourceforge/c/ct/ctags/ctags-%{exuberant_ver}.tar.gz
Source1: etags-%{emacs_ver}.tar.gz
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
CTags (from Darren Hiebert) generates tag files from source code in C,
C++, Eiffel, Fortran, and Java to be used with vi and its derivatives,
Emacs, and several other editors.
ETags (from GNU Emacs sources) generates tag files from source code in
Pascal, Cobol, Ada, Perl, LaTeX, Scheme, Emacs Lisp/Common Lisp,
Postscript, Erlang, Python, Prolog, and most assembler-like syntaxes.
Authors:
--------
Darren Hiebert <darren@hiebert.com>
Ken Arnold
Francesco Potortì <pot@gnu.org>
%prep
%setup -n ctags-%{exuberant_ver} -b 1
%patch
%patch1
cd ../etags-%{emacs_ver}
%patch2
%patch3
%build
CC=gcc
CFLAGS="$RPM_OPT_FLAGS -Wall"
export CFLAGS CC
./configure --prefix=/usr --mandir=%{_mandir} --disable-etags
make
cd ../etags-%{emacs_ver}
CFLAGS="$CFLAGS -I../ctags-%{exuberant_ver}"
CFLAGS="$CFLAGS -DHAVE_CONFIG_H -DHAVE_UNISTD_H -DHAVE_GETCWD -DVERSION=\"%{emacs_ver}\""
$CC $CFLAGS -o etags etags.c
$CC $CFLAGS -DCTAGS -o gnuctags etags.c
%install
make install prefix=$RPM_BUILD_ROOT/usr mandir=$RPM_BUILD_ROOT%{_mandir}
mkdir -p $RPM_BUILD_ROOT%{_docdir}/ctags/Exuberant_Ctags
install -m 644 COPYING EXTENDING.html FAQ README $RPM_BUILD_ROOT%{_docdir}/ctags/Exuberant_Ctags
install -m 644 %{S:2} $RPM_BUILD_ROOT%{_docdir}/ctags
cd ../etags-%{emacs_ver}
install -m 755 etags gnuctags $RPM_BUILD_ROOT/usr/bin
install -m 644 etags.1 $RPM_BUILD_ROOT%{_mandir}/man1
ln -sf etags.1.gz $RPM_BUILD_ROOT%{_mandir}/man1/gnuctags.1.gz
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
/usr/bin/ctags
/usr/bin/gnuctags
/usr/bin/etags
%{_mandir}/man1/ctags.1.gz
%{_mandir}/man1/gnuctags.1.gz
%{_mandir}/man1/etags.1.gz
%{_docdir}/ctags
%changelog -n ctags
* Sat Dec 30 2006 - schwab@suse.de
- Fix handling of relative names in #line.
* Wed Dec 20 2006 - schwab@suse.de
- Update etags from CVS.
* Tue May 30 2006 - schwab@suse.de
- Update to ctags 5.6
* Reformatted code for independence of tab stop setting.
* Changed default configuration to disable installation of etags links.
* Changed --langmap to first unmap each supplied extension from other
languages.
* Added support for ASP constants [ASP, Patch #961842].
* Added support for GNU make extensions [Make].
* Added .mk as extension recognized as a make language file [Make].
* Added missing help for list-maps options [Bug #1201826].
* Added new extension field "typeref" [thanks to Bram Moolenaar].
* Extended functionality of Ruby parser with patch from Elliot Hughes
[Ruby].
* Fixed creation of TAGS file with etags-include but no files [Bug
[#941233]].
* Fixed problem reading last line of list file (-L) without final
newline.
* Fixed infinite loop that could occur on files without final newline
[C, Java].
* Fixed incorrect tag for first field of table [SQL].
* Fixed missing tags for functions beginning with underscore [Sh].
* Fixed missing tags for functions with variable arg list [C, Bug
[#1201689]].
* Fixed parsing problem with parentheses in argument list [C, Bug
[#1085585]].
* Fixed problem in preprocessor directive handling [C, Bug #1086609].
- Update etags to 17.17.
* Tue Mar 07 2006 - od@suse.de
- wrote and added a YCP parser based on the C code parser
(ctags-5.5.4-ycp-parser.diff)
* Wed Jan 25 2006 - mls@suse.de
- converted neededforbuild to BuildRequires
* Wed Dec 07 2005 - od@suse.de
- Added option -A/--allow-duplicates to gnuctags
* Wed Dec 07 2005 - od@suse.de
- Don't strip etags/gnuctags
* Tue Oct 18 2005 - schwab@suse.de
- Update to etags 17.14.
* Mon Nov 15 2004 - schwab@suse.de
- Update to etags 17.5.
* Tue May 04 2004 - schwab@suse.de
- Update to ctags 5.5.4.
* Sat Jan 10 2004 - adrian@suse.de
- add %%defattr
* Fri Sep 26 2003 - schwab@suse.de
- Update to ctags 5.5.2.
* Tue Aug 05 2003 - schwab@suse.de
- Update to ctags 5.5.1.
* Wed Apr 02 2003 - schwab@suse.de
- Update to ctags 5.5.
- Update to etags 16.56.
* Tue Sep 17 2002 - ro@suse.de
- removed bogus self-provides
* Tue Sep 17 2002 - schwab@suse.de
- Update to ctags 5.3.1.
* Thu Jul 18 2002 - schwab@suse.de
- Update to ctags 5.3.
* Fri Dec 14 2001 - schwab@suse.de
- Update ctags to 5.1.
- Update etags to 14.21.
* Thu May 18 2000 - schwab@suse.de
- Use BuildRoot.
- Remove etags.c changes again.
* Wed May 17 2000 - kasal@suse.cz
- strip etags/gnuctags
- Fixed etags.c changes
* Mon May 15 2000 - schwab@suse.de
- Discard etags.c changes (#2772).
* Mon Jan 31 2000 - werner@suse.de
- Really rename gctags to gnuctags
* Mon Jan 31 2000 - kasal@suse.cz
- fixed spec file to really use the *dif files
- gctags renamed to gnuctags
- rewrote the NOTEs in the manpages and added
"see also (gnu)ctags(1), gctags(1) and global(1)"
- etags.c now uses #ifdef's
* Wed Jan 26 2000 - werner@suse.de
- New ctags version 3.3.1
* Disable etags (is usable with `ctags -e')
- Add etags/ctags from Emacs sources
* rename this ctags with gctags
- Make some NOTEs within the manual pages of both packages
- Add a README.SuSE to explain why we have two versions
* Mon Sep 13 1999 - bs@suse.de
- ran old prepare_spec on spec file to switch to new prepare_spec.
* Wed Sep 08 1999 - schwab@suse.de
- specfile cleanup
* Tue Jun 15 1999 - uli@suse.de
- update -> 3.2.2
* Sun Apr 13 1997 - florian@suse.de
- new package with ctags 1.5 (used to be together with vim.tgz)