ctags/ctags.spec
2023-02-27 12:33:14 -05:00

318 lines
9.9 KiB
RPMSpec

Summary: A C programming language indexing and/or cross-reference tool
Name: ctags
Version: 5.8
Release: 23%{?dist}
License: GPLv2+ and LGPLv2+ and Public Domain
Group: Development/Tools
URL: http://ctags.sourceforge.net/
Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Patch0: ctags-5.7-destdir.patch
Patch1: ctags-5.7-segment-fault.patch
Patch2: ctags-5.8-css.patch
Patch3: ctags-5.8-ocaml-crash.patch
Patch4: ctags-5.8-cssparse.patch
Patch5: ctags-5.8-memmove.patch
Patch6: ctags-5.8-format-security.patch
Patch7: ctags-CVE-2014-7204.patch
Patch8: ctags-CVE-2022-4515.patch
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%description
Ctags generates an index (or tag) file of C language objects found in
C source and header files. The index makes it easy for text editors or
other utilities to locate the indexed items. Ctags can also generate a
cross reference file which lists information about the various objects
found in a set of C language files in human readable form. Exuberant
Ctags improves on ctags because it can find all types of C language tags,
including macro definitions, enumerated values (values inside enum{...}),
function and method definitions, enum/struct/union tags, external
function prototypes, typedef names and variable declarations. Exuberant
Ctags is far less likely to be fooled by code containing #if preprocessor
conditional constructs than ctags. Exuberant ctags supports output of
Emacs style TAGS files and can be used to print out a list of selected
objects found in source files.
Install ctags if you are going to use your system for C programming.
%package etags
Summary: Exuberant Ctags for emacs tag format
Group: Development/Tools
Requires: ctags = %{version}-%{release}
Requires: /usr/sbin/alternatives
%description etags
This package will generate tags in a format which GNU Emacs understand,
it's a alternativ implementation of the GNU etags program.
Note: some command line options is not compatible with GNU etags.
%prep
%setup -q
%patch0 -p1 -b .destdir
%patch1 -p1 -b .crash
%patch2 -p1 -b .css-support
%patch3 -p1 -b .ocaml-crash
%patch4 -p1 -b .cssparse-crash
%patch5 -p1 -b .memmove
%patch6 -p1 -b .fmt-sec
%patch7 -p1 -b .CVE-2014-7204
%patch8 -p1 -b .CVE-2022-4515
%build
%configure
make %{?_smp_mflags}
%install
rm -rf %{buildroot}
make DESTDIR=%{buildroot} install
pushd %{buildroot}%{_bindir}
ln -s ctags etags.ctags
popd
pushd %{buildroot}%{_mandir}/man1
ln -s ctags.1.gz etags.ctags.1.gz
popd
%posttrans etags
/usr/sbin/alternatives --install /usr/bin/etags emacs.etags /usr/bin/etags.ctags 20 \
--slave /usr/share/man/man1/etags.1.gz emacs.etags.man /usr/share/man/man1/ctags.1.gz
%postun etags
/usr/sbin/alternatives --remove etags /usr/bin/etags.ctags || :
%clean
rm -rf %{buildroot}
%files
%defattr(-, root, root, -)
%license COPYING
%doc EXTENDING.html FAQ NEWS README
%{_bindir}/%{name}
%{_mandir}/man1/%{name}.1*
%files etags
%defattr(-, root, root, -)
%license COPYING
%{_bindir}/etags.%{name}
%{_mandir}/man1/etags.%{name}.1*
%changelog
* Thu Dec 15 2022 Felipe Borges <feborges@redhat.com> - 5.8-23
- CVE-2022-4515, arbitrary code execution issue
Resolves: rhbz#2153787
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sun Feb 05 2017 Than Ngo <than@redhat.com> - - 5.8-19
- fixed bz#1418434, added missing %%license
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.8-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Tue Sep 30 2014 Than Ngo <than@redhat.com> - 5.8-16
- CVE-2014-7204, denial of service issue
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.8-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.8-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Apr 14 2014 Jaromir Capik <jcapik@redhat.com> - 5.8-13
- Fixing format-security flaws (#1037028)
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.8-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Thu Jun 13 2013 John Dennis <jdennis@redhat.com> - 5.8-11
- add ctags-5.8-memmove.patch
bug #284 absoluteFilename uses strcpy on overlapping strings
http://sourceforge.net/p/ctags/bugs/284/
The bug was fixed upstream on 2012-03-26 in the following commit
http://sourceforge.net/p/ctags/code/782/
ctags-5.8-memmove.patch simply adds the same patch as the above commit.
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.8-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Mon Nov 5 2012 Marcela Mašláňová <mmaslano@redhat.com> - 5.8-9
- fix license field again
* Thu Oct 18 2012 Than Ngo <than@redhat.com> - 5.8-8
- fix the crash in cssparse
* Thu Aug 02 2012 Than Ngo <than@redhat.com> - 5.8-7
- backport from upstream to fix several crashes in ocaml
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.8-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Wed Feb 08 2012 Than Ngo <than@redhat.com> - 5.8-5
- bz#786451, add css support
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.8-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Jan 4 2010 Marcela Mašláňová <mmaslano@redhat.com> - 5.8-2
- fix license tag
* Tue Sep 01 2009 Than Ngo <than@redhat.com> - 5.8-1
- 5.8
- apply patch to fix segment fault, thanks to Masatake YAMATO
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.7-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.7-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Tue Jul 29 2008 Than Ngo <than@redhat.com> 5.7-3
- add subpackage ctags-etags
* Tue Jul 15 2008 Tom "spot" Callaway <tcallawa@redhat.com> 5.7-2
- fix license tag
* Fri Feb 15 2008 Than Ngo <than@redhat.com> 5.7-1
- 5.7
- merge review: ctags
* Mon Jul 17 2006 Nalin Dahyabhai <nalin@redhat.com> 5.6-1.1
- rebuild
* Tue Jun 06 2006 Than Ngo <than@redhat.com> 5.6-1
- update to 5.6
* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 5.5.4-4.2.1
- bump again for double-long bug on ppc(64)
* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 5.5.4-4.2
- rebuilt for new gcc4.1 snapshot and glibc changes
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt
* Sun Jul 31 2005 Florian La Roche <laroche@redhat.com>
- remove etags
* Thu Mar 03 2005 Than Ngo <than@redhat.com> 5.5.4-3
- rebuilt
* Wed Feb 09 2005 Than Ngo <than@redhat.com> 5.5.4-2
- rebuilt
* Thu Jun 17 2004 Florian La Roche <Florian.LaRoche@redhat.de>
- 5.5.4
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Sat Sep 27 2003 Florian La Roche <Florian.LaRoche@redhat.de>
- 5.5.2, no patch needed anymore
* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Tue May 6 2003 Than Ngo <than@redhat.com> 5.5-1
- 5.5
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
- rebuilt
* Wed Nov 13 2002 Karsten Hopp <karsten@redhat.de>
- update to 5.4
* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Tue Jun 18 2002 Than Ngo <than@redhat.com> 5.2.3-3
- don't forcibly strip binaries
* Sun May 26 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Wed May 22 2002 Harald Hoyer <harald@redhat.de>
- 5.2.3
* Tue Feb 26 2002 Than Ngo <than@redhat.com> 5.2.2-2
- rebuild in new enviroment
* Tue Feb 19 2002 Bernhard Rosenkraenzer <bero@redhat.com> 5.2.2-1
- 5.2.2
* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Wed Jul 11 2001 Jakub Jelinek <jakub@redhat.com>
- rebuilt against binutils-2.11.90.0.8-3 to reserve .dynamic space
* Mon Jun 11 2001 Preston Brown <pbrown@redhat.com>
- 5.0.1
* Thu Jan 04 2001 Preston Brown <pbrown@redhat.com>
- 4.0.3
- remove etags, it is not fully compatible with cmd line of GNU etags.
* Sun Jul 16 2000 Florian La Roche <Florian.LaRoche@redhat.de>
- update to 4.0.2 from sourceforge
* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
- automatic rebuild
* Sat Jun 17 2000 Matt Wilson <msw@redhat.com>
- added defattr
* Mon Jun 12 2000 Preston Brown <pbrown@redhat.com>
- FHS paths
* Mon May 8 2000 Bernhard Rosenkränzer <bero@redhat.com>
- Update to 3.5.2
- minor cleanups to spec file
* Tue Feb 16 2000 Bernhard Rosenkränzer <bero@redhat.com>
- Update to 3.4 to fix bug #9446
* Thu Feb 03 2000 Preston Brown <pbrown@redhat.com>
- compress man page.
* Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com>
- auto rebuild in the new build environment (release 4)
- version 3.2
* Wed Feb 24 1999 Preston Brown <pbrown@redhat.com>
- Injected new description and group.
* Fri Apr 24 1998 Prospector System <bugs@redhat.com>
- translations modified for de, fr, tr
* Thu Apr 09 1998 Cristian Gafton <gafton@redhat.com>
- upgraded to 2.0.3
* Mon Nov 03 1997 Michael K. Johnson <johnsonm@redhat.com>
- removed etags. Emacs provides its own; and needs to support
more than just C.
* Thu Oct 23 1997 Donnie Barnes <djb@redhat.com>
- updated from 1.5 to 1.6
* Thu Jul 10 1997 Erik Troan <ewt@redhat.com>
- built against glibc