From 9d99481e769a33600565d78ab36a6faf9227e91a Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Thu, 23 Jan 2020 15:24:57 +0100 Subject: [PATCH 01/35] Added gating tests --- ctags.spec | 5 +- tests/Sanity-test-for-ctags/Makefile | 63 +++++ tests/Sanity-test-for-ctags/PURPOSE | 7 + tests/Sanity-test-for-ctags/ctags-kinds-list | 282 +++++++++++++++++++ tests/Sanity-test-for-ctags/ctags-lang-list | 42 +++ tests/Sanity-test-for-ctags/ctags-maps-list | 42 +++ tests/Sanity-test-for-ctags/runtest.sh | 51 ++++ tests/Sanity-test-for-ctags/test.c | 6 + tests/Sanity-test-for-ctags/test.python | 10 + tests/tests.yml | 12 + 10 files changed, 519 insertions(+), 1 deletion(-) create mode 100644 tests/Sanity-test-for-ctags/Makefile create mode 100644 tests/Sanity-test-for-ctags/PURPOSE create mode 100644 tests/Sanity-test-for-ctags/ctags-kinds-list create mode 100644 tests/Sanity-test-for-ctags/ctags-lang-list create mode 100644 tests/Sanity-test-for-ctags/ctags-maps-list create mode 100755 tests/Sanity-test-for-ctags/runtest.sh create mode 100644 tests/Sanity-test-for-ctags/test.c create mode 100644 tests/Sanity-test-for-ctags/test.python create mode 100644 tests/tests.yml diff --git a/ctags.spec b/ctags.spec index a951622..c22822c 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.8 -Release: 26%{?dist} +Release: 27%{?dist} License: GPLv2+ and LGPLv2+ and Public Domain URL: http://ctags.sourceforge.net/ Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz @@ -91,6 +91,9 @@ popd %{_mandir}/man1/etags.%{name}.1* %changelog +* Thu Jan 23 2020 Than Ngo - 5.8-27 +- Added gating tests + * Wed Jul 24 2019 Fedora Release Engineering - 5.8-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/tests/Sanity-test-for-ctags/Makefile b/tests/Sanity-test-for-ctags/Makefile new file mode 100644 index 0000000..982951b --- /dev/null +++ b/tests/Sanity-test-for-ctags/Makefile @@ -0,0 +1,63 @@ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Makefile of /CoreOS/ctags/Sanity-test-for-ctags +# Description: Sanity test +# Author: Than Ngo +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2019,2020 Red Hat, Inc. All rights reserved. +# +# This copyrighted material is made available to anyone wishing +# to use, modify, copy, or redistribute it subject to the terms +# and conditions of the GNU General Public License version 2. +# +# This program is distributed in the hope that it will be +# useful, but WITHOUT ANY WARRANTY; without even the implied +# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public +# License along with this program; if not, write to the Free +# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +# Boston, MA 02110-1301, USA. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +export TEST=/CoreOS/ctags/Sanity-test-for-ctags +export TESTVERSION=1.0 + +BUILT_FILES= + +FILES=$(METADATA) runtest.sh Makefile PURPOSE ctags-kinds-list ctags-maps-list ctags-lang-list test.python test.c + +.PHONY: all install download clean + +run: $(FILES) build + ./runtest.sh + +build: $(BUILT_FILES) + chmod a+x runtest.sh + +clean: + rm -f *~ $(BUILT_FILES) + + +include /usr/share/rhts/lib/rhts-make.include + +$(METADATA): Makefile + @echo "Owner: Than Ngo " > $(METADATA) + @echo "Name: $(TEST)" >> $(METADATA) + @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) + @echo "Path: $(TEST_DIR)" >> $(METADATA) + @echo "Description: Sanity test" >> $(METADATA) + @echo "Type: Sanity" >> $(METADATA) + @echo "TestTime: 3m" >> $(METADATA) + @echo "RunFor: ctags" >> $(METADATA) + @echo "Requires: coreutils man-db" >> $(METADATA) + @echo "Priority: Normal" >> $(METADATA) + @echo "License: GPLv2+ and LGPLv2+" >> $(METADATA) + @echo "Confidential: no" >> $(METADATA) + @echo "Destructive: no" >> $(METADATA) + + rhts-lint $(METADATA) diff --git a/tests/Sanity-test-for-ctags/PURPOSE b/tests/Sanity-test-for-ctags/PURPOSE new file mode 100644 index 0000000..23a869e --- /dev/null +++ b/tests/Sanity-test-for-ctags/PURPOSE @@ -0,0 +1,7 @@ +PURPOSE of /CoreOS/ctags/Sanity-test-for-ctags +Description: smoke test, funktion test for CI gating +Author: Than Ngo + +tests following scenarios: + * smoke test + * funktion test diff --git a/tests/Sanity-test-for-ctags/ctags-kinds-list b/tests/Sanity-test-for-ctags/ctags-kinds-list new file mode 100644 index 0000000..2f1cf3b --- /dev/null +++ b/tests/Sanity-test-for-ctags/ctags-kinds-list @@ -0,0 +1,282 @@ +Ant + p projects + t targets +Asm + d defines + l labels + m macros + t types (structs and records) +Asp + d constants + c classes + f functions + s subroutines + v variables +Awk + f functions +Basic + c constants + f functions + l labels + t types + v variables + g enumerations +BETA + f fragment definitions + p all patterns [off] + s slots (fragment uses) + v patterns (virtual or rebound) +C + c classes + d macro definitions + e enumerators (values inside an enumeration) + f function definitions + g enumeration names + l local variables [off] + m class, struct, and union members + n namespaces + p function prototypes [off] + s structure names + t typedefs + u union names + v variable definitions + x external and forward variable declarations [off] +C++ + c classes + d macro definitions + e enumerators (values inside an enumeration) + f function definitions + g enumeration names + l local variables [off] + m class, struct, and union members + n namespaces + p function prototypes [off] + s structure names + t typedefs + u union names + v variable definitions + x external and forward variable declarations [off] +C# + c classes + d macro definitions + e enumerators (values inside an enumeration) + E events + f fields + g enumeration names + i interfaces + l local variables [off] + m methods + n namespaces + p properties + s structure names + t typedefs +Cobol + d data items + f file descriptions (FD, SD, RD) + g group items + p paragraphs + P program ids + s sections +CSS + c classes + s selectors + i identities +DosBatch + l labels + v variables +Eiffel + c classes + f features + l local entities [off] +Erlang + d macro definitions + f functions + m modules + r record definitions +Flex + f functions + c classes + m methods + p properties + v global variables + x mxtags +Fortran + b block data + c common blocks + e entry points + f functions + i interface contents, generic names, and operators [off] + k type and structure components + l labels + L local, common block, and namelist variables [off] + m modules + n namelists + p programs + s subroutines + t derived types and structures + v program (global) and module variables +HTML + a named anchors + f JavaScript functions +Java + c classes + e enum constants + f fields + g enum types + i interfaces + l local variables [off] + m methods + p packages +JavaScript + f functions + c classes + m methods + p properties + v global variables +Lisp + f functions +Lua + f functions +Make + m macros +MatLab + f function + f function + f function +OCaml + c classes + m Object's method + M Module or functor + v Global variable + t Type name + f A function + C A constructor + r A 'structure' field + e An exception +Pascal + f functions + p procedures +Perl + c constants + f formats + l labels + p packages + s subroutines + d subroutine declarations [off] +PHP + c classes + i interfaces + d constant definitions + f functions + v variables + v variables + j javascript functions + j javascript functions + j javascript functions +Python + c classes + f functions + m class members + v variables + i imports +REXX + s subroutines +Ruby + c classes + f methods + m modules + F singleton methods +Scheme + f functions + s sets +Sh + f functions +SLang + f functions + n namespaces +SML + e exception declarations + f function definitions + c functor definitions + s signature declarations + r structure declarations + t type definitions + v value bindings +SQL + c cursors + d prototypes [off] + f functions + F record fields + l local variables [off] + L block label + P packages + p procedures + r records [off] + s subtypes + t tables + T triggers + v variables + i indexes + e events + U publications + R services + D domains + V views + n synonyms + x MobiLink Table Scripts + y MobiLink Conn Scripts +Tcl + c classes + m methods + p procedures +Tex + c chapters + s sections + u subsections + b subsubsections + p parts + P paragraphs + G subparagraphs +Vera + c classes + d macro definitions + e enumerators (values inside an enumeration) + f function definitions + g enumeration names + l local variables [off] + m class, struct, and union members + p programs + P function prototypes [off] + t tasks + T typedefs + v variable definitions + x external variable declarations [off] +Verilog + c constants (define, parameter, specparam) + e events + f functions + m modules + n net data types + p ports + r register data types + t tasks +VHDL + c constant declarations + t type definitions + T subtype definitions + r record names + e entity declarations + C component declarations [off] + d prototypes [off] + f function prototypes and declarations + p procedure prototypes and declarations + P package definitions + l local definitions [off] +Vim + a autocommand groups + c user-defined commands + f function definitions + m maps + v variable definitions +YACC + l labels diff --git a/tests/Sanity-test-for-ctags/ctags-lang-list b/tests/Sanity-test-for-ctags/ctags-lang-list new file mode 100644 index 0000000..f9338de --- /dev/null +++ b/tests/Sanity-test-for-ctags/ctags-lang-list @@ -0,0 +1,42 @@ +Ant +Asm +Asp +Awk +Basic +BETA +C +C++ +C# +Cobol +CSS +DosBatch +Eiffel +Erlang +Flex +Fortran +HTML +Java +JavaScript +Lisp +Lua +Make +MatLab +OCaml +Pascal +Perl +PHP +Python +REXX +Ruby +Scheme +Sh +SLang +SML +SQL +Tcl +Tex +Vera +Verilog +VHDL +Vim +YACC diff --git a/tests/Sanity-test-for-ctags/ctags-maps-list b/tests/Sanity-test-for-ctags/ctags-maps-list new file mode 100644 index 0000000..d9fe867 --- /dev/null +++ b/tests/Sanity-test-for-ctags/ctags-maps-list @@ -0,0 +1,42 @@ +Ant *.build.xml +Asm *.asm *.ASM *.s *.S *.A51 *.29[kK] *.[68][68][kKsSxX] *.[xX][68][68] +Asp *.asp *.asa +Awk *.awk *.gawk *.mawk +Basic *.bas *.bi *.bb *.pb +BETA *.bet +C *.c +C++ *.c++ *.cc *.cp *.cpp *.cxx *.h *.h++ *.hh *.hp *.hpp *.hxx *.C *.H +C# *.cs +Cobol *.cbl *.cob *.CBL *.COB +CSS *.css +DosBatch *.bat *.cmd +Eiffel *.e +Erlang *.erl *.ERL *.hrl *.HRL +Flex *.as *.mxml +Fortran *.f *.for *.ftn *.f77 *.f90 *.f95 *.F *.FOR *.FTN *.F77 *.F90 *.F95 +HTML *.htm *.html +Java *.java +JavaScript *.js +Lisp *.cl *.clisp *.el *.l *.lisp *.lsp +Lua *.lua +Make *.mak *.mk [Mm]akefile GNUmakefile +MatLab *.m +OCaml *.ml *.mli +Pascal *.p *.pas +Perl *.pl *.pm *.plx *.perl +PHP *.php *.php3 *.phtml +Python *.py *.pyx *.pxd *.pxi *.scons +REXX *.cmd *.rexx *.rx +Ruby *.rb *.ruby +Scheme *.SCM *.SM *.sch *.scheme *.scm *.sm +Sh *.sh *.SH *.bsh *.bash *.ksh *.zsh +SLang *.sl +SML *.sml *.sig +SQL *.sql +Tcl *.tcl *.tk *.wish *.itcl +Tex *.tex +Vera *.vr *.vri *.vrh +Verilog *.v +VHDL *.vhdl *.vhd +Vim *.vim +YACC *.y diff --git a/tests/Sanity-test-for-ctags/runtest.sh b/tests/Sanity-test-for-ctags/runtest.sh new file mode 100755 index 0000000..d952395 --- /dev/null +++ b/tests/Sanity-test-for-ctags/runtest.sh @@ -0,0 +1,51 @@ +#! /bin/sh +# ctags basics + +PACKAGES="ctags" +# SERVICES="" + +# source the test script helpers +# requires beakerlib package +. /usr/bin/rhts-environment.sh || exit 1 +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +rlJournalStart + rlPhaseStartSetup + for p in $PACKAGES ; do + rlAssertRpm $p + done + rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" + rlRun "cp * $TmpDir" + rlRun "pushd $TmpDir" + rlPhaseEnd + + rlPhaseStartTest "Smoke, sanity and function tests" + rlRun "ctags --version" 0 "Show version" + rlRun "ctags --help" 0 "Show help" + rlRun "ctags --license" 0 "Show license" + rlRun -s "ctags --list-kinds" 0 "Output a list of all tag kinds for all languages" + rlAssertNotDiffer ctags-kinds-list $rlRun_LOG + rlRun -s "ctags --list-languages" 0 "Output list of supported languages" + rlAssertNotDiffer ctags-lang-list $rlRun_LOG + rlRun -s "ctags --list-maps" 0 "Output list of language mappings" + rlAssertNotDiffer ctags-maps-list $rlRun_LOG + for l in python c ; do + rlRun "ctags -f test test.$l" 0 "Language: $l, $lWrite tags to file test" + rlAssertExists test + rlRun "ctags --fields=k test.%l" 0 "Language: $l, Include selected extension fields=k" + rlRun "ctags --fields=+afmikKlnsSz test.$l" 0 "Language: $l, Check extension fields=+afmikKlnsSz" + rlRun "ctags --extra=+fq --format=1 test.$l" 0 "Language: $l, Check options --extra=+fq --format=1" + done + # check man page + rlRun "man -P head ctags" 0 "Show the ctags man page" + # check for sane license and readme file + rlRun "head /usr/share/licenses/ctags/COPYING" 0 "Check for license file" + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -fr $TmpDir" 0 "Removing tmp directory" + rlPhaseEnd + +rlJournalPrintText +rlJournalEnd diff --git a/tests/Sanity-test-for-ctags/test.c b/tests/Sanity-test-for-ctags/test.c new file mode 100644 index 0000000..7cfe76d --- /dev/null +++ b/tests/Sanity-test-for-ctags/test.c @@ -0,0 +1,6 @@ +#include + +int main() { + printf("Hello World\n"); + return 0; +} diff --git a/tests/Sanity-test-for-ctags/test.python b/tests/Sanity-test-for-ctags/test.python new file mode 100644 index 0000000..0d73c24 --- /dev/null +++ b/tests/Sanity-test-for-ctags/test.python @@ -0,0 +1,10 @@ +#!/usr/bin/env python + +def main(): + + return 0 + +if __name__ == '__main__': main() + +var = 'hi' +var2 = 'hi' # blah = blah diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100644 index 0000000..6ec7675 --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,12 @@ +--- +# Run tests in all contexts +- hosts: localhost + tags: + - classic + roles: + - role: standard-test-beakerlib + tests: + - Sanity-test-for-ctags + required_packages: + - ctags + - man-db From a7cd3c8f26551f204418772af91cc943b872455b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jan 2020 15:07:34 +0000 Subject: [PATCH 02/35] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index c22822c..cb9b8ac 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.8 -Release: 27%{?dist} +Release: 28%{?dist} License: GPLv2+ and LGPLv2+ and Public Domain URL: http://ctags.sourceforge.net/ Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz @@ -91,6 +91,9 @@ popd %{_mandir}/man1/etags.%{name}.1* %changelog +* Tue Jan 28 2020 Fedora Release Engineering - 5.8-28 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Thu Jan 23 2020 Than Ngo - 5.8-27 - Added gating tests From 8ea7bd2c9aa2851d19ef7a4b3c2fbdfdb4f82dfa Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Mon, 13 Jul 2020 18:57:51 +0000 Subject: [PATCH 03/35] Use make macros https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro --- ctags.spec | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/ctags.spec b/ctags.spec index cb9b8ac..c1f923f 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.8 -Release: 28%{?dist} +Release: 29%{?dist} License: GPLv2+ and LGPLv2+ and Public Domain URL: http://ctags.sourceforge.net/ Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz @@ -57,12 +57,12 @@ Note: some command line options is not compatible with GNU etags. %build %configure -make %{?_smp_mflags} +%make_build %install rm -rf %{buildroot} -make DESTDIR=%{buildroot} install +%make_install pushd %{buildroot}%{_bindir} ln -s ctags etags.ctags @@ -91,6 +91,10 @@ popd %{_mandir}/man1/etags.%{name}.1* %changelog +* Mon Jul 13 2020 Tom Stellard - 5.8-29 +- Use make macros +- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro + * Tue Jan 28 2020 Fedora Release Engineering - 5.8-28 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 5313d14d1d561d4483c33205ddbb991bfea529d6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 27 Jul 2020 14:49:23 +0000 Subject: [PATCH 04/35] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index c1f923f..8073786 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.8 -Release: 29%{?dist} +Release: 30%{?dist} License: GPLv2+ and LGPLv2+ and Public Domain URL: http://ctags.sourceforge.net/ Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz @@ -91,6 +91,9 @@ popd %{_mandir}/man1/etags.%{name}.1* %changelog +* Mon Jul 27 2020 Fedora Release Engineering - 5.8-30 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Mon Jul 13 2020 Tom Stellard - 5.8-29 - Use make macros - https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro From 0abad49c7ceba139ee737ea934f066eb541f12ce Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Thu, 17 Dec 2020 04:05:58 +0000 Subject: [PATCH 05/35] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- ctags.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/ctags.spec b/ctags.spec index 8073786..5b9a2bd 100644 --- a/ctags.spec +++ b/ctags.spec @@ -14,6 +14,7 @@ Patch5: ctags-5.8-memmove.patch Patch6: ctags-5.8-format-security.patch Patch7: ctags-CVE-2014-7204.patch BuildRequires: gcc +BuildRequires: make %description Ctags generates an index (or tag) file of C language objects found in From c915588202c0415c81926e478bc9c0a1fc65a070 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 02:48:03 +0000 Subject: [PATCH 06/35] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 5b9a2bd..caad50a 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.8 -Release: 30%{?dist} +Release: 31%{?dist} License: GPLv2+ and LGPLv2+ and Public Domain URL: http://ctags.sourceforge.net/ Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz @@ -92,6 +92,9 @@ popd %{_mandir}/man1/etags.%{name}.1* %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 5.8-31 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Mon Jul 27 2020 Fedora Release Engineering - 5.8-30 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 51a9d1b9735dc0719581dffeff0e825158560fb0 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Thu, 11 Mar 2021 16:53:40 +0100 Subject: [PATCH 07/35] switch to universal ctags --- .gitignore | 1 + ctags-5.7-destdir.patch | 44 - ctags-5.7-segment-fault.patch | 41 - ctags-5.8-css.patch | 260 ------ ctags-5.8-cssparse.patch | 16 - ctags-5.8-format-security.patch | 12 - ctags-5.8-memmove.patch | 19 - ctags-5.8-ocaml-crash.patch | 251 ------ ctags-CVE-2014-7204.patch | 89 -- ctags-p5.9.20210307.0-build.patch | 108 +++ ctags.spec | 88 +- sources | 2 +- tests/Sanity-test-for-ctags/ctags-kinds-list | 826 ++++++++++++++++++- tests/Sanity-test-for-ctags/ctags-lang-list | 92 ++- tests/Sanity-test-for-ctags/ctags-maps-list | 124 ++- 15 files changed, 1122 insertions(+), 851 deletions(-) delete mode 100644 ctags-5.7-destdir.patch delete mode 100644 ctags-5.7-segment-fault.patch delete mode 100644 ctags-5.8-css.patch delete mode 100644 ctags-5.8-cssparse.patch delete mode 100644 ctags-5.8-format-security.patch delete mode 100644 ctags-5.8-memmove.patch delete mode 100644 ctags-5.8-ocaml-crash.patch delete mode 100644 ctags-CVE-2014-7204.patch create mode 100644 ctags-p5.9.20210307.0-build.patch diff --git a/.gitignore b/.gitignore index fb3f2bc..9d81247 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ ctags-5.5.4.tar.gz ctags-5.6.tar.gz ctags-5.7.tar.gz ctags-5.8.tar.gz +/ctags-p5.9.20210307.0.tar.gz diff --git a/ctags-5.7-destdir.patch b/ctags-5.7-destdir.patch deleted file mode 100644 index 0aeafab..0000000 --- a/ctags-5.7-destdir.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -up ctags-5.7/Makefile.in.destdir ctags-5.7/Makefile.in ---- ctags-5.7/Makefile.in.destdir 2006-10-12 05:26:40.000000000 +0200 -+++ ctags-5.7/Makefile.in 2008-02-15 17:10:23.000000000 +0100 -@@ -59,7 +59,7 @@ include $(srcdir)/source.mak - - VPATH = $(srcdir) - --INSTALL = cp -+INSTALL = cp -p - INSTALL_PROG = $(INSTALL) - INSTALL_DATA = $(INSTALL) - -@@ -138,7 +141,8 @@ install-ebin: $(DEST_ETAGS) - install-lib: $(DEST_READ_LIB) $(DEST_READ_INC) - - $(DEST_CTAGS): $(CTAGS_EXEC) $(bindir) FORCE -- $(INSTALL_PROG) $(CTAGS_EXEC) $@ && chmod 755 $@ -+ $(srcdir)/mkinstalldirs $(DESTDIR)$(bindir) -+ $(INSTALL_PROG) $(CTAGS_EXEC) $(DESTDIR)$@ && chmod 755 $(DESTDIR)$@ - - $(DEST_ETAGS): - - if [ -x $(DEST_CTAGS) ]; then \ -@@ -153,7 +157,8 @@ install-cman: $(DEST_CMAN) - install-eman: $(DEST_EMAN) - - $(DEST_CMAN): $(man1dir) $(MANPAGE) FORCE -- - $(INSTALL_DATA) $(srcdir)/$(MANPAGE) $@ && chmod 644 $@ -+ $(srcdir)/mkinstalldirs $(DESTDIR)$(man1dir) -+ - $(INSTALL_DATA) $(srcdir)/$(MANPAGE) $(DESTDIR)$@ && chmod 644 $(DESTDIR)$@ - - $(DEST_EMAN): - - if [ -f $(DEST_CMAN) ]; then \ -@@ -164,9 +169,11 @@ $(DEST_EMAN): - # install the library - # - $(DEST_READ_LIB): $(READ_LIB) $(libdir) FORCE -+ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir) - $(INSTALL_PROG) $(READ_LIB) $@ && chmod 644 $@ - - $(DEST_READ_INC): $(READ_INC) $(incdir) FORCE -+ $(srcdir)/mkinstalldirs $(DESTDIR)$(incdir) - $(INSTALL_PROG) $(READ_INC) $@ && chmod 644 $@ - - diff --git a/ctags-5.7-segment-fault.patch b/ctags-5.7-segment-fault.patch deleted file mode 100644 index 60e8809..0000000 --- a/ctags-5.7-segment-fault.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff -ruN -x '*~' ctags-5.7/vim.c ctags-5.7/vim.c ---- ctags-5.7/vim.c 2006-10-26 12:06:21.000000000 +0900 -+++ ctags-5.7/vim.c 2009-08-28 22:21:31.000000000 +0900 -@@ -328,7 +328,7 @@ - */ - const unsigned char *cp = line; - -- if ( (int) *cp == '\\' ) -+ if ( cp && ( (int) *cp == '\\' ) ) - { - /* - * We are recursively calling this function is the command -@@ -350,9 +350,10 @@ - while (*cp && isspace ((int) *cp)) - ++cp; - } -- else if ( (!strncmp ((const char*) line, "comp", (size_t) 4) == 0) && -- (!strncmp ((const char*) line, "comc", (size_t) 4) == 0) && -- (strncmp ((const char*) line, "com", (size_t) 3) == 0) ) -+ else if ( line && -+ (!strncmp ((const char*) line, "comp", (size_t) 4) == 0) && -+ (!strncmp ((const char*) line, "comc", (size_t) 4) == 0) && -+ (strncmp ((const char*) line, "com", (size_t) 3) == 0) ) - { - cp += 2; - if ((int) *++cp == 'm' && (int) *++cp == 'a' && -@@ -394,6 +395,14 @@ - while (*cp && !isspace ((int) *cp)) - ++cp; - } -+ else if (!isalnum ((int) *cp)) -+ { -+ /* -+ * Broken syntax: throw away this line -+ */ -+ cmdProcessed = TRUE; -+ goto cleanUp; -+ } - } while ( *cp && !isalnum ((int) *cp) ); - - if ( ! *cp ) diff --git a/ctags-5.8-css.patch b/ctags-5.8-css.patch deleted file mode 100644 index 2744d33..0000000 --- a/ctags-5.8-css.patch +++ /dev/null @@ -1,260 +0,0 @@ -diff -up ctags-5.8/css.c.me ctags-5.8/css.c ---- ctags-5.8/css.c.me 2012-02-08 13:59:35.000000000 +0100 -+++ ctags-5.8/css.c 2012-02-08 13:55:16.000000000 +0100 -@@ -0,0 +1,226 @@ -+/*************************************************************************** -+ * css.c -+ * Character-based parser for Css definitions -+ * Author - Iago Rubio -+ **************************************************************************/ -+#include "general.h" -+ -+#include -+#include -+ -+#include "parse.h" -+#include "read.h" -+ -+ -+typedef enum eCssKinds { -+ K_NONE = -1, K_CLASS, K_SELECTOR, K_ID -+} cssKind; -+ -+static kindOption CssKinds [] = { -+ { TRUE, 'c', "class", "classes" }, -+ { TRUE, 's', "selector", "selectors" }, -+ { TRUE, 'i', "id", "identities" } -+}; -+ -+typedef enum _CssParserState { // state of parsing -+ P_STATE_NONE, // default state -+ P_STATE_IN_COMMENT, // into a comment, only multi line in CSS -+ P_STATE_IN_SINGLE_STRING, // into a single quoted string -+ P_STATE_IN_DOUBLE_STRING, // into a double quoted string -+ P_STATE_IN_DEFINITION, // on the body of the style definition, nothing for us -+ P_STATE_IN_MEDIA, // on a @media declaration, can be multi-line -+ P_STATE_IN_IMPORT, // on a @import declaration, can be multi-line -+ P_STATE_IN_NAMESPACE, // on a @namespace declaration -+ P_STATE_IN_PAGE, // on a @page declaration -+ P_STATE_IN_FONTFACE, // on a @font-face declaration -+ P_STATE_AT_END // end of parsing -+} CssParserState; -+ -+static void makeCssSimpleTag( vString *name, cssKind kind, boolean delete ) -+{ -+ vStringTerminate (name); -+ makeSimpleTag (name, CssKinds, kind); -+ vStringClear (name); -+ if( delete ) -+ vStringDelete (name); -+} -+ -+static boolean isCssDeclarationAllowedChar( const unsigned char *cp ) -+{ -+ return isalnum ((int) *cp) || -+ isspace ((int) *cp) || -+ *cp == '_' || // allowed char -+ *cp == '-' || // allowed char -+ *cp == '+' || // allow all sibling in a single tag -+ *cp == '>' || // allow all child in a single tag -+ *cp == '{' || // allow the start of the declaration -+ *cp == '.' || // allow classes and selectors -+ *cp == ',' || // allow multiple declarations -+ *cp == ':' || // allow pseudo classes -+ *cp == '*' || // allow globs as P + * -+ *cp == '#'; // allow ids -+} -+ -+static CssParserState parseCssDeclaration( const unsigned char **position, cssKind kind ) -+{ -+ vString *name = vStringNew (); -+ const unsigned char *cp = *position; -+ -+ // pick to the end of line including children and sibling -+ // if declaration is multiline go for the next line -+ while ( isCssDeclarationAllowedChar(cp) || -+ *cp == '\0' ) // track the end of line into the loop -+ { -+ if( (int) *cp == '\0' ) -+ { -+ cp = fileReadLine (); -+ if( cp == NULL ){ -+ makeCssSimpleTag(name, kind, TRUE); -+ *position = cp; -+ return P_STATE_AT_END; -+ } -+ } -+ else if( *cp == ',' ) -+ { -+ makeCssSimpleTag(name, kind, TRUE); -+ *position = ++cp; -+ return P_STATE_NONE; -+ } -+ else if( *cp == '{' ) -+ { -+ makeCssSimpleTag(name, kind, TRUE); -+ *position = ++cp; -+ return P_STATE_IN_DEFINITION; -+ } -+ -+ vStringPut (name, (int) *cp); -+ ++cp; -+ } -+ -+ makeCssSimpleTag(name, kind, TRUE); -+ *position = cp; -+ -+ return P_STATE_NONE; -+} -+ -+static CssParserState parseCssLine( const unsigned char *line, CssParserState state ) -+{ -+ vString *aux; -+ -+ while( *line != '\0' ) // fileReadLine returns NULL terminated strings -+ { -+ while (isspace ((int) *line)) -+ ++line; -+ switch( state ) -+ { -+ case P_STATE_NONE: -+ // pick first char if alphanumeric is a selector -+ if( isalnum ((int) *line) ) -+ state = parseCssDeclaration( &line, K_SELECTOR ); -+ else if( *line == '.' ) // a class -+ state = parseCssDeclaration( &line, K_CLASS ); -+ else if( *line == '#' ) // an id -+ state = parseCssDeclaration( &line, K_ID ); -+ else if( *line == '@' ) // at-rules, we'll ignore them -+ { -+ ++line; -+ aux = vStringNew(); -+ while( !isspace((int) *line) ) -+ { -+ vStringPut (aux, (int) *line); -+ ++line; -+ } -+ vStringTerminate (aux); -+ if( strcmp( aux->buffer, "media" ) == 0 ) -+ state = P_STATE_IN_MEDIA; -+ else if ( strcmp( aux->buffer, "import" ) == 0 ) -+ state = P_STATE_IN_IMPORT; -+ else if ( strcmp( aux->buffer, "namespace" ) == 0 ) -+ state = P_STATE_IN_NAMESPACE; -+ else if ( strcmp( aux->buffer, "page" ) == 0 ) -+ state = P_STATE_IN_PAGE; -+ else if ( strcmp( aux->buffer, "font-face" ) == 0 ) -+ state = P_STATE_IN_FONTFACE; -+ vStringDelete (aux); -+ } -+ else if( *line == '*' && *(line-1) == '/' ) // multi-line comment -+ state = P_STATE_IN_COMMENT; -+ break; -+ case P_STATE_IN_COMMENT: -+ if( *line == '/' && *(line-1) == '*') -+ state = P_STATE_NONE; -+ break; -+ case P_STATE_IN_SINGLE_STRING: -+ if( *line == '\'' && *(line-1) != '\\' ) -+ state = P_STATE_IN_DEFINITION; // PAGE, FONTFACE and DEFINITION are treated the same way -+ break; -+ case P_STATE_IN_DOUBLE_STRING: -+ if( *line=='"' && *(line-1) != '\\' ) -+ state = P_STATE_IN_DEFINITION; // PAGE, FONTFACE and DEFINITION are treated the same way -+ break; -+ case P_STATE_IN_MEDIA: -+ // skip to start of media body or line end -+ while( *line != '{' ) -+ { -+ if( *line == '\0' ) -+ break; -+ ++line; -+ } -+ if( *line == '{' ) -+ state = P_STATE_NONE; -+ break; -+ case P_STATE_IN_IMPORT: -+ case P_STATE_IN_NAMESPACE: -+ // skip to end of declaration or line end -+ while( *line != ';' ) -+ { -+ if( *line == '\0' ) -+ break; -+ ++line; -+ } -+ if( *line == ';' ) -+ state = P_STATE_NONE; -+ break; -+ case P_STATE_IN_PAGE: -+ case P_STATE_IN_FONTFACE: -+ case P_STATE_IN_DEFINITION: -+ if( *line == '}' ) -+ state = P_STATE_NONE; -+ else if( *line == '\'' ) -+ state = P_STATE_IN_SINGLE_STRING; -+ else if( *line == '"' ) -+ state = P_STATE_IN_DOUBLE_STRING; -+ break; -+ case P_STATE_AT_END: -+ return state; -+ break; -+ } -+ line++; -+ } -+ return state; -+} -+ -+static void findCssTags (void) -+{ -+ const unsigned char *line; -+ CssParserState state = P_STATE_NONE; -+ -+ while ( (line = fileReadLine ()) != NULL ) -+ { -+ state = parseCssLine( line, state ); -+ if( state==P_STATE_AT_END ) return; -+ } -+} -+ -+/* parser definition */ -+extern parserDefinition* CssParser (void) -+{ -+ static const char *const extensions [] = { "css", NULL }; -+ parserDefinition* def = parserNew ("CSS"); -+ def->kinds = CssKinds; -+ def->kindCount = KIND_COUNT (CssKinds); -+ def->extensions = extensions; -+ def->parser = findCssTags; -+ return def; -+} -+ -diff -up ctags-5.8/parsers.h.me ctags-5.8/parsers.h ---- ctags-5.8/parsers.h.me 2012-02-08 13:56:46.000000000 +0100 -+++ ctags-5.8/parsers.h 2012-02-08 13:57:25.000000000 +0100 -@@ -26,6 +26,7 @@ - CppParser, \ - CsharpParser, \ - CobolParser, \ -+ CssParser, \ - DosBatchParser, \ - EiffelParser, \ - ErlangParser, \ -diff -up ctags-5.8/source.mak.me ctags-5.8/source.mak ---- ctags-5.8/source.mak.me 2012-02-08 13:58:02.000000000 +0100 -+++ ctags-5.8/source.mak 2012-02-08 13:58:42.000000000 +0100 -@@ -17,6 +17,7 @@ SOURCES = \ - beta.c \ - c.c \ - cobol.c \ -+ css.c \ - dosbatch.c \ - eiffel.c \ - entry.c \ -@@ -79,6 +80,7 @@ OBJECTS = \ - beta.$(OBJEXT) \ - c.$(OBJEXT) \ - cobol.$(OBJEXT) \ -+ css.$(OBJEXT) \ - dosbatch.$(OBJEXT) \ - eiffel.$(OBJEXT) \ - entry.$(OBJEXT) \ diff --git a/ctags-5.8-cssparse.patch b/ctags-5.8-cssparse.patch deleted file mode 100644 index f70c374..0000000 --- a/ctags-5.8-cssparse.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up ctags-5.8/css.c.me ctags-5.8/css.c ---- ctags-5.8/css.c.me 2012-10-18 22:03:20.126163700 +0200 -+++ ctags-5.8/css.c 2012-10-18 22:04:03.237107358 +0200 -@@ -73,10 +73,11 @@ static CssParserState parseCssDeclaratio - { - if( (int) *cp == '\0' ) - { -+ /* assign position to the end of line. */ -+ *position = cp; - cp = fileReadLine (); - if( cp == NULL ){ - makeCssSimpleTag(name, kind, TRUE); -- *position = cp; - return P_STATE_AT_END; - } - } diff --git a/ctags-5.8-format-security.patch b/ctags-5.8-format-security.patch deleted file mode 100644 index ccd3986..0000000 --- a/ctags-5.8-format-security.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur ctags-5.8.orig/lregex.c ctags-5.8/lregex.c ---- ctags-5.8.orig/lregex.c 2007-09-10 04:36:48.000000000 +0200 -+++ ctags-5.8/lregex.c 2014-04-14 21:09:17.716000000 +0200 -@@ -408,7 +408,7 @@ - const char* regexfile = parameter + 1; - FILE* const fp = fopen (regexfile, "r"); - if (fp == NULL) -- error (WARNING | PERROR, regexfile); -+ error (WARNING | PERROR, "%s", regexfile); - else - { - vString* const regex = vStringNew (); diff --git a/ctags-5.8-memmove.patch b/ctags-5.8-memmove.patch deleted file mode 100644 index 5608f04..0000000 --- a/ctags-5.8-memmove.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -r -u ctags-5.8.orig/routines.c ctags-5.8/routines.c ---- ctags-5.8.orig/routines.c 2013-06-13 10:42:08.048576327 -0400 -+++ ctags-5.8/routines.c 2013-06-13 10:48:25.150366836 -0400 -@@ -757,13 +757,13 @@ - else if (cp [0] != PATH_SEPARATOR) - cp = slashp; - #endif -- strcpy (cp, slashp + 3); -+ memmove (cp, slashp + 3, strlen(slashp + 3) + 1); - slashp = cp; - continue; - } - else if (slashp [2] == PATH_SEPARATOR || slashp [2] == '\0') - { -- strcpy (slashp, slashp + 2); -+ memmove (slashp, slashp + 2, strlen(slashp + 2) + 1); - continue; - } - } diff --git a/ctags-5.8-ocaml-crash.patch b/ctags-5.8-ocaml-crash.patch deleted file mode 100644 index 8263cca..0000000 --- a/ctags-5.8-ocaml-crash.patch +++ /dev/null @@ -1,251 +0,0 @@ -diff -up ctags-5.8/ocaml.c.me ctags-5.8/ocaml.c ---- ctags-5.8/ocaml.c.me 2012-08-02 12:42:21.652211192 +0200 -+++ ctags-5.8/ocaml.c 2012-08-02 13:06:59.751283639 +0200 -@@ -72,6 +72,7 @@ typedef enum { - OcaKEYWORD_if, - OcaKEYWORD_in, - OcaKEYWORD_let, -+ OcaKEYWORD_value, - OcaKEYWORD_match, - OcaKEYWORD_method, - OcaKEYWORD_module, -@@ -145,7 +146,7 @@ static const ocaKeywordDesc OcamlKeyword - { "try" , OcaKEYWORD_try }, - { "type" , OcaKEYWORD_type }, - { "val" , OcaKEYWORD_val }, -- { "value" , OcaKEYWORD_let }, /* just to handle revised syntax */ -+ { "value" , OcaKEYWORD_value }, /* just to handle revised syntax */ - { "virtual" , OcaKEYWORD_virtual }, - { "while" , OcaKEYWORD_while }, - { "with" , OcaKEYWORD_with }, -@@ -297,7 +298,6 @@ static void eatComment (lexingState * st - if (st->cp == NULL) - return; - c = st->cp; -- continue; - } - /* we've reached the end of the comment */ - else if (*c == ')' && lastIsStar) -@@ -308,13 +308,33 @@ static void eatComment (lexingState * st - { - st->cp = c; - eatComment (st); -+ - c = st->cp; -+ if (c == NULL) -+ return; -+ - lastIsStar = FALSE; -+ c++; - } -+ /* OCaml has a rule which says : -+ * -+ * "Comments do not occur inside string or character literals. -+ * Nested comments are handled correctly." -+ * -+ * So if we encounter a string beginning, we must parse it to -+ * get a good comment nesting (bug ID: 3117537) -+ */ -+ else if (*c == '"') -+ { -+ st->cp = c; -+ eatString (st); -+ c = st->cp; -+ } - else -+ { - lastIsStar = '*' == *c; -- -- c++; -+ c++; -+ } - } - - st->cp = c; -@@ -554,8 +574,7 @@ static int getLastNamedIndex ( void ) - - for (i = stackIndex - 1; i >= 0; --i) - { -- if (stack[i].contextName->buffer && -- strlen (stack[i].contextName->buffer) > 0) -+ if (vStringLength (stack[i].contextName) > 0) - { - return i; - } -@@ -866,6 +885,11 @@ static void prepareTag (tagEntryInfo * t - tag->kindName = OcamlKinds[kind].name; - tag->kind = OcamlKinds[kind].letter; - -+ if (kind == K_MODULE) -+ { -+ tag->lineNumberEntry = TRUE; -+ tag->lineNumber = 1; -+ } - parentIndex = getLastNamedIndex (); - if (parentIndex >= 0) - { -@@ -880,9 +904,12 @@ static void prepareTag (tagEntryInfo * t - * more information to it in the future */ - static void addTag (vString * const ident, int kind) - { -- tagEntryInfo toCreate; -- prepareTag (&toCreate, ident, kind); -- makeTagEntry (&toCreate); -+ if (OcamlKinds [kind].enabled && ident != NULL && vStringLength (ident) > 0) -+ { -+ tagEntryInfo toCreate; -+ prepareTag (&toCreate, ident, kind); -+ makeTagEntry (&toCreate); -+ } - } - - boolean needStrongPoping = FALSE; -@@ -942,15 +969,17 @@ static void typeRecord (vString * const - } - - /* handle : -- * exception ExceptionName ... */ -+ * exception ExceptionName of ... */ - static void exceptionDecl (vString * const ident, ocaToken what) - { - if (what == OcaIDENTIFIER) - { - addTag (ident, K_EXCEPTION); - } -- /* don't know what to do on else... */ -- -+ else /* probably ill-formed, give back to global scope */ -+ { -+ globalScope (ident, what); -+ } - toDoNext = &globalScope; - } - -@@ -1006,7 +1035,6 @@ static void constructorValidation (vStri - */ - static void typeDecl (vString * const ident, ocaToken what) - { -- - switch (what) - { - /* parameterized */ -@@ -1046,7 +1074,6 @@ static void typeDecl (vString * const id - * let typeRecord handle it. */ - static void typeSpecification (vString * const ident, ocaToken what) - { -- - switch (what) - { - case OcaIDENTIFIER: -@@ -1243,8 +1270,14 @@ static void localLet (vString * const id - * than the let definitions. - * Used after a match ... with, or a function ... or fun ... - * because their syntax is similar. */ --static void matchPattern (vString * const UNUSED (ident), ocaToken what) -+static void matchPattern (vString * const ident, ocaToken what) - { -+ /* keep track of [], as it -+ * can be used in patterns and can -+ * mean the end of match expression in -+ * revised syntax */ -+ static int braceCount = 0; -+ - switch (what) - { - case Tok_To: -@@ -1252,6 +1285,14 @@ static void matchPattern (vString * cons - toDoNext = &mayRedeclare; - break; - -+ case Tok_BRL: -+ braceCount++; -+ break; -+ -+ case OcaKEYWORD_value: -+ popLastNamed (); -+ globalScope (ident, what); -+ break; - - case OcaKEYWORD_in: - popLastNamed (); -@@ -1269,6 +1310,11 @@ static void mayRedeclare (vString * cons - { - switch (what) - { -+ case OcaKEYWORD_value: -+ /* let globalScope handle it */ -+ globalScope (ident, what); -+ break; -+ - case OcaKEYWORD_let: - case OcaKEYWORD_val: - toDoNext = localLet; -@@ -1388,6 +1434,7 @@ static void classSpecif (vString * const - * nearly a copy/paste of globalLet. */ - static void methodDecl (vString * const ident, ocaToken what) - { -+ - switch (what) - { - case Tok_PARL: -@@ -1435,6 +1482,7 @@ vString *lastModule; - */ - static void moduleSpecif (vString * const ident, ocaToken what) - { -+ - switch (what) - { - case OcaKEYWORD_functor: -@@ -1566,7 +1614,7 @@ static void globalScope (vString * const - { - /* Do not touch, this is used only by the global scope - * to handle an 'and' */ -- static parseNext previousParser = NULL; -+ static parseNext previousParser = &globalScope; - - switch (what) - { -@@ -1608,6 +1656,7 @@ static void globalScope (vString * const - /* val is mixed with let as global - * to be able to handle mli & new syntax */ - case OcaKEYWORD_val: -+ case OcaKEYWORD_value: - case OcaKEYWORD_let: - cleanupPreviousParser (); - toDoNext = &globalLet; -@@ -1617,7 +1666,7 @@ static void globalScope (vString * const - case OcaKEYWORD_exception: - cleanupPreviousParser (); - toDoNext = &exceptionDecl; -- previousParser = NULL; -+ previousParser = &globalScope; - break; - - /* must be a #line directive, discard the -@@ -1769,7 +1818,7 @@ static void computeModuleName ( void ) - if (isLowerAlpha (moduleName->buffer[0])) - moduleName->buffer[0] += ('A' - 'a'); - -- makeSimpleTag (moduleName, OcamlKinds, K_MODULE); -+ addTag (moduleName, K_MODULE); - vStringDelete (moduleName); - } - -@@ -1779,6 +1828,7 @@ static void initStack ( void ) - int i; - for (i = 0; i < OCAML_MAX_STACK_SIZE; ++i) - stack[i].contextName = vStringNew (); -+ stackIndex = 0; - } - - static void clearStack ( void ) -@@ -1794,8 +1844,8 @@ static void findOcamlTags (void) - lexingState st; - ocaToken tok; - -- computeModuleName (); - initStack (); -+ computeModuleName (); - tempIdent = vStringNew (); - lastModule = vStringNew (); - lastClass = vStringNew (); diff --git a/ctags-CVE-2014-7204.patch b/ctags-CVE-2014-7204.patch deleted file mode 100644 index 81c5e6e..0000000 --- a/ctags-CVE-2014-7204.patch +++ /dev/null @@ -1,89 +0,0 @@ ---- ctags/jscript.c.orig 2008-10-13 00:27:38.000000000 +0200 -+++ ctags/jscript.c 2014-09-30 13:49:34.837349283 +0200 -@@ -1,5 +1,5 @@ - /* -- * $Id: jscript.c 666 2008-05-15 17:47:31Z dfishburn $ -+ * $Id: jscript.c 791 2012-10-24 01:13:13Z dfishburn $ - * - * Copyright (c) 2003, Darren Hiebert - * -@@ -215,6 +215,7 @@ - * Tag generation functions - */ - -+/* - static void makeConstTag (tokenInfo *const token, const jsKind kind) - { - if (JsKinds [kind].enabled && ! token->ignoreTag ) -@@ -238,12 +239,13 @@ - - if (JsKinds [kind].enabled && ! token->ignoreTag ) - { -- /* -+ * - * If a scope has been added to the token, change the token - * string to include the scope when making the tag. -- */ -+ * - if ( vStringLength(token->scope) > 0 ) - { -+ * - fulltag = vStringNew (); - vStringCopy(fulltag, token->scope); - vStringCatS (fulltag, "."); -@@ -251,8 +253,54 @@ - vStringTerminate(fulltag); - vStringCopy(token->string, fulltag); - vStringDelete (fulltag); -+ * -+ jsKind parent_kind = JSTAG_CLASS; -+ -+ * -+ * if we're creating a function (and not a method), -+ * guess we're inside another function -+ * -+ if (kind == JSTAG_FUNCTION) -+ parent_kind = JSTAG_FUNCTION; -+ -+ e.extensionFields.scope[0] = JsKinds [parent_kind].name; -+ e.extensionFields.scope[1] = vStringValue (token->scope); - } -- makeConstTag (token, kind); -+ * makeConstTag (token, kind); * -+ makeTagEntry (&e); -+ } -+} -+*/ -+ -+static void makeJsTag (tokenInfo *const token, const jsKind kind) -+{ -+ if (JsKinds [kind].enabled && ! token->ignoreTag ) -+ { -+ const char *const name = vStringValue (token->string); -+ tagEntryInfo e; -+ initTagEntry (&e, name); -+ -+ e.lineNumber = token->lineNumber; -+ e.filePosition = token->filePosition; -+ e.kindName = JsKinds [kind].name; -+ e.kind = JsKinds [kind].letter; -+ -+ if ( vStringLength(token->scope) > 0 ) -+ { -+ jsKind parent_kind = JSTAG_CLASS; -+ -+ /* -+ * If we're creating a function (and not a method), -+ * guess we're inside another function -+ */ -+ if (kind == JSTAG_FUNCTION) -+ parent_kind = JSTAG_FUNCTION; -+ -+ e.extensionFields.scope[0] = JsKinds [parent_kind].name; -+ e.extensionFields.scope[1] = vStringValue (token->scope); -+ } -+ -+ makeTagEntry (&e); - } - } - diff --git a/ctags-p5.9.20210307.0-build.patch b/ctags-p5.9.20210307.0-build.patch new file mode 100644 index 0000000..15dbb08 --- /dev/null +++ b/ctags-p5.9.20210307.0-build.patch @@ -0,0 +1,108 @@ +diff -up ctags-p5.9.20210307.0/configure.ac.orig ctags-p5.9.20210307.0/configure.ac +--- ctags-p5.9.20210307.0/configure.ac.orig 2021-03-11 15:28:04.114839683 +0100 ++++ ctags-p5.9.20210307.0/configure.ac 2021-03-11 15:28:22.233584068 +0100 +@@ -243,25 +243,6 @@ AC_PROG_CC_C99 + AC_PROG_RANLIB + AC_C_BIGENDIAN + +-# https://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html +-AX_PROG_CC_FOR_BUILD +- +-# We need to compile and run a program on the build machine. +-AC_MSG_CHECKING(for cc for build) +-if test "$cross_compiling" = "yes"; then +- CC_FOR_BUILD="${CC_FOR_BUILD-cc}" +-else +- CC_FOR_BUILD="${CC_FOR_BUILD-$CC}" +- CFLAGS_FOR_BUILD="${CFLAGS_FOR_BUILD-$CFLAGS}" +- CPPFLAGS_FOR_BUILD="${CPPFLAGS_FOR_BUILD-$CPPFLAGS}" +- LDFLAGS_FOR_BUILD="${LDFLAGS_FOR_BUILD-$LDFLAGS}" +-fi +-AC_MSG_RESULT($CC_FOR_BUILD) +-AC_ARG_VAR(CC_FOR_BUILD,[build system C compiler]) +-AC_ARG_VAR(CFLAGS_FOR_BUILD,[CFLAGS for build system C compiler]) +-AC_ARG_VAR(CPPFLAGS_FOR_BUILD,[CPPFLAGS for build system C compiler]) +-AC_ARG_VAR(LDFLAGS_FOR_BUILD,[LDFLAGS for build system C compiler]) +- + AC_ARG_VAR(AR,[ar command or path]) + AC_ARG_VAR(RANLIB,[ranlib command or path]) + AC_ARG_VAR(WINDRES,[windres command or path, used with mingw-w64]) +diff -up ctags-p5.9.20210307.0/Makefile.am.orig ctags-p5.9.20210307.0/Makefile.am +--- ctags-p5.9.20210307.0/Makefile.am.orig 2021-03-11 15:30:20.393270480 +0100 ++++ ctags-p5.9.20210307.0/Makefile.am 2021-03-11 15:30:41.824895156 +0100 +@@ -11,7 +11,7 @@ EXTRA_DIST = README.md autogen.sh \ + misc/ctags-optlib-mode.el \ + misc/mk-interactive-request.sh misc/roundtrip misc/tinst \ + misc/packcc/.gitignore misc/packcc/LICENSE.txt \ +- misc/packcc/README.md misc/packcc/packcc.c \ ++ misc/packcc/README.md \ + misc/validators/validator-jq \ + misc/validators/validator-KNOWN-INVALIDATION \ + misc/validators/validator-NONE \ +@@ -29,29 +29,21 @@ EXTRA_DIST = README.md autogen.sh \ + CLEANFILES = + MOSTLYCLEANFILES = + +-clean-local: +- rm -f packcc$(BUILD_EXEEXT) +- @if test "$(top_srcdir)" != "$(top_builddir)"; then \ +- rm -rf $(OPTLIB2C_SRCS); \ +- fi +- + bin_PROGRAMS = ctags + noinst_LIBRARIES = libctags.a + +-noinst_PROGRAMS = ++noinst_PROGRAMS = packcc + noinst_PROGRAMS += mini-geany + + if HAVE_STRNLEN_FOR_BUILD + EXTRA_CPPFLAGS_FOR_BUILD = -DUSE_SYSTEM_STRNLEN + endif + +-PACKCC = $(top_builddir)/packcc$(BUILD_EXEEXT) +- + cc4b_verbose = $(cc4b_verbose_@AM_V@) + cc4b_verbose_ = $(cc4b_verbose_@AM_DEFAULT_V@) + cc4b_verbose_0 = @echo CC4BUILD " $@"; +-$(PACKCC): $(top_srcdir)/misc/packcc/packcc.c +- $(cc4b_verbose)$(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(EXTRA_CPPFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ $(top_srcdir)/misc/packcc/packcc.c ++ ++packcc_SOURCES = misc/packcc/packcc.c + + if USE_READCMD + bin_PROGRAMS+= readtags +@@ -144,16 +136,13 @@ SUFFIXES += .ctags + $(OPTLIB2C_SRCS): $(OPTLIB2C) Makefile + endif + +-packcc_verbose = $(packcc_verbose_@AM_V@) +-packcc_verbose_ = $(packcc_verbose_@AM_DEFAULT_V@) +-packcc_verbose_0 = @echo PACKCC " $@"; + SUFFIXES += .peg +-.peg.c: +- $(packcc_verbose)$(PACKCC) -i \"general.h\" -o $(top_builddir)/peg/$(*F) "$<" +-.peg.h: +- $(packcc_verbose)$(PACKCC) -i \"general.h\" -o $(top_builddir)/peg/$(*F) "$<" +-# You cannot use $(PACKCC) as a target name here. +-$(PEG_SRCS) $(PEG_HEADS): $(PACKCC) Makefile ++.peg.c: packcc$(EXEEXT) ++ $(top_builddir)/packcc$(EXEEXT) -i \"general.h\" -o $(top_builddir)/peg/$(*F) "$<" ++.peg.h: packcc$(EXEEXT) ++ $(top_builddir)/packcc$(EXEEXT) -i \"general.h\" -o $(top_builddir)/peg/$(*F) "$<" ++ ++$(PEG_SRCS) $(PEG_HEADS): packcc$(EXEEXT) + dist_libctags_a_SOURCES = $(ALL_LIB_HEADS) $(ALL_LIB_SRCS) + + ctags_CPPFLAGS = $(libctags_a_CPPFLAGS) +diff -up ctags-p5.9.20210307.0/configure.ac.orig ctags-p5.9.20210307.0/configure.ac +--- ctags-p5.9.20210307.0/configure.ac.orig 2021-03-11 15:32:28.016218560 +0100 ++++ ctags-p5.9.20210307.0/configure.ac 2021-03-11 15:32:35.686908229 +0100 +@@ -239,7 +239,6 @@ AM_CONDITIONAL(ENABLE_DEBUGGING, [test " + # ------------------- + + AC_PROG_CC +-AC_PROG_CC_C99 + AC_PROG_RANLIB + AC_C_BIGENDIAN + diff --git a/ctags.spec b/ctags.spec index caad50a..6c7a02a 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,20 +1,27 @@ +%define upstreamversion 20210307.0 + Summary: A C programming language indexing and/or cross-reference tool Name: ctags -Version: 5.8 -Release: 31%{?dist} -License: GPLv2+ and LGPLv2+ and Public Domain -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 +Version: 5.9 +Release: 0.1.%{upstreamversion}%{?dist} +License: GPLv2+ +URL: https://ctags.io/ +Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz + +Patch0: ctags-p5.9.20210307.0-build.patch + +BuildRequires: autoconf +BuildRequires: automake BuildRequires: gcc +BuildRequires: jansson-devel +BuildRequires: libseccomp-devel +BuildRequires: libxml2-devel +BuildRequires: libyaml-devel BuildRequires: make +BuildRequires: pkgconfig +BuildRequires: python3-docutils + +Obsoletes: %{name}-etags <= 5.8 %description Ctags generates an index (or tag) file of C language objects found in @@ -33,65 +40,34 @@ 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 -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 +%autosetup -p1 -n %{name}-p%{version}.%{upstreamversion} %build +./autogen.sh %configure %make_build %install -rm -rf %{buildroot} - %make_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 || : +%check +#make check %files %license COPYING -%doc EXTENDING.html FAQ NEWS README +%doc README.md %{_bindir}/%{name} -%{_mandir}/man1/%{name}.1* - -%files etags -%license COPYING -%{_bindir}/etags.%{name} -%{_mandir}/man1/etags.%{name}.1* +%{_bindir}/readtags +%{_mandir}/man1/* +%{_mandir}/man5/* +%{_mandir}/man7/* %changelog +* Thu Mar 11 2021 Than Ngo - 5.9-0.1.20210307.0 +- switch to universal ctags + * Tue Jan 26 2021 Fedora Release Engineering - 5.8-31 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index d3a3d61..b4c21d5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -c00f82ecdcc357434731913e5b48630d ctags-5.8.tar.gz +SHA512 (ctags-p5.9.20210307.0.tar.gz) = a616e911ea812efd6497b382bb7eaeef5cac09809d23e5ce814758fb5664e13fd07ec36604e73b65eeb12aae9afcb226da287b6abfd33a81e26b6d1b071b9aa7 diff --git a/tests/Sanity-test-for-ctags/ctags-kinds-list b/tests/Sanity-test-for-ctags/ctags-kinds-list index 2f1cf3b..f65a590 100644 --- a/tests/Sanity-test-for-ctags/ctags-kinds-list +++ b/tests/Sanity-test-for-ctags/ctags-kinds-list @@ -1,17 +1,87 @@ +Unknown [disabled] +Abaqus + p Parts + a Assembly + s Steps +Abc + s sections +Ada + P package specifications + p packages + T type specifications [off] + t types + U subtype specifications [off] + u subtypes + c record type components + l enum type literals + V variable specifications [off] + v variables + f generic formal parameters + n constants + x user defined exceptions + R subprogram specifications + r subprograms + K task specifications + k tasks + O protected data specifications + o protected data + E task/protected data entry specifications [off] + e task/protected data entries + b labels + i loop/declare identifiers + a automatic variables [off] + y loops and blocks with no identifier [off] + S (ctags internal use) Ant - p projects - t targets + p projects + t targets + P properties(global) + i antfiles +Asciidoc + c chapters + s sections + S level 2 sections + t level 3 sections + T level 4 sections + u level 5 sections + a anchors Asm d defines l labels m macros t types (structs and records) + s sections Asp d constants c classes f functions s subroutines v variables +Autoconf + p packages + t templates + m autoconf macros + w options specified with --with-... + e options specified with --enable-... + s substitution keys + c automake conditions + d definitions +AutoIt + f functions + r regions + g global variables + l local variables + S included scripts +Automake + d directories + P programs + M manuals + T ltlibraries + L libraries + S scripts + D datum + c conditions + s subdirs Awk f functions Basic @@ -26,36 +96,80 @@ BETA p all patterns [off] s slots (fragment uses) v patterns (virtual or rebound) +BibTeX + a article + b book + B booklet + c conference + i inbook + I incollection + j inproceedings + m manual + M mastersthesis + n misc + p phdthesis + P proceedings + s string + t techreport + u unpublished +Clojure + f functions + n namespaces +CMake + f functions + m macros + t targets + v variable definitions + D options specified with -D + p projects C - c classes d macro definitions e enumerators (values inside an enumeration) f function definitions g enumeration names + h included header files l local variables [off] - m class, struct, and union members - n namespaces + m struct, and union members p function prototypes [off] s structure names t typedefs u union names v variable definitions x external and forward variable declarations [off] + z function parameters inside function definitions [off] + L goto labels [off] + D parameters inside macro definitions [off] C++ - c classes d macro definitions e enumerators (values inside an enumeration) f function definitions g enumeration names + h included header files l local variables [off] m class, struct, and union members - n namespaces p function prototypes [off] s structure names t typedefs u union names v variable definitions x external and forward variable declarations [off] + z function parameters inside function definitions [off] + L goto labels [off] + D parameters inside macro definitions [off] + c classes + n namespaces + A namespace aliases [off] + N names imported via using scope::symbol [off] + U using namespace statements [off] + Z template parameters [off] +CPreProcessor + d macro definitions + h included header files + D macro parameters [off] +CSS + c classes + s selectors + i identities C# c classes d macro definitions @@ -70,55 +184,240 @@ C# p properties s structure names t typedefs +Ctags + l language definitions + k kind definitions Cobol - d data items - f file descriptions (FD, SD, RD) - g group items - p paragraphs - P program ids - s sections -CSS + f file descriptions (FD, SD, RD) + g group items + P program ids + s sections + D divisions + p paragraphs + d data items + S source code file +CobolFree + f file descriptions (FD, SD, RD) + g group items + P program ids + s sections + D divisions + p paragraphs + d data items + S source code file +CobolVariable + f file descriptions (FD, SD, RD) + g group items + P program ids + s sections + D divisions + p paragraphs + d data items + S source code file +CUDA + d macro definitions + e enumerators (values inside an enumeration) + f function definitions + g enumeration names + h included header files + l local variables [off] + m struct, and union members + p function prototypes [off] + s structure names + t typedefs + u union names + v variable definitions + x external and forward variable declarations [off] + z function parameters inside function definitions [off] + L goto labels [off] + D parameters inside macro definitions [off] +D + a aliases c classes - s selectors - i identities + g enumeration names + e enumerators (values inside an enumeration) + x external variable declarations [off] + f function definitions + i interfaces + l local variables [off] + m class, struct, and union members + X mixins + M modules + n namespaces + p function prototypes [off] + s structure names + T templates + u union names + v variable definitions + V version statements +Diff + m modified files + n newly created files + d deleted files + h hunks +DTD + E entities + p parameter entities + e elements + a attributes + n notations +DTS + p phandlers + l labels DosBatch - l labels - v variables + l labels + v variables Eiffel c classes f features l local entities [off] +Elixir + p protocols (defprotocol...) + m modules (defmodule ...) + f functions (def ...) + c callbacks (defcallback ...) + d delegates (defdelegate ...) + e exceptions (defexception ...) + g guards (defguard ...) + i implementations (defimpl ...) + a macros (defmacro ...) + o operators (e.g. "defmacro a <<< b") + r records (defrecord...) + t tests (test ...) + y types (@type ...) +Elm + m Module + n Renamed Imported Module + p Port + t Type Definition + c Type Constructor + a Type Alias + f Functions +EmacsLisp + u unknown type of definitions + f functions + v variables + c constants + m macros + a aliases for functions + V aliases for variables + s inline function + i inline function + e errors + M minor modes + D derived major mode + C customizable variables + G customization groups + H customizable faces + T custom themes Erlang d macro definitions f functions m modules r record definitions + t type definitions +Falcon + c classes + f functions + m class members + v variables + i imports Flex f functions c classes + i interfaces + P packages m methods p properties v global variables + l local variables [off] + C constants + I imports x mxtags Fortran b block data c common blocks e entry points + E enumerations f functions - i interface contents, generic names, and operators [off] + i interface contents, generic names, and operators k type and structure components l labels L local, common block, and namelist variables [off] m modules + M type bound procedures n namelists + N enumeration values p programs + P subprogram prototypes [off] s subroutines t derived types and structures v program (global) and module variables + S submodules +FunctionParameters + m methods + f functions +Fypp + m macros +Gdbinit + d definitions + D documents [off] + t toplevel variables + l local variables [off] +Go + p packages + f functions + c constants + t types + v variables + s structs + i interfaces + m struct members + M struct anonymous members + n interface method specification + u unknown + P name for specifying imported package + a type aliases + R receivers [off] +Haskell + t types + c type constructors + f functions + m modules +Haxe + m methods + c classes + e enumerations + v variables + i interfaces + t typedefs HTML - a named anchors - f JavaScript functions + a named anchors + c classes + h H1 headings + i H2 headings + j H3 headings + C stylesheets + I identifiers + J scripts +Iniconf + s sections + k keys +Inko + o Class definition + m Method definition + t Trait definition + a Attribute definition + c Constant definition + r Reopen class +ITcl + c classes + m methods + v object-specific variables + C common variables + p procedures within the class namespace Java + a annotation declarations c classes e enum constants f fields @@ -127,32 +426,175 @@ Java l local variables [off] m methods p packages +JavaProperties + k keys JavaScript f functions c classes m methods p properties + C constants v global variables + g generators + G getters + S setters +JSON + o objects + a arrays + n numbers + s strings + b booleans + z nulls +Julia + c Constants + f Functions + g Fields + m Macros + n Modules + s Structures + t Types + x name defined in other modules +Kconfig + c configs + m menus + M the main menu + k kconfig file + C choices +LdScript + S sections + s symbols + v versions + i input sections Lisp + u unknown type of definitions f functions + v variables + m macros + c constants +LiterateHaskell + t types + c type constructors + f functions + m modules Lua f functions +M4 + d macros + I macro files +Man + t titles + s sections Make m macros + t targets + I makefiles +Markdown + c chapsters + s sections + S subsections + t subsubsections + T level 4 subsections + u level 5 subsections MatLab - f function - f function - f function + f function + v variable + c class +Meson + P projects + V variables + S subdirs + B build targets + c custom targets + t tests + b benchmark targets + r run targets +Moose + c classes + m methods + a attributes + w wrappers + r roles +Myrddin + f functions + c constants + v variables + t types + r traits + p packages +NSIS + s sections + f functions + v variables + d definitions + m macros + S section groups + p macro parameters [off] + l language strings + i NSIS scripts +ObjectiveC + i class interface + I class implementation + P Protocol + m Object's method + c Class' method + v Global variable + E Object field + f A function + p A property + t A type alias + s A type structure + e An enumeration + M A preprocessor macro + C categories +OldC++ [disabled] + c classes + d macro definitions + e enumerators (values inside an enumeration) + f function definitions + g enumeration names + h included header files + l local variables [off] + m class, struct, and union members + n namespaces + p function prototypes [off] + s structure names + t typedefs + u union names + v variable definitions + x external and forward variable declarations [off] + L goto label [off] + D cpp macro parameters [off] +OldC [disabled] + c classes + d macro definitions + e enumerators (values inside an enumeration) + f function definitions + g enumeration names + h included header files + l local variables [off] + m class, struct, and union members + n namespaces + p function prototypes [off] + s structure names + t typedefs + u union names + v variable definitions + x external and forward variable declarations [off] + L goto label [off] + D cpp macro parameters [off] OCaml c classes m Object's method M Module or functor v Global variable + p Signature item t Type name f A function C A constructor r A 'structure' field e An exception +Passwd + u user names Pascal f functions p procedures @@ -163,37 +605,158 @@ Perl p packages s subroutines d subroutine declarations [off] + M modules [off] +Perl6 + c classes + g grammars + m methods + o modules + p packages + r roles + u rules + b submethods + s subroutines + t tokens PHP - c classes - i interfaces - d constant definitions - f functions - v variables - v variables - j javascript functions - j javascript functions - j javascript functions + c classes + d constant definitions + f functions + i interfaces + l local variables [off] + n namespaces + t traits + v variables + a aliases +Pod + c chapters + s sections + S subsections + t subsubsections +PowerShell + f functions + v variables +Protobuf + p packages + m messages + f fields + e enum constants + g enum types + s services + r RPC methods + o oneof names + G groups + D .proto definition +PuppetManifest + c classes + d definitions + n nodes + r resources + v variables Python c classes f functions m class members v variables - i imports + I name referring a module defined in other file + i modules + x name referring a class/variable/function/module defined in other module + z function parameters [off] + l local variables [off] +PythonLoggingConfig + L logger sections + q logger qualnames +QemuHX + q QEMU Management Protocol dispatch table entries + i item in texinfo doc +QtMoc + s slots + S signals + p properties +R + f functions + l libraries + s sources + g global variables having values other than function() + v function variables having values other than function() + z function parameters inside function definitions [off] + c vectors explicitly created with `c()' + L lists explicitly created with `list()' + d data frame explicitly created with `data.frame()' + n names attribtes in vectors, lists, or dataframes +R6Class + c classes + m methods + f fields + a active binding functions +RSpec + d describes + c contexts REXX - s subroutines + s subroutines +Robot + t testcases + k keywords + v variables +RpmSpec + t tags + m macros + p packages + g global macros + p patch files +ReStructuredText + c chapters + s sections + S subsections + t subsubsections + C citations + T targets + d substitute definitions Ruby c classes f methods m modules - F singleton methods + S singleton methods + C constants + A accessors + a aliases + L libraries +Rust + n module + s structural type + i trait interface + c implementation + f Function + g Enum + t Type Alias + v Global variable + M Macro Definition + m A struct field + e An enum variant + P A method +S4Class + c classes + r representations + g generics + m methods Scheme f functions s sets -Sh +SCSS + m mixins f functions + v variables + c classes + P placeholder classes + i identities + z function parameters +Sh + a aliases + f functions + s script files + h label for here document SLang - f functions - n namespaces + f functions + n namespaces SML e exception declarations f function definitions @@ -206,7 +769,7 @@ SQL c cursors d prototypes [off] f functions - F record fields + E record fields l local variables [off] L block label P packages @@ -225,32 +788,88 @@ SQL n synonyms x MobiLink Table Scripts y MobiLink Conn Scripts + z MobiLink Properties +SystemdUnit + u units +SystemTap + p probe aliases + f functions + v variables + m macros Tcl + p procedures + n namespaces + z procedure parameters [off] +TclOO c classes m methods - p procedures Tex + p parts c chapters s sections u subsections b subsubsections - p parts P paragraphs G subparagraphs + l labels + i external input files + B bibliography items + C command created with \newcommand + N counter created with \newcounter +TeXBeamer + f frametitles + g framesubtitles +TTCN + M module definition + t type definition + c constant definition + d template definition + f function definition + s signature definition + C testcase definition + a altstep definition + G group definition + P module parameter definition + v variable instance + T timer instance + p port instance + m record/set/union member + e enumeration value +Txt2tags + s sections +TypeScript + f functions + c classes + i interfaces + g enums + e enumerators (values inside an enumeration) + m methods + n namespaces + z function parameters inside function definitions [off] + p properties + v variables + l local variables [off] + C constants + G generators + a aliases Vera c classes d macro definitions e enumerators (values inside an enumeration) f function definitions g enumeration names + i interfaces l local variables [off] m class, struct, and union members p programs P function prototypes [off] + s signals t tasks T typedefs v variable definitions x external variable declarations [off] + h included header files + D cpp macro parameters [off] Verilog c constants (define, parameter, specparam) e events @@ -258,8 +877,40 @@ Verilog m modules n net data types p ports - r register data types + r variable data types t tasks + b blocks (begin, fork) + i instances of module +SystemVerilog + c constants (define, parameter, specparam, enum values) + e events + f functions + m modules + n net data types + p ports + r variable data types + t tasks + b blocks (begin, fork) + i instances of module or interface + A assertions (assert, assume, cover, restrict) + C classes + V covergroups + E enumerators + I interfaces + M modports + K packages + P programs + Q prototypes (extern, pure) [off] + R properties + S structs and unions + T type declarations + H checkers + L clocking + q sequences + w struct and union members + l interface class + O constraints + N nettype declarations VHDL c constant declarations t type definitions @@ -272,11 +923,98 @@ VHDL p procedure prototypes and declarations P package definitions l local definitions [off] + a architectures + q port declarations + g generic declarations + s signal declarations + Q processes + v variables + A aliases Vim a autocommand groups c user-defined commands f function definitions m maps v variable definitions + n vimball filename + C constant definitions +WindRes + d dialogs + m menus + i icons + b bitmaps + c cursors + f fonts + v versions + a accelerators YACC - l labels + l labels +YumRepo + r repository id +Zephir + c classes + d constant definitions + f functions + i interfaces + l local variables [off] + n namespaces + t traits + v variables + a aliases +DBusIntrospect + a arguments + i interfaces + m methods + s signals + p properties + n nodes +Glade + c classes + h handlers +Maven2 + g group identifiers + a artifact identifiers + p properties + r repository identifiers +PlistXML + k keys +RelaxNG + e elements + a attributes + n named patterns +SVG + d ids in defs tags +XML + i id attributes + n namespace prefixes + r root elements +XSLT + s stylesheets + p parameters + m matched template + n matched template + v variables +Yaml + a anchors +AnsiblePlaybook + p plays +Varlink + i interfaces + m methods + I input parameters + O output parameters + s structs + f fields + g enumeration names + e enumerators (values inside an enumeration) + E errors + d error descriptors +Kotlin + p packages + i interfaces + c classes + o objects + m methods + T typealiases + C constants + v variables diff --git a/tests/Sanity-test-for-ctags/ctags-lang-list b/tests/Sanity-test-for-ctags/ctags-lang-list index f9338de..cd8a1ee 100644 --- a/tests/Sanity-test-for-ctags/ctags-lang-list +++ b/tests/Sanity-test-for-ctags/ctags-lang-list @@ -1,42 +1,132 @@ +Abaqus +Abc +Ada +AnsiblePlaybook Ant +Asciidoc Asm Asp +Autoconf +AutoIt +Automake Awk Basic BETA +BibTeX C -C++ C# +C++ +Clojure +CMake Cobol +CobolFree +CobolVariable +CPreProcessor CSS +Ctags +CUDA +D +DBusIntrospect +Diff DosBatch +DTD +DTS Eiffel +Elixir +Elm +EmacsLisp Erlang +Falcon Flex Fortran +FunctionParameters +Fypp +Gdbinit +Glade +Go +Haskell +Haxe HTML +Iniconf +Inko +ITcl Java +JavaProperties JavaScript +JSON +Julia +Kconfig +Kotlin +LdScript Lisp +LiterateHaskell Lua +M4 Make +Man +Markdown MatLab +Maven2 +Meson +Moose +Myrddin +NSIS +ObjectiveC OCaml +OldC [disabled] +OldC++ [disabled] Pascal +Passwd Perl +Perl6 PHP +PlistXML +Pod +PowerShell +Protobuf +PuppetManifest Python +PythonLoggingConfig +QemuHX +QtMoc +R +R6Class +RelaxNG +ReStructuredText REXX +Robot +RpmSpec +RSpec Ruby +Rust +S4Class Scheme +SCSS Sh SLang SML SQL +SVG +SystemdUnit +SystemTap +SystemVerilog Tcl +TclOO Tex +TeXBeamer +TTCN +Txt2tags +TypeScript +Unknown [disabled] +Varlink Vera Verilog VHDL Vim +WindRes +XML +XSLT YACC +Yaml +YumRepo +Zephir diff --git a/tests/Sanity-test-for-ctags/ctags-maps-list b/tests/Sanity-test-for-ctags/ctags-maps-list index d9fe867..676218a 100644 --- a/tests/Sanity-test-for-ctags/ctags-maps-list +++ b/tests/Sanity-test-for-ctags/ctags-maps-list @@ -1,42 +1,132 @@ -Ant *.build.xml -Asm *.asm *.ASM *.s *.S *.A51 *.29[kK] *.[68][68][kKsSxX] *.[xX][68][68] +Unknown +Abaqus *.inp +Abc *.abc *.abc +Ada *.adb *.ads *.Ada *.ada +Ant build.xml *.build.xml *.ant *.xml +Asciidoc *.asc *.adoc *.asciidoc *.asc *.adoc *.asciidoc +Asm *.A51 *.29[kK] *.[68][68][kKsSxX] *.[xX][68][68] *.asm *.ASM *.s *.S Asp *.asp *.asa +Autoconf configure.in *.ac +AutoIt *.au3 *.AU3 *.aU3 *.Au3 +Automake Makefile.am *.am Awk *.awk *.gawk *.mawk Basic *.bas *.bi *.bb *.pb BETA *.bet +BibTeX *.bib +Clojure *.clj *.cljs *.cljc +CMake CMakeLists.txt *.cmake C *.c -C++ *.c++ *.cc *.cp *.cpp *.cxx *.h *.h++ *.hh *.hp *.hpp *.hxx *.C *.H -C# *.cs -Cobol *.cbl *.cob *.CBL *.COB +C++ *.c++ *.cc *.cp *.cpp *.cxx *.h *.h++ *.hh *.hp *.hpp *.hxx *.inl *.C *.H *.CPP *.CXX +CPreProcessor CSS *.css +C# *.cs +Ctags *.ctags +Cobol *.cbl *.cob *.CBL *.COB +CobolFree +CobolVariable +CUDA *.cu *.cuh +D *.d *.di +Diff *.diff *.patch +DTD *.dtd *.mod +DTS *.dts *.dtsi DosBatch *.bat *.cmd Eiffel *.e +Elixir *.ex *.exs +Elm *.elm +EmacsLisp *.el Erlang *.erl *.ERL *.hrl *.HRL +Falcon *.fal *.ftd Flex *.as *.mxml -Fortran *.f *.for *.ftn *.f77 *.f90 *.f95 *.F *.FOR *.FTN *.F77 *.F90 *.F95 +Fortran *.f *.for *.ftn *.f77 *.f90 *.f95 *.f03 *.f08 *.f15 *.F *.FOR *.FTN *.F77 *.F90 *.F95 *.F03 *.F08 *.F15 +FunctionParameters +Fypp *.fy +Gdbinit .gdbinit *.gdb +Go *.go +Haskell *.hs +Haxe *.hx HTML *.htm *.html +Iniconf *.ini *.conf +Inko *.inko +ITcl *.itcl Java *.java -JavaScript *.js -Lisp *.cl *.clisp *.el *.l *.lisp *.lsp +JavaProperties *.properties +JavaScript *.js *.jsx *.mjs +JSON *.json +Julia *.jl +Kconfig Kconfig* +LdScript *.lds.S ld.script *.lds *.scr *.ld *.ldi +Lisp *.cl *.clisp *.l *.lisp *.lsp +LiterateHaskell *.lhs Lua *.lua -Make *.mak *.mk [Mm]akefile GNUmakefile +M4 *.m4 *.spt +Man *.1 *.2 *.3 *.4 *.5 *.6 *.7 *.8 *.9 *.3pm *.3stap *.7stap +Make [Mm]akefile GNUmakefile *.mak *.mk +Markdown *.md *.markdown MatLab *.m -OCaml *.ml *.mli +Meson meson.build +Moose +Myrddin *.myr +NSIS *.nsi *.nsh +ObjectiveC *.mm *.m *.h +OldC++ *.c++ *.cc *.cp *.cpp *.cxx *.h *.h++ *.hh *.hp *.hpp *.hxx *.inl *.C *.H +OldC *.c +OCaml *.ml *.mli *.aug +Passwd passwd Pascal *.p *.pas -Perl *.pl *.pm *.plx *.perl -PHP *.php *.php3 *.phtml -Python *.py *.pyx *.pxd *.pxi *.scons +Perl *.pl *.pm *.ph *.plx *.perl +Perl6 *.p6 *.pm6 *.pm *.pl6 +PHP *.php *.php3 *.php4 *.php5 *.php7 *.phtml +Pod *.pod +PowerShell *.ps1 *.psm1 +Protobuf *.proto +PuppetManifest *.pp +Python *.py *.pyx *.pxd *.pxi *.scons *.wsgi +PythonLoggingConfig +QemuHX *.hx +QtMoc +R *.r *.R *.s *.q +R6Class +RSpec REXX *.cmd *.rexx *.rx +Robot *.robot +RpmSpec *.spec +ReStructuredText *.rest *.reST *.rst Ruby *.rb *.ruby -Scheme *.SCM *.SM *.sch *.scheme *.scm *.sm -Sh *.sh *.SH *.bsh *.bash *.ksh *.zsh +Rust *.rs +S4Class +Scheme *.SCM *.SM *.sch *.scheme *.scm *.sm *.rkt +SCSS *.scss +Sh *.sh *.SH *.bsh *.bash *.ksh *.zsh *.ash SLang *.sl SML *.sml *.sig SQL *.sql -Tcl *.tcl *.tk *.wish *.itcl +SystemdUnit *.service *.socket *.device *.mount *.automount *.swap *.target *.path *.timer *.snapshot *.slice +SystemTap *.stp *.stpm +Tcl *.tcl *.tk *.wish *.exp +TclOO Tex *.tex +TeXBeamer +TTCN *.ttcn *.ttcn3 +Txt2tags *.t2t *.t2t +TypeScript *.ts Vera *.vr *.vri *.vrh Verilog *.v +SystemVerilog *.sv *.svh *.svi VHDL *.vhdl *.vhd -Vim *.vim +Vim vimrc [._]vimrc gvimrc [._]gvimrc *.vim *.vba +WindRes *.rc YACC *.y +YumRepo *.repo +Zephir *.zep +DBusIntrospect *.xml +Glade *.glade +Maven2 pom.xml *.pom *.xml +PlistXML *.plist +RelaxNG *.rng +SVG *.svg +XML *.xml +XSLT *.xsl *.xslt +Yaml *.yml +AnsiblePlaybook +Varlink *.varlink +Kotlin *.kt *.kts From 92e64d6a369c36aa7f597b4904730a9d354060a9 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Mon, 10 May 2021 16:00:37 +0200 Subject: [PATCH 08/35] update to 5.9.20210509.0 --- .gitignore | 1 + ctags.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 9d81247..ab0668e 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ ctags-5.6.tar.gz ctags-5.7.tar.gz ctags-5.8.tar.gz /ctags-p5.9.20210307.0.tar.gz +/ctags-p5.9.20210509.0.tar.gz diff --git a/ctags.spec b/ctags.spec index 6c7a02a..0b836ee 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,4 +1,4 @@ -%define upstreamversion 20210307.0 +%define upstreamversion 20210509.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags @@ -65,6 +65,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Mon May 10 2021 Than Ngo - 5.9-0.1.20210509.0 +- update to 5.9.20210509.0 + * Thu Mar 11 2021 Than Ngo - 5.9-0.1.20210307.0 - switch to universal ctags diff --git a/sources b/sources index b4c21d5..b4f7e1c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20210307.0.tar.gz) = a616e911ea812efd6497b382bb7eaeef5cac09809d23e5ce814758fb5664e13fd07ec36604e73b65eeb12aae9afcb226da287b6abfd33a81e26b6d1b071b9aa7 +SHA512 (ctags-p5.9.20210509.0.tar.gz) = e2a6b29025bc6bc3c689328a2eccf2268f84ffc41c1963977e448d72879ffa29f392d9d745aae13f4091689957985f78c51fc891fadd6d7947186b29305fa487 From 72717da0c138709e49c249d9e5472ea158573146 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 20:12:31 +0000 Subject: [PATCH 09/35] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 0b836ee..fcaabd9 100644 --- a/ctags.spec +++ b/ctags.spec @@ -3,7 +3,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 0.1.%{upstreamversion}%{?dist} +Release: 0.2.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -65,6 +65,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Jul 21 2021 Fedora Release Engineering - 5.9-0.2.20210509.0 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Mon May 10 2021 Than Ngo - 5.9-0.1.20210509.0 - update to 5.9.20210509.0 From 4e196fd004cd828ec68010bb1d353ad700e63711 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Tue, 27 Jul 2021 14:38:59 +0200 Subject: [PATCH 10/35] update to p5.9-20210725 --- .gitignore | 1 + ctags-p5.9.20210307.0-build.patch | 108 ------------------------------ ctags.spec | 10 +-- sources | 2 +- 4 files changed, 8 insertions(+), 113 deletions(-) delete mode 100644 ctags-p5.9.20210307.0-build.patch diff --git a/.gitignore b/.gitignore index ab0668e..5732f6e 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ ctags-5.7.tar.gz ctags-5.8.tar.gz /ctags-p5.9.20210307.0.tar.gz /ctags-p5.9.20210509.0.tar.gz +/ctags-p5.9.20210725.0.tar.gz diff --git a/ctags-p5.9.20210307.0-build.patch b/ctags-p5.9.20210307.0-build.patch deleted file mode 100644 index 15dbb08..0000000 --- a/ctags-p5.9.20210307.0-build.patch +++ /dev/null @@ -1,108 +0,0 @@ -diff -up ctags-p5.9.20210307.0/configure.ac.orig ctags-p5.9.20210307.0/configure.ac ---- ctags-p5.9.20210307.0/configure.ac.orig 2021-03-11 15:28:04.114839683 +0100 -+++ ctags-p5.9.20210307.0/configure.ac 2021-03-11 15:28:22.233584068 +0100 -@@ -243,25 +243,6 @@ AC_PROG_CC_C99 - AC_PROG_RANLIB - AC_C_BIGENDIAN - --# https://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html --AX_PROG_CC_FOR_BUILD -- --# We need to compile and run a program on the build machine. --AC_MSG_CHECKING(for cc for build) --if test "$cross_compiling" = "yes"; then -- CC_FOR_BUILD="${CC_FOR_BUILD-cc}" --else -- CC_FOR_BUILD="${CC_FOR_BUILD-$CC}" -- CFLAGS_FOR_BUILD="${CFLAGS_FOR_BUILD-$CFLAGS}" -- CPPFLAGS_FOR_BUILD="${CPPFLAGS_FOR_BUILD-$CPPFLAGS}" -- LDFLAGS_FOR_BUILD="${LDFLAGS_FOR_BUILD-$LDFLAGS}" --fi --AC_MSG_RESULT($CC_FOR_BUILD) --AC_ARG_VAR(CC_FOR_BUILD,[build system C compiler]) --AC_ARG_VAR(CFLAGS_FOR_BUILD,[CFLAGS for build system C compiler]) --AC_ARG_VAR(CPPFLAGS_FOR_BUILD,[CPPFLAGS for build system C compiler]) --AC_ARG_VAR(LDFLAGS_FOR_BUILD,[LDFLAGS for build system C compiler]) -- - AC_ARG_VAR(AR,[ar command or path]) - AC_ARG_VAR(RANLIB,[ranlib command or path]) - AC_ARG_VAR(WINDRES,[windres command or path, used with mingw-w64]) -diff -up ctags-p5.9.20210307.0/Makefile.am.orig ctags-p5.9.20210307.0/Makefile.am ---- ctags-p5.9.20210307.0/Makefile.am.orig 2021-03-11 15:30:20.393270480 +0100 -+++ ctags-p5.9.20210307.0/Makefile.am 2021-03-11 15:30:41.824895156 +0100 -@@ -11,7 +11,7 @@ EXTRA_DIST = README.md autogen.sh \ - misc/ctags-optlib-mode.el \ - misc/mk-interactive-request.sh misc/roundtrip misc/tinst \ - misc/packcc/.gitignore misc/packcc/LICENSE.txt \ -- misc/packcc/README.md misc/packcc/packcc.c \ -+ misc/packcc/README.md \ - misc/validators/validator-jq \ - misc/validators/validator-KNOWN-INVALIDATION \ - misc/validators/validator-NONE \ -@@ -29,29 +29,21 @@ EXTRA_DIST = README.md autogen.sh \ - CLEANFILES = - MOSTLYCLEANFILES = - --clean-local: -- rm -f packcc$(BUILD_EXEEXT) -- @if test "$(top_srcdir)" != "$(top_builddir)"; then \ -- rm -rf $(OPTLIB2C_SRCS); \ -- fi -- - bin_PROGRAMS = ctags - noinst_LIBRARIES = libctags.a - --noinst_PROGRAMS = -+noinst_PROGRAMS = packcc - noinst_PROGRAMS += mini-geany - - if HAVE_STRNLEN_FOR_BUILD - EXTRA_CPPFLAGS_FOR_BUILD = -DUSE_SYSTEM_STRNLEN - endif - --PACKCC = $(top_builddir)/packcc$(BUILD_EXEEXT) -- - cc4b_verbose = $(cc4b_verbose_@AM_V@) - cc4b_verbose_ = $(cc4b_verbose_@AM_DEFAULT_V@) - cc4b_verbose_0 = @echo CC4BUILD " $@"; --$(PACKCC): $(top_srcdir)/misc/packcc/packcc.c -- $(cc4b_verbose)$(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(EXTRA_CPPFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ $(top_srcdir)/misc/packcc/packcc.c -+ -+packcc_SOURCES = misc/packcc/packcc.c - - if USE_READCMD - bin_PROGRAMS+= readtags -@@ -144,16 +136,13 @@ SUFFIXES += .ctags - $(OPTLIB2C_SRCS): $(OPTLIB2C) Makefile - endif - --packcc_verbose = $(packcc_verbose_@AM_V@) --packcc_verbose_ = $(packcc_verbose_@AM_DEFAULT_V@) --packcc_verbose_0 = @echo PACKCC " $@"; - SUFFIXES += .peg --.peg.c: -- $(packcc_verbose)$(PACKCC) -i \"general.h\" -o $(top_builddir)/peg/$(*F) "$<" --.peg.h: -- $(packcc_verbose)$(PACKCC) -i \"general.h\" -o $(top_builddir)/peg/$(*F) "$<" --# You cannot use $(PACKCC) as a target name here. --$(PEG_SRCS) $(PEG_HEADS): $(PACKCC) Makefile -+.peg.c: packcc$(EXEEXT) -+ $(top_builddir)/packcc$(EXEEXT) -i \"general.h\" -o $(top_builddir)/peg/$(*F) "$<" -+.peg.h: packcc$(EXEEXT) -+ $(top_builddir)/packcc$(EXEEXT) -i \"general.h\" -o $(top_builddir)/peg/$(*F) "$<" -+ -+$(PEG_SRCS) $(PEG_HEADS): packcc$(EXEEXT) - dist_libctags_a_SOURCES = $(ALL_LIB_HEADS) $(ALL_LIB_SRCS) - - ctags_CPPFLAGS = $(libctags_a_CPPFLAGS) -diff -up ctags-p5.9.20210307.0/configure.ac.orig ctags-p5.9.20210307.0/configure.ac ---- ctags-p5.9.20210307.0/configure.ac.orig 2021-03-11 15:32:28.016218560 +0100 -+++ ctags-p5.9.20210307.0/configure.ac 2021-03-11 15:32:35.686908229 +0100 -@@ -239,7 +239,6 @@ AM_CONDITIONAL(ENABLE_DEBUGGING, [test " - # ------------------- - - AC_PROG_CC --AC_PROG_CC_C99 - AC_PROG_RANLIB - AC_C_BIGENDIAN - diff --git a/ctags.spec b/ctags.spec index fcaabd9..94a8b8e 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,15 +1,13 @@ -%define upstreamversion 20210509.0 +%define upstreamversion 20210725.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 0.2.%{upstreamversion}%{?dist} +Release: 1.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz -Patch0: ctags-p5.9.20210307.0-build.patch - BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc @@ -59,12 +57,16 @@ Install ctags if you are going to use your system for C programming. %license COPYING %doc README.md %{_bindir}/%{name} +%{_bindir}/optscript %{_bindir}/readtags %{_mandir}/man1/* %{_mandir}/man5/* %{_mandir}/man7/* %changelog +* Tue Jul 27 2021 Than Ngo - 5.9-1.20210725.0 +- update to p5.9-20210725 + * Wed Jul 21 2021 Fedora Release Engineering - 5.9-0.2.20210509.0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild diff --git a/sources b/sources index b4f7e1c..e42a749 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20210509.0.tar.gz) = e2a6b29025bc6bc3c689328a2eccf2268f84ffc41c1963977e448d72879ffa29f392d9d745aae13f4091689957985f78c51fc891fadd6d7947186b29305fa487 +SHA512 (ctags-p5.9.20210725.0.tar.gz) = dabdd7fee7484ae042fa409f78423750f170280fc3c60e61f8d784a97d7b5d5b22b1f2173cd252d69868309a3c91aad82857163117c463378a4bd7e7f7c2015c From 1fc48053550a415324e5ae9f9d069522584d03c3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 00:05:31 +0000 Subject: [PATCH 11/35] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 94a8b8e..27e9af2 100644 --- a/ctags.spec +++ b/ctags.spec @@ -3,7 +3,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 1.%{upstreamversion}%{?dist} +Release: 2.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 5.9-2.20210725.0 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Tue Jul 27 2021 Than Ngo - 5.9-1.20210725.0 - update to p5.9-20210725 From 96242c19eccd26adbc4efbbbb70b25b987de03f6 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Tue, 8 Feb 2022 10:33:30 +0100 Subject: [PATCH 12/35] update to p5.9.20220206.0 --- .gitignore | 1 + ctags.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 5732f6e..716530d 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20210307.0.tar.gz /ctags-p5.9.20210509.0.tar.gz /ctags-p5.9.20210725.0.tar.gz +/ctags-p5.9.20220206.0.tar.gz diff --git a/ctags.spec b/ctags.spec index 27e9af2..b3d773a 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,9 +1,9 @@ -%define upstreamversion 20210725.0 +%define upstreamversion 20220206.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 2.%{upstreamversion}%{?dist} +Release: 3.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Tue Feb 08 2022 Than Ngo - 5.9-3.20220206.0 +- update to p5.9.20220206.0 + * Thu Jan 20 2022 Fedora Release Engineering - 5.9-2.20210725.0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild diff --git a/sources b/sources index e42a749..dd47075 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20210725.0.tar.gz) = dabdd7fee7484ae042fa409f78423750f170280fc3c60e61f8d784a97d7b5d5b22b1f2173cd252d69868309a3c91aad82857163117c463378a4bd7e7f7c2015c +SHA512 (ctags-p5.9.20220206.0.tar.gz) = 77ac19a1f4945d1dcb6d5e801325509c80f2fbc1004a8fe86c2c562fd0a87ec945e215ea3ff8b1d8aadd13191b23fac331adc74515a44b4c28bee6995c6f1465 From 1f47a324adf36174303be41c92ceedcea5abb889 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Mon, 21 Mar 2022 11:56:46 +0100 Subject: [PATCH 13/35] update to 5.9-4.20220313.0 --- .gitignore | 1 + ctags.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 716530d..bd402ad 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20210509.0.tar.gz /ctags-p5.9.20210725.0.tar.gz /ctags-p5.9.20220206.0.tar.gz +/ctags-p5.9.20220313.0.tar.gz diff --git a/ctags.spec b/ctags.spec index b3d773a..f64ad03 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,9 +1,9 @@ -%define upstreamversion 20220206.0 +%define upstreamversion 20220313.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 3.%{upstreamversion}%{?dist} +Release: 4.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Mon Mar 21 2022 Than Ngo - 5.9-4.20220313.0 +- update to 5.9-4.20220313.0 + * Tue Feb 08 2022 Than Ngo - 5.9-3.20220206.0 - update to p5.9.20220206.0 diff --git a/sources b/sources index dd47075..6a8ce19 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20220206.0.tar.gz) = 77ac19a1f4945d1dcb6d5e801325509c80f2fbc1004a8fe86c2c562fd0a87ec945e215ea3ff8b1d8aadd13191b23fac331adc74515a44b4c28bee6995c6f1465 +SHA512 (ctags-p5.9.20220313.0.tar.gz) = 476d15d550c04a5f517ba4bcdc95935155177f2e081762df4b7ca4797ab76e5a72f8c0e366148122aa424faeaccd73850d298c413a3b0625e005aa2567d94dbb From 4fab0ae0ea6073502fafcea0c4ddbea7ef6f1e63 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Tue, 26 Apr 2022 11:28:04 +0200 Subject: [PATCH 14/35] update to 20220424.0 --- .gitignore | 1 + ctags.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index bd402ad..eacb016 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20210725.0.tar.gz /ctags-p5.9.20220206.0.tar.gz /ctags-p5.9.20220313.0.tar.gz +/ctags-p5.9.20220424.0.tar.gz diff --git a/ctags.spec b/ctags.spec index f64ad03..9b424a7 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,9 +1,9 @@ -%define upstreamversion 20220313.0 +%define upstreamversion 20220424.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 4.%{upstreamversion}%{?dist} +Release: 5.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Tue Apr 26 2022 Than Ngo - 5.9-5.20220424.0 +- 20220424.0 + * Mon Mar 21 2022 Than Ngo - 5.9-4.20220313.0 - update to 5.9-4.20220313.0 diff --git a/sources b/sources index 6a8ce19..aef5ef8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20220313.0.tar.gz) = 476d15d550c04a5f517ba4bcdc95935155177f2e081762df4b7ca4797ab76e5a72f8c0e366148122aa424faeaccd73850d298c413a3b0625e005aa2567d94dbb +SHA512 (ctags-p5.9.20220424.0.tar.gz) = ca7834cde59682b2ef5d7177eb47f5779c7e5db0f9691db93e4ecb5212af9102b9cfe20d1ce6aa8a1e03ed688baea238015b9650284d508a639df34b4186d31a From d49a186ea45e3a21944b9dd91415ae8203672200 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Thu, 12 May 2022 17:10:25 +0200 Subject: [PATCH 15/35] update to 5.9.20220508.0 --- .gitignore | 1 + ctags.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index eacb016..56bd641 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20220206.0.tar.gz /ctags-p5.9.20220313.0.tar.gz /ctags-p5.9.20220424.0.tar.gz +/ctags-p5.9.20220508.0.tar.gz diff --git a/ctags.spec b/ctags.spec index 9b424a7..826429f 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,9 +1,9 @@ -%define upstreamversion 20220424.0 +%define upstreamversion 20220508.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 5.%{upstreamversion}%{?dist} +Release: 6.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Thu May 12 2022 Than Ngo - 5.9-6.20220508.0 +- update to 5.9.20220508.0 + * Tue Apr 26 2022 Than Ngo - 5.9-5.20220424.0 - 20220424.0 diff --git a/sources b/sources index aef5ef8..a10ab2e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20220424.0.tar.gz) = ca7834cde59682b2ef5d7177eb47f5779c7e5db0f9691db93e4ecb5212af9102b9cfe20d1ce6aa8a1e03ed688baea238015b9650284d508a639df34b4186d31a +SHA512 (ctags-p5.9.20220508.0.tar.gz) = 7ff2ef2bfe8324fcb5e9bdddd865fe63768cd396a9ee048cb20ed9b0e626351672d369c9fe860bdfecaa22bc9ad8f4560d3c55bb972117c8e703b38477df151b From e190eccc6d1ab1cd42b6b86d36c9d1541a8df694 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Thu, 23 Jun 2022 09:40:49 +0200 Subject: [PATCH 16/35] update to 5.9.6.20220619.0 --- .gitignore | 1 + ctags.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 56bd641..bf94872 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20220313.0.tar.gz /ctags-p5.9.20220424.0.tar.gz /ctags-p5.9.20220508.0.tar.gz +/ctags-p5.9.20220619.0.tar.gz diff --git a/ctags.spec b/ctags.spec index 826429f..796c025 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,4 +1,4 @@ -%define upstreamversion 20220508.0 +%define upstreamversion 20220619.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Thu Jun 23 2022 Than Ngo - 5.9-6.20220619.0 +- update to 5.9.6.20220619.0 + * Thu May 12 2022 Than Ngo - 5.9-6.20220508.0 - update to 5.9.20220508.0 diff --git a/sources b/sources index a10ab2e..38c6274 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20220508.0.tar.gz) = 7ff2ef2bfe8324fcb5e9bdddd865fe63768cd396a9ee048cb20ed9b0e626351672d369c9fe860bdfecaa22bc9ad8f4560d3c55bb972117c8e703b38477df151b +SHA512 (ctags-p5.9.20220619.0.tar.gz) = 732c1755fb9e49cf2fb7a73917e003ee4ab22b6703655959e2fb74d85fcd1bb8c1827fba78a32004d9f9640c7112854987c8dbbc1f06b9e4e24c1395288e0363 From 4b8b5341ea74e017e10dd475c1d18522510f0c49 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 20 Jul 2022 23:51:12 +0000 Subject: [PATCH 17/35] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 796c025..1517820 100644 --- a/ctags.spec +++ b/ctags.spec @@ -3,7 +3,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 6.%{upstreamversion}%{?dist} +Release: 7.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Jul 20 2022 Fedora Release Engineering - 5.9-7.20220619.0 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jun 23 2022 Than Ngo - 5.9-6.20220619.0 - update to 5.9.6.20220619.0 From dc47125e27b6e50c3c84c899093c9a7501a69a99 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Wed, 27 Jul 2022 14:23:25 +0200 Subject: [PATCH 18/35] update to 5.9.20220724.0 --- .gitignore | 1 + ctags.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index bf94872..095ea28 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20220424.0.tar.gz /ctags-p5.9.20220508.0.tar.gz /ctags-p5.9.20220619.0.tar.gz +/ctags-p5.9.20220724.0.tar.gz diff --git a/ctags.spec b/ctags.spec index 1517820..1d49d51 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,9 +1,9 @@ -%define upstreamversion 20220619.0 +%define upstreamversion 20220724.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 7.%{upstreamversion}%{?dist} +Release: 8.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Jul 27 2022 Than Ngo - 5.9-8.20220724.0 +- update to 5.9.20220724.0 + * Wed Jul 20 2022 Fedora Release Engineering - 5.9-7.20220619.0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/sources b/sources index 38c6274..f1e1ee8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20220619.0.tar.gz) = 732c1755fb9e49cf2fb7a73917e003ee4ab22b6703655959e2fb74d85fcd1bb8c1827fba78a32004d9f9640c7112854987c8dbbc1f06b9e4e24c1395288e0363 +SHA512 (ctags-p5.9.20220724.0.tar.gz) = 6da7b9bdea70eee56ff2f6bcc5963b337fe6cb5937d5824813437a135ca6a5d901e671da6f342c3d6509354c9a834665f742a8bb7693a9fa559a2566fdbe088c From 5e46510de83d18a265197e672a1b1b9bf52844f5 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Mon, 12 Sep 2022 14:41:51 +0200 Subject: [PATCH 19/35] update to 5.9.20220911.0 --- .gitignore | 1 + ctags.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 095ea28..8079969 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20220508.0.tar.gz /ctags-p5.9.20220619.0.tar.gz /ctags-p5.9.20220724.0.tar.gz +/ctags-p5.9.20220911.0.tar.gz diff --git a/ctags.spec b/ctags.spec index 1d49d51..7991c36 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,9 +1,9 @@ -%define upstreamversion 20220724.0 +%define upstreamversion 20220911.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 8.%{upstreamversion}%{?dist} +Release: 9.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Mon Sep 12 2022 Than Ngo - 5.9-9.20220911.0 +- update to 5.9.20220911.0 + * Wed Jul 27 2022 Than Ngo - 5.9-8.20220724.0 - update to 5.9.20220724.0 diff --git a/sources b/sources index f1e1ee8..19ccbab 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20220724.0.tar.gz) = 6da7b9bdea70eee56ff2f6bcc5963b337fe6cb5937d5824813437a135ca6a5d901e671da6f342c3d6509354c9a834665f742a8bb7693a9fa559a2566fdbe088c +SHA512 (ctags-p5.9.20220911.0.tar.gz) = eabab64a7669c5f70b9110b2dafaf0d7b545bf7228f39457d5b2408889c3c36e21a423d600c32ea33012bf09997fa7e7370b3465c26ab35e980a71d4d0423bd2 From e9d7b2b2f43aebca6d59f40ae255e1840d2823de Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Tue, 18 Oct 2022 14:21:29 +0200 Subject: [PATCH 20/35] update to 5.9.20221016.0 --- .gitignore | 1 + ctags.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 8079969..cc64a64 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20220619.0.tar.gz /ctags-p5.9.20220724.0.tar.gz /ctags-p5.9.20220911.0.tar.gz +/ctags-p5.9.20221016.0.tar.gz diff --git a/ctags.spec b/ctags.spec index 7991c36..c9ccb37 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,4 +1,4 @@ -%define upstreamversion 20220911.0 +%define upstreamversion 20221016.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Tue Oct 18 2022 Than Ngo - 5.9-9.20221016.0 +- update to 5.9.20221016.0 + * Mon Sep 12 2022 Than Ngo - 5.9-9.20220911.0 - update to 5.9.20220911.0 diff --git a/sources b/sources index 19ccbab..06d6aa4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20220911.0.tar.gz) = eabab64a7669c5f70b9110b2dafaf0d7b545bf7228f39457d5b2408889c3c36e21a423d600c32ea33012bf09997fa7e7370b3465c26ab35e980a71d4d0423bd2 +SHA512 (ctags-p5.9.20221016.0.tar.gz) = 46ce04b0e3aa04b49d09d1b0ff7ba101a6ff2d16f60b853aa5472fbbced3a7aec50f52b079a6ff877f2bdb74787a6ffbecddf6b1dfcd5b20311aa768c6ee7708 From e58abc23031d8b9e80f7f892f5dc05944ab053fa Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Mon, 21 Nov 2022 10:53:43 +0100 Subject: [PATCH 21/35] update to p5.9.20221120 --- .gitignore | 1 + ctags.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index cc64a64..a26b7de 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20220724.0.tar.gz /ctags-p5.9.20220911.0.tar.gz /ctags-p5.9.20221016.0.tar.gz +/ctags-p5.9.20221120.0.tar.gz diff --git a/ctags.spec b/ctags.spec index c9ccb37..f3b3106 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,4 +1,4 @@ -%define upstreamversion 20221016.0 +%define upstreamversion 20221120.0 Summary: A C programming language indexing and/or cross-reference tool Name: ctags @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Mon Nov 21 2022 Than Ngo - 5.9-9.20221120.0 +- update to 5.9.20221120.0 + * Tue Oct 18 2022 Than Ngo - 5.9-9.20221016.0 - update to 5.9.20221016.0 diff --git a/sources b/sources index 06d6aa4..9d2ca69 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20221016.0.tar.gz) = 46ce04b0e3aa04b49d09d1b0ff7ba101a6ff2d16f60b853aa5472fbbced3a7aec50f52b079a6ff877f2bdb74787a6ffbecddf6b1dfcd5b20311aa768c6ee7708 +SHA512 (ctags-p5.9.20221120.0.tar.gz) = 48b0eb561b77435910c6f8b507602f27fa2838cfc71a257122ce337835484816990c22f304b292c542cf2449234ae4fcfa936d9368ccc52fc4162efc11e372a0 From dcf425fdf35849f1fcb2199ca0bd5734dc13b742 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 00:47:31 +0000 Subject: [PATCH 22/35] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index f3b3106..77b6657 100644 --- a/ctags.spec +++ b/ctags.spec @@ -3,7 +3,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 5.9 -Release: 9.%{upstreamversion}%{?dist} +Release: 10.%{upstreamversion}%{?dist} License: GPLv2+ URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz @@ -64,6 +64,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 5.9-10.20221120.0 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Mon Nov 21 2022 Than Ngo - 5.9-9.20221120.0 - update to 5.9.20221120.0 From 7fbe2e82d552794a910818630796edf00b002bdb Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Wed, 1 Feb 2023 11:03:43 +0100 Subject: [PATCH 23/35] update to 6.0.0 --- .gitignore | 1 + ctags.spec | 13 +++++++------ sources | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index a26b7de..55cafb3 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20220911.0.tar.gz /ctags-p5.9.20221016.0.tar.gz /ctags-p5.9.20221120.0.tar.gz +/universal-ctags-6.0.0.tar.gz diff --git a/ctags.spec b/ctags.spec index 77b6657..b5ded93 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,12 +1,10 @@ -%define upstreamversion 20221120.0 - Summary: A C programming language indexing and/or cross-reference tool Name: ctags -Version: 5.9 -Release: 10.%{upstreamversion}%{?dist} +Version: 6.0.0 +Release: 1%{?dist} License: GPLv2+ URL: https://ctags.io/ -Source0: https://github.com/universal-ctags/ctags/archive/%{name}-p%{version}.%{upstreamversion}.tar.gz +Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz BuildRequires: autoconf BuildRequires: automake @@ -39,7 +37,7 @@ objects found in source files. Install ctags if you are going to use your system for C programming. %prep -%autosetup -p1 -n %{name}-p%{version}.%{upstreamversion} +%autosetup -p1 -n universal-%{name}-%{version} %build ./autogen.sh @@ -64,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Feb 01 2023 Than Ngo - 6.0.0-1 +- update to 6.0.0 + * Thu Jan 19 2023 Fedora Release Engineering - 5.9-10.20221120.0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/sources b/sources index 9d2ca69..ad80d57 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ctags-p5.9.20221120.0.tar.gz) = 48b0eb561b77435910c6f8b507602f27fa2838cfc71a257122ce337835484816990c22f304b292c542cf2449234ae4fcfa936d9368ccc52fc4162efc11e372a0 +SHA512 (universal-ctags-6.0.0.tar.gz) = c6f7eb24844778195f67a4bbeb54a61fde023a5eb0402b6986a74336fe134b7629ed3b643b4076285d660783db1a270c613244979c645ed1ae9ec40dbcb84ed8 From 4631b9e7cbe14e925a7c1c02b041f8b98582ecc7 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Tue, 14 Feb 2023 19:52:25 +0100 Subject: [PATCH 24/35] migrated to SPDX license --- ctags.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ctags.spec b/ctags.spec index b5ded93..61255b5 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,8 +1,8 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.0.0 -Release: 1%{?dist} -License: GPLv2+ +Release: 2%{?dist} +License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Tue Feb 14 2023 Than Ngo - 6.0.0-2 +- migrated to SPDX license + * Wed Feb 01 2023 Than Ngo - 6.0.0-1 - update to 6.0.0 From 7c13c18be60ddbf0baa6de79cbd9fabdd2df5f6a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 16:44:28 +0000 Subject: [PATCH 25/35] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 61255b5..49bb4db 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.0.0 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 6.0.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Tue Feb 14 2023 Than Ngo - 6.0.0-2 - migrated to SPDX license From aa976411f56bc3590de9b259d85024009d7b2408 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 16:29:13 +0000 Subject: [PATCH 26/35] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 49bb4db..69af1a7 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.0.0 -Release: 3%{?dist} +Release: 4%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Fri Jan 19 2024 Fedora Release Engineering - 6.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Wed Jul 19 2023 Fedora Release Engineering - 6.0.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 0963f5a674c2db32348b69a434b3a1df37e3993c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jan 2024 08:39:03 +0000 Subject: [PATCH 27/35] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 69af1a7..57f581d 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.0.0 -Release: 4%{?dist} +Release: 5%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Jan 24 2024 Fedora Release Engineering - 6.0.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Fedora Release Engineering - 6.0.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 0eb447611646148ff0a75d3693d8a5cbe30f2f0e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 20:20:08 +0000 Subject: [PATCH 28/35] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 57f581d..076a3d4 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.0.0 -Release: 5%{?dist} +Release: 6%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 6.0.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Wed Jan 24 2024 Fedora Release Engineering - 6.0.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 99d6be8751f9fb832de45fd466b439790f930887 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 22 Oct 2024 16:52:54 +0100 Subject: [PATCH 29/35] Rebuild for Jansson 2.14 (https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/3PYINSQGKQ4BB25NQUI2A2UCGGLAG5ND/) --- ctags.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 076a3d4..bb89e21 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.0.0 -Release: 6%{?dist} +Release: 7%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,10 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Tue Oct 22 2024 Richard W.M. Jones - 6.0.0-7 +- Rebuild for Jansson 2.14 + (https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/3PYINSQGKQ4BB25NQUI2A2UCGGLAG5ND/) + * Wed Jul 17 2024 Fedora Release Engineering - 6.0.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From d1aef79c9ccf7673cfaa91ed2a52c19606848688 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Wed, 23 Oct 2024 16:03:22 +0200 Subject: [PATCH 30/35] update to 6.1.0 --- .gitignore | 1 + ctags.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 55cafb3..f4ccaba 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20221016.0.tar.gz /ctags-p5.9.20221120.0.tar.gz /universal-ctags-6.0.0.tar.gz +/universal-ctags-6.1.0.tar.gz diff --git a/ctags.spec b/ctags.spec index bb89e21..15636c1 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags -Version: 6.0.0 -Release: 7%{?dist} +Version: 6.1.0 +Release: 1%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Oct 23 2024 Than Ngo - 6.1.0-1 +- update to 6.1.0 + * Tue Oct 22 2024 Richard W.M. Jones - 6.0.0-7 - Rebuild for Jansson 2.14 (https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/3PYINSQGKQ4BB25NQUI2A2UCGGLAG5ND/) diff --git a/sources b/sources index ad80d57..78e3a2a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (universal-ctags-6.0.0.tar.gz) = c6f7eb24844778195f67a4bbeb54a61fde023a5eb0402b6986a74336fe134b7629ed3b643b4076285d660783db1a270c613244979c645ed1ae9ec40dbcb84ed8 +SHA512 (universal-ctags-6.1.0.tar.gz) = 3e8b10bca1aef5d89e5fe7f1990d35766a33bb790e94f2015207589e4c9ad9bcc362ab5910e27a9f63cdbd6d9f291510fa73d1498331d5806dd93b7bba94d470 From e42346bc93430ad6d7b57203e4f7ab779611fc72 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 15:01:22 +0000 Subject: [PATCH 31/35] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 15636c1..4676a15 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.1.0 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 6.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Oct 23 2024 Than Ngo - 6.1.0-1 - update to 6.1.0 From fba572f6a566f90d001504a59bcd3a0df416dfb8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 18:54:44 +0000 Subject: [PATCH 32/35] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- ctags.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ctags.spec b/ctags.spec index 4676a15..61c8a33 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.1.0 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 6.1.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Thu Jan 16 2025 Fedora Release Engineering - 6.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From f2773f7bb036205442ac1d829c90a4388768c480 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Thu, 24 Jul 2025 17:17:22 +0200 Subject: [PATCH 33/35] - Fix rhbz#2382883 - convert STI tests to TMT - Fix test failure due to different outputs --- .fmf/version | 1 + ctags.spec | 6 +- tests/Sanity-test-for-ctags/ctags-kinds-list | 314 ++++++++++++++----- tests/Sanity-test-for-ctags/ctags-lang-list | 27 +- tests/Sanity-test-for-ctags/ctags-maps-list | 39 ++- tests/Sanity-test-for-ctags/main.fmf | 13 + tests/Sanity-test-for-ctags/runtest.sh | 3 +- tests/tests.yml | 12 - 8 files changed, 315 insertions(+), 100 deletions(-) create mode 100644 .fmf/version create mode 100644 tests/Sanity-test-for-ctags/main.fmf delete mode 100644 tests/tests.yml diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/ctags.spec b/ctags.spec index 61c8a33..e30d3f3 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags Version: 6.1.0 -Release: 3%{?dist} +Release: 4%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,10 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Thu Jul 24 2025 Than Ngo - 6.1.0-4 +- Fix rhbz#2382883 - convert STI tests to TMT +- Fix test failure due to different outputs + * Wed Jul 23 2025 Fedora Release Engineering - 6.1.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild diff --git a/tests/Sanity-test-for-ctags/ctags-kinds-list b/tests/Sanity-test-for-ctags/ctags-kinds-list index f65a590..c1b9b48 100644 --- a/tests/Sanity-test-for-ctags/ctags-kinds-list +++ b/tests/Sanity-test-for-ctags/ctags-kinds-list @@ -31,7 +31,6 @@ Ada i loop/declare identifiers a automatic variables [off] y loops and blocks with no identifier [off] - S (ctags internal use) Ant p projects t targets @@ -50,7 +49,7 @@ Asm l labels m macros t types (structs and records) - s sections + z parameters for a macro [off] Asp d constants c classes @@ -82,6 +81,7 @@ Automake D datum c conditions s subdirs + p placeholder for EXTRA_, noinst_, and _check_ prefixed primaries (internal use) [off] Awk f functions Basic @@ -91,11 +91,52 @@ Basic t types v variables g enumerations + n namespace +Bats + t test cases + S scripts BETA f fragment definitions p all patterns [off] s slots (fragment uses) v patterns (virtual or rebound) +BibLaTeX + A artworks + B audios + C bibnotes + D bookinbooks + E Booklets + G collections + H commentarys + I datasets + J images + K interferences + L jurisdictions + M legislations + N legals + O letters + P movies + Q musics + R mvbooks + S mvcollections + T mvproceedings + U mvreferences + V onlines + W patents + g performances + h periodicals + i references + j reports + k reviews + l sets + m software + n standards + o suppbooks + p suppcollections + q suppperiodicals + r thesis + s videos + t xdatas BibTeX a article b book @@ -136,7 +177,7 @@ C u union names v variable definitions x external and forward variable declarations [off] - z function parameters inside function definitions [off] + z function parameters inside function or prototype definitions [off] L goto labels [off] D parameters inside macro definitions [off] C++ @@ -153,7 +194,7 @@ C++ u union names v variable definitions x external and forward variable declarations [off] - z function parameters inside function definitions [off] + z function parameters inside function or prototype definitions [off] L goto labels [off] D parameters inside macro definitions [off] c classes @@ -228,7 +269,7 @@ CUDA u union names v variable definitions x external and forward variable declarations [off] - z function parameters inside function definitions [off] + z function parameters inside function or prototype definitions [off] L goto labels [off] D parameters inside macro definitions [off] D @@ -285,16 +326,8 @@ Elixir r records (defrecord...) t tests (test ...) y types (@type ...) -Elm - m Module - n Renamed Imported Module - p Port - t Type Definition - c Type Constructor - a Type Alias - f Functions EmacsLisp - u unknown type of definitions + Y unknown type of definitions f functions v variables c constants @@ -334,6 +367,10 @@ Flex C constants I imports x mxtags +Forth + w words + v variables + c constants Fortran b block data c common blocks @@ -354,6 +391,8 @@ Fortran t derived types and structures v program (global) and module variables S submodules +FrontMatter + t titles FunctionParameters m methods f functions @@ -364,6 +403,18 @@ Gdbinit D documents [off] t toplevel variables l local variables [off] +GDScript + c classes + m methods + v variables + C constants + g enumeration names + e enumerated values + z function parameters [off] + l local variables [off] + s signals +GemSpec + g gems Go p packages f functions @@ -375,10 +426,16 @@ Go m struct members M struct anonymous members n interface method specification - u unknown + Y unknown P name for specifying imported package a type aliases R receivers [off] +GPerf + k keywords + h hash function names + l lookup function names + c class names + s string pool names Haskell t types c type constructors @@ -394,6 +451,7 @@ Haxe HTML a named anchors c classes + t titles h H1 headings i H2 headings j H3 headings @@ -410,6 +468,8 @@ Inko a Attribute definition c Constant definition r Reopen class +IPythonCell + c cells ITcl c classes m methods @@ -438,6 +498,7 @@ JavaScript g generators G getters S setters + M fields JSON o objects a arrays @@ -453,20 +514,24 @@ Julia n Modules s Structures t Types - x name defined in other modules + Y name defined in other modules Kconfig c configs m menus M the main menu k kconfig file C choices + v macro variables LdScript S sections s symbols v versions i input sections +LEX + r named regular expression + c start or exclusive condition Lisp - u unknown type of definitions + Y unknown type of definitions f functions v variables m macros @@ -478,23 +543,27 @@ LiterateHaskell m modules Lua f functions + Y unknown language object [off] M4 d macros I macro files Man t titles s sections + S sub sections Make m macros t targets I makefiles Markdown - c chapsters + c chapters s sections - S subsections - t subsubsections - T level 4 subsections - u level 5 subsections + S level 2 sections + t level 3 sections + T level 4 sections + u level 5 sections + n footnotes + h hashtags MatLab f function v variable @@ -508,6 +577,14 @@ Meson t tests b benchmark targets r run targets + m modules +MesonOptions + s strings + b booleans + c combos + i integers + a arrays + f features Moose c classes m methods @@ -546,42 +623,6 @@ ObjectiveC e An enumeration M A preprocessor macro C categories -OldC++ [disabled] - c classes - d macro definitions - e enumerators (values inside an enumeration) - f function definitions - g enumeration names - h included header files - l local variables [off] - m class, struct, and union members - n namespaces - p function prototypes [off] - s structure names - t typedefs - u union names - v variable definitions - x external and forward variable declarations [off] - L goto label [off] - D cpp macro parameters [off] -OldC [disabled] - c classes - d macro definitions - e enumerators (values inside an enumeration) - f function definitions - g enumeration names - h included header files - l local variables [off] - m class, struct, and union members - n namespaces - p function prototypes [off] - s structure names - t typedefs - u union names - v variable definitions - x external and forward variable declarations [off] - L goto label [off] - D cpp macro parameters [off] OCaml c classes m Object's method @@ -593,6 +634,15 @@ OCaml C A constructor r A 'structure' field e An exception +Org + d definitions + p parts + c chapters + s sections + u subsections + b subsubsections + P paragraphs + G subparagraphs Passwd u user names Pascal @@ -606,6 +656,7 @@ Perl s subroutines d subroutine declarations [off] M modules [off] + h marker for here document [off] Perl6 c classes g grammars @@ -627,6 +678,10 @@ PHP t traits v variables a aliases +PkgConfig + N display names + p packages + v variabels Pod c chapters s sections @@ -635,6 +690,9 @@ Pod PowerShell f functions v variables + c classes + i filter + g enum names Protobuf p packages m messages @@ -652,6 +710,9 @@ PuppetManifest n nodes r resources v variables + p parameters + V virtual resources + t type aliases Python c classes f functions @@ -659,7 +720,7 @@ Python v variables I name referring a module defined in other file i modules - x name referring a class/variable/function/module defined in other module + Y name referring a class/variable/function/module defined in other module z function parameters [off] l local variables [off] PythonLoggingConfig @@ -672,6 +733,10 @@ QtMoc s slots S signals p properties +Quarto + l chunk labels +RMarkdown + l chunk labels R f functions l libraries @@ -683,6 +748,24 @@ R L lists explicitly created with `list()' d data frame explicitly created with `data.frame()' n names attribtes in vectors, lists, or dataframes +Rake + t tasks + n namespaces + f file tasks + d directory tasks + m multi tasks + x tasks defined with special constructor +Raku + c classes + g grammars + m methods + o modules + p packages + r roles + u rules + b submethods + s subroutines + t tokens R6Class c classes m methods @@ -691,12 +774,15 @@ R6Class RSpec d describes c contexts + i things described with "it" REXX s subroutines Robot t testcases k keywords v variables +RpmMacros + m macros RpmSpec t tags m macros @@ -704,6 +790,8 @@ RpmSpec g global macros p patch files ReStructuredText + H titles + h sub titles c chapters s sections S subsections @@ -733,6 +821,7 @@ Rust m A struct field e An enum variant P A method + C A constant S4Class c classes r representations @@ -766,29 +855,32 @@ SML t type definitions v value bindings SQL - c cursors - d prototypes [off] - f functions + C PLSQL_CCFLAGS + D domains E record fields - l local variables [off] L block label P packages + R services + S schemas + T triggers + U publications + V views + b database + c cursors + d prototypes [off] + e events + f functions + i indexes + l local variables [off] + n synonyms p procedures r records [off] s subtypes t tables - T triggers v variables - i indexes - e events - U publications - R services - D domains - V views - n synonyms x MobiLink Table Scripts y MobiLink Conn Scripts - z MobiLink Properties + z MobiLink Properties SystemdUnit u units SystemTap @@ -803,6 +895,14 @@ Tcl TclOO c classes m methods +Terraform + r resources + d data + v variables + p providers + m modules + o output +TerraformVariables Tex p parts c chapters @@ -815,6 +915,9 @@ Tex i external input files B bibliography items C command created with \newcommand + o math operator created with \DeclareMathOperator + e environment created with \newenvironment + t theorem created with \newtheorem N counter created with \newcounter TeXBeamer f frametitles @@ -852,6 +955,22 @@ TypeScript C constants G generators a aliases +V + f functions + p modules + v variables + c constants + R receivers in functions + l labels + s structs + m struct/interface members + n interface methods + e enumerators (values inside an enumeration) + g enumeration names + a type aliases + i interfaces + u union names + Y unknown (imported) variables, types and functions Vera c classes d macro definitions @@ -871,7 +990,8 @@ Vera h included header files D cpp macro parameters [off] Verilog - c constants (define, parameter, specparam) + c constants (parameter, specparam) + d text macros e events f functions m modules @@ -882,7 +1002,8 @@ Verilog b blocks (begin, fork) i instances of module SystemVerilog - c constants (define, parameter, specparam, enum values) + c constants (parameter, specparam, enum values) + d text macros e events f functions m modules @@ -948,6 +1069,7 @@ WindRes v versions a accelerators YACC + t tokens l labels YumRepo r repository id @@ -961,6 +1083,11 @@ Zephir t traits v variables a aliases +Zsh + a aliases + f functions + s script files + h label for here document DBusIntrospect a arguments i interfaces @@ -984,6 +1111,8 @@ RelaxNG n named patterns SVG d ids in defs tags +XRC + o objects XML i id attributes n namespace prefixes @@ -992,12 +1121,24 @@ XSLT s stylesheets p parameters m matched template - n matched template + n named template v variables Yaml a anchors AnsiblePlaybook p plays +I18nRubyGem + k translation keys at the leafs + m the middle component of keys [off] + l the root element representing a locale [off] +OpenAPI + d schemas + p paths + R responses + P parameters + t titles + s servers (or hosts in swagger) + T tags Varlink i interfaces m methods @@ -1018,3 +1159,26 @@ Kotlin T typealiases C constants v variables +Thrift + s structs + x exceptions + u unions + n namespaces + e enumerators (values inside an enumeration) + g enumeration names + m members + C constants + t typedefs + v services + f functions + z parameters [off] + Z parameters in throws list [off] + T thrift files +Elm + m modules + n modules renamed + t types + c constructors + a aliases + p ports + f functions diff --git a/tests/Sanity-test-for-ctags/ctags-lang-list b/tests/Sanity-test-for-ctags/ctags-lang-list index cd8a1ee..804037b 100644 --- a/tests/Sanity-test-for-ctags/ctags-lang-list +++ b/tests/Sanity-test-for-ctags/ctags-lang-list @@ -11,7 +11,9 @@ AutoIt Automake Awk Basic +Bats BETA +BibLaTeX BibTeX C C# @@ -38,17 +40,24 @@ EmacsLisp Erlang Falcon Flex +Forth Fortran +FrontMatter FunctionParameters Fypp Gdbinit +GDScript +GemSpec Glade Go +GPerf Haskell Haxe HTML +I18nRubyGem Iniconf Inko +IPythonCell ITcl Java JavaProperties @@ -58,6 +67,7 @@ Julia Kconfig Kotlin LdScript +LEX Lisp LiterateHaskell Lua @@ -68,18 +78,20 @@ Markdown MatLab Maven2 Meson +MesonOptions Moose Myrddin NSIS ObjectiveC OCaml -OldC [disabled] -OldC++ [disabled] +OpenAPI +Org Pascal Passwd Perl Perl6 PHP +PkgConfig PlistXML Pod PowerShell @@ -89,12 +101,17 @@ Python PythonLoggingConfig QemuHX QtMoc +Quarto R R6Class +Rake +Raku RelaxNG ReStructuredText REXX +RMarkdown Robot +RpmMacros RpmSpec RSpec Ruby @@ -112,12 +129,16 @@ SystemTap SystemVerilog Tcl TclOO +Terraform +TerraformVariables Tex TeXBeamer +Thrift TTCN Txt2tags TypeScript Unknown [disabled] +V Varlink Vera Verilog @@ -125,8 +146,10 @@ VHDL Vim WindRes XML +XRC XSLT YACC Yaml YumRepo Zephir +Zsh diff --git a/tests/Sanity-test-for-ctags/ctags-maps-list b/tests/Sanity-test-for-ctags/ctags-maps-list index 676218a..6d9096b 100644 --- a/tests/Sanity-test-for-ctags/ctags-maps-list +++ b/tests/Sanity-test-for-ctags/ctags-maps-list @@ -8,10 +8,12 @@ Asm *.A51 *.29[kK] *.[68][68][kKsSxX] *.[xX][68][68] *.asm *.ASM *.s *.S Asp *.asp *.asa Autoconf configure.in *.ac AutoIt *.au3 *.AU3 *.aU3 *.Au3 -Automake Makefile.am *.am +Automake Makefile.am GNUmakefile.am *.am Awk *.awk *.gawk *.mawk -Basic *.bas *.bi *.bb *.pb +Basic *.bas *.bi *.bm *.bb *.pb +Bats *.bats BETA *.bet +BibLaTeX BibTeX *.bib Clojure *.clj *.cljs *.cljc CMake CMakeLists.txt *.cmake @@ -32,21 +34,26 @@ DTS *.dts *.dtsi DosBatch *.bat *.cmd Eiffel *.e Elixir *.ex *.exs -Elm *.elm EmacsLisp *.el Erlang *.erl *.ERL *.hrl *.HRL Falcon *.fal *.ftd Flex *.as *.mxml +Forth *.fth *.forth *.fs *.4th *.f Fortran *.f *.for *.ftn *.f77 *.f90 *.f95 *.f03 *.f08 *.f15 *.F *.FOR *.FTN *.F77 *.F90 *.F95 *.F03 *.F08 *.F15 +FrontMatter FunctionParameters Fypp *.fy Gdbinit .gdbinit *.gdb +GDScript *.gd +GemSpec *.gemspec Go *.go +GPerf *.perf *.gperf Haskell *.hs Haxe *.hx HTML *.htm *.html Iniconf *.ini *.conf Inko *.inko +IPythonCell ITcl *.itcl Java *.java JavaProperties *.properties @@ -55,6 +62,7 @@ JSON *.json Julia *.jl Kconfig Kconfig* LdScript *.lds.S ld.script *.lds *.scr *.ld *.ldi +LEX *.lex *.l Lisp *.cl *.clisp *.l *.lisp *.lsp LiterateHaskell *.lhs Lua *.lua @@ -64,18 +72,19 @@ Make [Mm]akefile GNUmakefile *.mak *.mk Markdown *.md *.markdown MatLab *.m Meson meson.build +MesonOptions meson_options.txt Moose Myrddin *.myr NSIS *.nsi *.nsh ObjectiveC *.mm *.m *.h -OldC++ *.c++ *.cc *.cp *.cpp *.cxx *.h *.h++ *.hh *.hp *.hpp *.hxx *.inl *.C *.H -OldC *.c OCaml *.ml *.mli *.aug +Org *.org Passwd passwd Pascal *.p *.pas Perl *.pl *.pm *.ph *.plx *.perl -Perl6 *.p6 *.pm6 *.pm *.pl6 +Perl6 *.p6 *.pm6 *.pm *.pl6 *.t6 PHP *.php *.php3 *.php4 *.php5 *.php7 *.phtml +PkgConfig *.pc Pod *.pod PowerShell *.ps1 *.psm1 Protobuf *.proto @@ -84,11 +93,16 @@ Python *.py *.pyx *.pxd *.pxi *.scons *.wsgi PythonLoggingConfig QemuHX *.hx QtMoc +Quarto *.qmd +RMarkdown *.rmd R *.r *.R *.s *.q +Rake Rakefile *.rake +Raku *.raku *.rakumod *.rakutest *.rakudoc R6Class RSpec REXX *.cmd *.rexx *.rx Robot *.robot +RpmMacros RpmSpec *.spec ReStructuredText *.rest *.reST *.rst Ruby *.rb *.ruby @@ -96,7 +110,7 @@ Rust *.rs S4Class Scheme *.SCM *.SM *.sch *.scheme *.scm *.sm *.rkt SCSS *.scss -Sh *.sh *.SH *.bsh *.bash *.ksh *.zsh *.ash +Sh *.sh *.SH *.bsh *.bash *.ksh *.ash SLang *.sl SML *.sml *.sig SQL *.sql @@ -104,11 +118,14 @@ SystemdUnit *.service *.socket *.device *.mount *.automount *.swap *.target *.pa SystemTap *.stp *.stpm Tcl *.tcl *.tk *.wish *.exp TclOO +Terraform *.tf +TerraformVariables *.tfvars Tex *.tex TeXBeamer TTCN *.ttcn *.ttcn3 Txt2tags *.t2t *.t2t TypeScript *.ts +V *.v Vera *.vr *.vri *.vrh Verilog *.v SystemVerilog *.sv *.svh *.svi @@ -118,15 +135,21 @@ WindRes *.rc YACC *.y YumRepo *.repo Zephir *.zep +Zsh *.zsh DBusIntrospect *.xml Glade *.glade Maven2 pom.xml *.pom *.xml PlistXML *.plist RelaxNG *.rng SVG *.svg +XRC *.xrc XML *.xml XSLT *.xsl *.xslt -Yaml *.yml +Yaml *.yml *.yaml AnsiblePlaybook +I18nRubyGem +OpenAPI openapi.yaml Varlink *.varlink Kotlin *.kt *.kts +Thrift *.thrift +Elm *.elm diff --git a/tests/Sanity-test-for-ctags/main.fmf b/tests/Sanity-test-for-ctags/main.fmf new file mode 100644 index 0000000..a15acec --- /dev/null +++ b/tests/Sanity-test-for-ctags/main.fmf @@ -0,0 +1,13 @@ +summary: Run tests in all contexts +description: '' +contact: Than Ngo +component: + - ctags +test: ./runtest.sh +framework: beakerlib +recommend: + - ctags + - man-db +duration: 5m +extra-summary: /CoreOS/ctags/Sanity-test-for-ctags +extra-task: /CoreOS/ctags/Sanity-test-for-ctags diff --git a/tests/Sanity-test-for-ctags/runtest.sh b/tests/Sanity-test-for-ctags/runtest.sh index d952395..52c366e 100755 --- a/tests/Sanity-test-for-ctags/runtest.sh +++ b/tests/Sanity-test-for-ctags/runtest.sh @@ -1,4 +1,4 @@ -#! /bin/sh +#! /bin/bash # ctags basics PACKAGES="ctags" @@ -6,7 +6,6 @@ PACKAGES="ctags" # source the test script helpers # requires beakerlib package -. /usr/bin/rhts-environment.sh || exit 1 . /usr/share/beakerlib/beakerlib.sh || exit 1 rlJournalStart diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100644 index 6ec7675..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,12 +0,0 @@ ---- -# Run tests in all contexts -- hosts: localhost - tags: - - classic - roles: - - role: standard-test-beakerlib - tests: - - Sanity-test-for-ctags - required_packages: - - ctags - - man-db From 562fac057d07b1969d6d2de206a4d47b81d384c2 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Wed, 24 Sep 2025 16:18:41 +0200 Subject: [PATCH 34/35] Fix rhbz#2397816 - Update to 6.2.0 --- .gitignore | 1 + ctags.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index f4ccaba..549473e 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ ctags-5.8.tar.gz /ctags-p5.9.20221120.0.tar.gz /universal-ctags-6.0.0.tar.gz /universal-ctags-6.1.0.tar.gz +/universal-ctags-6.2.0.tar.gz diff --git a/ctags.spec b/ctags.spec index e30d3f3..96ed87a 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,7 +1,7 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags -Version: 6.1.0 -Release: 4%{?dist} +Version: 6.2.0 +Release: 1%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ Source0: https://github.com/universal-ctags/ctags/releases/download/v%{version}/universal-%{name}-%{version}.tar.gz @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Sep 24 2025 Than Ngo - 6.2.0-1 +- Fix rhbz#2397816 - Update to 6.2.0 + * Thu Jul 24 2025 Than Ngo - 6.1.0-4 - Fix rhbz#2382883 - convert STI tests to TMT - Fix test failure due to different outputs diff --git a/sources b/sources index 78e3a2a..1c44873 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (universal-ctags-6.1.0.tar.gz) = 3e8b10bca1aef5d89e5fe7f1990d35766a33bb790e94f2015207589e4c9ad9bcc362ab5910e27a9f63cdbd6d9f291510fa73d1498331d5806dd93b7bba94d470 +SHA512 (universal-ctags-6.2.0.tar.gz) = a27c3d9b8b3edf9aaf16e5525a61998b2afb0d4905200f1fda421bf7844aba9604ecdfa1bd329d39b729c42d70a78413cec955fc38b112d3d47bd3f3c96aa559 From 6add7bebbf5e30e3703d0701f8230cc203fa37b0 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Wed, 12 Nov 2025 18:48:16 +0100 Subject: [PATCH 35/35] Update to 6.2.1 --- .gitignore | 1 + ctags.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 549473e..ab96034 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ ctags-5.8.tar.gz /universal-ctags-6.0.0.tar.gz /universal-ctags-6.1.0.tar.gz /universal-ctags-6.2.0.tar.gz +/universal-ctags-6.2.1.tar.gz diff --git a/ctags.spec b/ctags.spec index 96ed87a..f4e4435 100644 --- a/ctags.spec +++ b/ctags.spec @@ -1,6 +1,6 @@ Summary: A C programming language indexing and/or cross-reference tool Name: ctags -Version: 6.2.0 +Version: 6.2.1 Release: 1%{?dist} License: GPL-2.0-or-later URL: https://ctags.io/ @@ -62,6 +62,9 @@ Install ctags if you are going to use your system for C programming. %{_mandir}/man7/* %changelog +* Wed Nov 12 2025 Than Ngo - 6.2.1-1 +- Update to 6.2.1 + * Wed Sep 24 2025 Than Ngo - 6.2.0-1 - Fix rhbz#2397816 - Update to 6.2.0 diff --git a/sources b/sources index 1c44873..da0080f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (universal-ctags-6.2.0.tar.gz) = a27c3d9b8b3edf9aaf16e5525a61998b2afb0d4905200f1fda421bf7844aba9604ecdfa1bd329d39b729c42d70a78413cec955fc38b112d3d47bd3f3c96aa559 +SHA512 (universal-ctags-6.2.1.tar.gz) = 70e1767a72ba804cf4bc5e5c2dfe13498694c67865d5c8ca412d14b7f7f4c01410c94f7d57daad62ce5885166c4e05128d1beb8184f39a11596045a3f4131007