Summary: Exuberant ctags -- C cross-reference tool
-Summary(de): Exuberant ctags - C-Cross-Reference-Tool
-Summary(es): Ctags ¡exuberantes! Herramienta de referencia cruzada para C
-Summary(fr): ctags exubérant
-Summary(ko): ¿©·¯ ¾ð¾î·Î µÈ ¼Ò½º Äڵ忡 »öÀÎÀ» ¸¸µé¾îÁÖ´Â µµ±¸
-Summary(pl): ctags - generator list odwo³añ
-Summary(pt_BR): Ctags exuberantes! Ferramenta de referência cruzada para C
-Summary(ru): õÔÉÌÉÔÁ ÄÌÑ ÉÎÄÅËÓÁÃÉÉ É ÐÏÓÔÒÏÅÎÉÑ ÓÓÙÌÏË ÄÌÑ ÑÚÙËÁ C
-Summary(tr): C dili için çapraz-baþvuru (cross-reference) aracý
-Summary(uk): õÔÉ̦ÔÁ ÄÌÑ ¦ÎÄÅËÓÁæ§ ÔÁ ÐÏÂÕÄÏ×É ÐÏÓÉÌÁÎØ ÄÌÑ ÍÏ×É C
+Summary(de.UTF-8): Exuberant ctags - C-Cross-Reference-Tool
+Summary(es.UTF-8): ctags - generador de listas de referencia
+Summary(fr.UTF-8): ctags exubérant
+Summary(ko.UTF-8): 여러 언어로 된 소스 코드에 색인을 만들어주는 도구
+Summary(pl.UTF-8): ctags - generator list odwołań
+Summary(pt_BR.UTF-8): Ctags exuberantes! Ferramenta de referência cruzada para C
+Summary(ru.UTF-8): Утилита для индексации и построения ссылок для языка C
+Summary(tr.UTF-8): C dili için çapraz-başvuru (cross-reference) aracı
+Summary(uk.UTF-8): Утиліта для індексації та побудови посилань для мови C
Name: ctags
-Version: 5.5.2
-Release: 1
-License: GPL
+Version: 5.8
+Release: 6
+License: GPL v2+
Group: Development/Tools
-Source0: http://dl.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
-# Source0-md5: 32957044168e0722831b9557687c06e7
+Source0: http://downloads.sourceforge.net/ctags/%{name}-%{version}.tar.gz
+# Source0-md5: c00f82ecdcc357434731913e5b48630d
+Source1: branch.sh
+Patch0: branch.diff
+# Patch0-md5: 6a14a7eb89b1ef01f6849c9ad1fc169b
+Patch1: %{name}-5.7-segment-fault.patch
+Patch2: %{name}-5.8-css.patch
+Patch3: %{name}-5.8-cssparse.patch
+Patch4: attr.patch
URL: http://ctags.sourceforge.net/
-BuildRequires: autoconf
+BuildRequires: autoconf >= 1.12
+BuildRequires: automake
+BuildRequires: rpmbuild(macros) >= 1.402
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
supports output of emacs style TAGS files and can be used to print out
a list of selected objects found in source files.
-%description -l de
-#if-Präprozessor-Bedingungen enthält, dank eines konditionalen
-Ein verbessertes ctags, das tags für alle möglichen tag-Typen
-generiert: Makrodefinitionen, aufgezählte Werte (Werte in enum{...}),
-Funktions- und Methodendefinitionen, enum/struct/union-tags, externe
+%description -l de.UTF-8
+'#if'-Präprozessor-Bedingungen enthält, dank eines konditionalen Ein
+verbessertes ctags, das tags für alle möglichen tag-Typen generiert:
+Makrodefinitionen, aufgezählte Werte (Werte in enum{...}), Funktions-
+und Methodendefinitionen, enum/struct/union-tags, externe
Funktionsprototypen (wahlweise), typedefs und variable Deklarationen.
-Es läßt sich weit weniger gut durch Code täuschen, der
+Es läßt sich weit weniger gut durch Code täuschen, der
Pfadauswahlalgorithmus, der komplizierte Entscheidungen trifft, und
eines Ausweiche-Algorithmus, der ins Spiel kommt, wenn der erste dem
Problem nicht gewachsen ist. Kann auch benutzt werden, um eine Liste
-ausgewählter Objekte, die in Quelldateien gefunden wurden,
+ausgewählter Objekte, die in Quelldateien gefunden wurden,
auszudrucken.
-%description -l es
+%description -l es.UTF-8
Un ctags mejor que crea tags para todos los tipos posibles de tag:
-definiciones de macro, valores enumerados, definiciones de función y
-método, tags enum/struct/union, prototipos de función externa
-(opcional), typedefs y declaraciones variables. Es más difícil de ser
-engañado en códigos que contenga la directiva condicional #if para el
+definiciones de macro, valores enumerados, definiciones de función y
+método, tags enum/struct/union, prototipos de función externa
+(opcional), typedefs y declaraciones variables. Es más difícil de ser
+engañado en códigos que contenga la directiva condicional #if para el
preprocesador, pues utiliza un algoritmo condicional de camino para
solucionar decisiones complicadas, y un algoritmo de rescate cuando
-este falla. También puede ser usado para enseñar una lista de objetos
-seleccionados que esté en los archivos fuente.
+este falla. También puede ser usado para enseñar una lista de objetos
+seleccionados que esté en los archivos fuente.
-%description -l fr
-un ctags amélioré générant des tags pour tous les types de tags
-possibles : définitions de macros, valeurs énumérées (valeurs dans
-enum{...}), définitions de fonctions et de méthodes, enum/struct/union
+%description -l fr.UTF-8
+un ctags amélioré générant des tags pour tous les types de tags
+possibles : définitions de macros, valeurs énumérées (valeurs dans
+enum{...}), définitions de fonctions et de méthodes, enum/struct/union
tags, prototypes de fonctions externes (optionnel), typedefs, et
-déclarations de variables. Peut aussi être utilisé pour afficher une
-liste des objets choisis trouvés dans les fichiers source.
+déclarations de variables. Peut aussi être utilisé pour afficher une
+liste des objets choisis trouvés dans les fichiers source.
-%description -l pl
-Generator tabeli odwo³añ dla: makr, zmiennych, funkcji i procedur,
-definicji typów, metod (C++) itp. U¿ywany do generacji listy
-wyspecyfikowanych obiektów znalezionych w plikach ¼ród³owych. Tablica
-owych odwo³añ mo¿e byæ wykorzystywana przez wiekszosæ standardowych
-edytorów tekstu (vim, joe, emacs), do przemieszczania siê w ¼ród³ach
-miêdzy deklaracj± i u¿yciem danego symbolu.
+%description -l pl.UTF-8
+Generator tabeli odwołań dla: makr, zmiennych, funkcji i procedur,
+definicji typów, metod (C++) itp. Używany do generacji listy
+wyspecyfikowanych obiektów znalezionych w plikach źródłowych. Tablica
+owych odwołań może być wykorzystywana przez większość standardowych
+edytorów tekstu (vim, joe, emacs), do przemieszczania się w źródłach
+między deklaracją i użyciem danego symbolu.
-%description -l pt_BR
-Um ctags melhor que gera tags para todos os tipos possíveis de tag:
-definições de macro, valores enumerados, definições de função e
-método, tags enum/struct/union, protótipos de função externa
-(opcional), typedefs e declarações variáveis. É mais difícil de ser
-enganado em códigos que contenha a diretiva condicional #if para o
-pré-processador, pois utiliza um algoritmo condicional de caminho para
-resolver decisões complicadas, e um algoritmo de resgate quando este
-falha. Também pode ser usado para mostrar uma lista de objetos
+%description -l pt_BR.UTF-8
+Um ctags melhor que gera tags para todos os tipos possíveis de tag:
+definições de macro, valores enumerados, definições de função e
+método, tags enum/struct/union, protótipos de função externa
+(opcional), typedefs e declarações variáveis. É mais difícil de ser
+enganado em códigos que contenha a diretiva condicional #if para o
+pré-processador, pois utiliza um algoritmo condicional de caminho para
+resolver decisões complicadas, e um algoritmo de resgate quando este
+falha. Também pode ser usado para mostrar uma lista de objetos
selecionados que estejam nos arquivos fonte.
-%description -l ru
-Ctags ÇÅÎÅÒÉÒÕÅÔ ÉÎÄÅËÓÎÙÊ (ÉÌÉ ÔÜÇ-) ÆÁÊÌ ÏÂßÅËÔÏ× ÑÚÙËÁ C, ËÏÔÏÒÙÅ
-ÎÁÈÏÄÑÔÓÑ × ÆÁÊÌÁÈ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× É ÈÅÄÅÒÁÈ ÎÁ ÑÚÙËÅ C. ôÁËÏÊ ÉÎÄÅËÓ
-ÏÂÌÅÇÞÁÅÔ ÔÅËÓÔÏ×ÙÍ ÒÅÄÁËÔÏÒÁÍ É ÄÒÕÇÉÍ ÕÔÉÌÉÔÁÍ ÐÏÉÓË ÉÎÄÅËÓÉÒÏ×ÁÎÎÙÈ
-ÏÂßÅËÔÏ×. Ctags ÔÁËÖÅ ÍÏÖÅÔ ÇÅÎÅÒÉÒÏ×ÁÔØ ÆÁÊÌ ÐÅÒÅËÒÅÓÔÎÙÈ ÓÓÙÌÏË,
-ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÉÎÆÏÒÍÁÃÉÀ Ï ÒÁÚÌÉÞÎÙÈ ÏÂßÅËÔÁÈ, ÓÏÄÅÒÖÁÝÉÈÓÑ ×
-ÎÁÂÏÒÅ ÆÁÊÌÏ× ÎÁ ÑÚÙËÅ C × ÐÒÉÇÏÄÎÏÊ ÄÌÑ ÞÔÅÎÉÑ ÆÏÒÍÅ. Exuberant Ctags
-ÐÒÅÄÓÔÁ×ÌÑÅÔ ÓÏÂÏÊ ÕÓÏ×ÅÒÛÅÎÓÔ×Ï×ÁÎÉÅ ÓÔÁÎÄÁÒÔÎÏÇÏ ctags, Ô.Ë. ÏÎ
-ÓÐÏÓÏÂÅÎ ÎÁÈÏÄÉÔØ ×ÓÅ ÔÉÐÙ ÔÜÇÏ× ÑÚÙËÁ C, ×ËÌÀÞÁÑ ÍÁËÒÏÏÐÒÅÄÅÌÅÎÉÑ,
-ÐÅÒÅÞÉÓÌÑÅÍÙÅ ÚÎÁÞÅÎÉÑ (ÚÎÁÞÅÎÉÑ ×ÎÕÔÒÉ enum{...}), ÏÐÒÅÄÅÌÅÎÉÑ
-ÆÕÎËÃÉÊ É ÍÅÔÏÄÏ×, ÔÜÇÉ enum/struct/union, ÐÒÏÔÏÔÉÐÙ ×ÎÅÛÎÉÈ ÆÕÎËÃÉÊ,
-ÉÍÅÎÁ typedef É ÄÅËÌÁÒÁÃÉÉ ÐÅÒÅÍÅÎÎÙÈ. Exuberant Ctags ÚÎÁÞÉÔÅÌØÎÏ
-ÔÒÕÄÎÅÅ ÏÂÍÁÎÕÔØ ËÏÄÏÍ, ÓÏÄÅÒÖÁÝÉÍ ÕÓÌÏ×ÎÙÅ ËÏÎÓÔÒÕËÃÉÉ ÐÒÅÐÒÏÃÅÓÓÏÒÁ
-#if, ÞÅÍ ÏÒÉÇÉÎÁÌØÎÙÊ ctags. Exuberant Ctags ÐÏÄÄÅÒÖÉ×ÁÅÔ ×Ù×ÏÄ ÆÁÊÌÁ
-TAGS × ÓÔÉÌÅ Emacs É ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎ ÄÌÑ ×Ù×ÏÄÁ ÓÐÉÓËÁ
-×ÙÂÒÁÎÎÙÈ ÏÂßÅËÔÏ×, ÎÁÊÄÅÎÎÙÈ × ÉÓÈÏÄÎÙÈ ÆÁÊÌÁÈ.
+%description -l ru.UTF-8
+Ctags генерирует индексный (или тэг-) файл объектов языка C, которые
+находятся в файлах исходных текстов и хедерах на языке C. Такой индекс
+облегчает текстовым редакторам и другим утилитам поиск индексированных
+объектов. Ctags также может генерировать файл перекрестных ссылок,
+который содержит информацию о различных объектах, содержащихся в
+наборе файлов на языке C в пригодной для чтения форме. Exuberant Ctags
+пÑ\80едÑ\81Ñ\82авлÑ\8fеÑ\82 Ñ\81обой Ñ\83Ñ\81овеÑ\80Ñ\88енÑ\81Ñ\82вование Ñ\81Ñ\82андаÑ\80Ñ\82ного ctags, Ñ\82.к. он
+способен находить все типы тэгов языка C, включая макроопределения,
+пеÑ\80еÑ\87иÑ\81лÑ\8fемÑ\8bе знаÑ\87ениÑ\8f (знаÑ\87ениÑ\8f внÑ\83Ñ\82Ñ\80и enum{...}), опÑ\80еделениÑ\8f
+функций и методов, тэги enum/struct/union, прототипы внешних функций,
+имена typedef и декларации переменных. Exuberant Ctags значительно
+труднее обмануть кодом, содержащим условные конструкции препроцессора
+'#if', чем оригинальный ctags. Exuberant Ctags поддерживает вывод
+файла TAGS в стиле Emacs и может быть использован для вывода списка
+выбранных объектов, найденных в исходных файлах.
-%description -l tr
-Olabilecek her türlü etiket çeþitleri - makro tanýmlamalarý, sayýlý
-(enumerated) deðerler, fonksiyon ve yöntem (method) tanýmlamalarý, tip
-ve deðiþken tanýmlarý - için etiketler üretir. Kaynak kodlarýnda
-bulunan, seçilmiþ nesnelerin listesinin çýktýsýný yazýcýdan almak için
-de kullanýlabilir.
+%description -l tr.UTF-8
+Olabilecek her türlü etiket çeşitleri - makro tanımlamaları, sayılı
+(enumerated) değerler, fonksiyon ve yöntem (method) tanımlamaları, tip
+ve değişken tanımları - için etiketler üretir. Kaynak kodlarında
+bulunan, seçilmiş nesnelerin listesinin çıktısını yazıcıdan almak için
+de kullanılabilir.
-%description -l uk
-Ctags ÇÅÎÅÒÕ¤ ¦ÎÄÅËÓÎÉÊ (ÁÂÏ ÔÅÇ-) ÆÁÊÌ ÏÂ'¤ËÔ¦× ÍÏ×É C, Ñ˦
-ÚÎÁÈÏÄÑÔØÓÑ Õ ÆÁÊÌÁÈ ×ÉȦÄÎÉÈ ÔÅËÓÔ¦× ÔÁ ÈÅÄÅÒÁÈ ÎÁ ÍÏצ C. ôÁËÉÊ
-¦ÎÄÅËÓ ÐÏÌÅÇÛÕ¤ ÔÅËÓÔÏ×ÉÍ ÒÅÄÁËÔÏÒÁÍ ÔÁ ¦ÎÛÉÍ ÕÔÉ̦ÔÁÍ ÐÏÛÕË
-¦ÎÄÅËÓÏ×ÁÎÉÈ ÏÂ'¤ËÔ¦×. Ctags ÔÁËÏÖ ÍÏÖÅ ÇÅÎÅÒÕ×ÁÔÉ ÆÁÊÌ ÐÅÒÅÈÒÅÓÎÉÈ
-ÐÏÓÉÌÁÎØ, ÑËÉÊ Í¦ÓÔÉÔØ ¦ÎÆÏÒÍÁæÀ ÐÒÏ Ò¦ÚΦ ÏÂ'¤ËÔÉ, Ñ˦ ͦÓÔÑÔØÓÑ Õ
-ÎÁÂÏÒ¦ ÆÁÊÌ¦× ÎÁ ÍÏצ C Õ ÐÒÉÄÁÔÎ¦Ê ÄÌÑ ÞÉÔÁÎÎÑ ÆÏÒͦ. Exuberant Ctags
-Ñ×ÌѤ ÓÏÂÏÀ ×ÄÏÓËÏÎÁÌÅÎÎÑ ÓÔÁÎÄÁÒÔÎÏÇÏ ctags, ÔÁË ÑË ×¦Î Õ ÓÔÁΦ
-ÚÎÁÈÏÄÉÔÉ ×Ó¦ ÔÉÐÉ ÔÅÇ¦× ÍÏ×É C, ×ËÌÀÞÁÀÞÉ ÍÁËÒÏ×ÉÚÎÁÞÅÎÎÑ, ÚÎÁÞÅÎÎÑ
-×ÓÅÒÅÄÉΦ enum{...}, ×ÉÚÎÁÞÅÎÎÑ ÆÕÎËÃ¦Ê ÔÁ ÍÅÔÏĦ×, ÔÅÇÉ
-enum/struct/union, ÐÒÏÔÏÔÉÐÉ ÚÏ×ΦÛÎ¦È ÆÕÎËæÊ, ¦ÍÅÎÁ typedef ÔÁ
-ÄÅËÌÁÒÁæ§ ÚͦÎÎÉÈ. Exuberant Ctags ÚÎÁÞÎÏ ÔÑÖÞÅ ÏÂÍÁÎÕÔÉ ËÏÄÏÍ, ÝÏ
-ͦÓÔÉÔØ ÕÍÏ×Φ ËÏÎÓÔÒÕËæÀ ÐÒÅÐÒÏÃÅÓÏÒÁ #if, Î¦Ö ÏÒÉǦÎÁÌØÎÉÊ ctags.
-Exuberant Ctags ЦÄÔÒÉÍÕ¤ ×É×¦Ä ÆÁÊÌÕ TAGS Õ ÓÔÉ̦ Emacs ¦ ÍÏÖÅ ÂÕÔÉ
-×ÉËÏÒÉÓÔÁÎÉÊ ÄÌÑ ×É×ÏÄÕ ÓÐÉÓËÕ ×ÉÂÒÁÎÉÈ ÏÂ'¤ËÔ¦×, Ñ˦ ÚÎÁÈÏÄÑÔØÓÑ Õ
-×ÉȦÄÎÉÈ ÆÁÊÌÁÈ.
+%description -l uk.UTF-8
+Ctags генерує індексний (або тег-) файл об'єктів мови C, які
+знаходяться у файлах вихідних текстів та хедерах на мові C. Такий
+індекс полегшує текстовим редакторам та іншим утилітам пошук
+індексованих об'єктів. Ctags також може генерувати файл перехресних
+поÑ\81иланÑ\8c, Ñ\8fкий мÑ\96Ñ\81Ñ\82иÑ\82Ñ\8c Ñ\96нÑ\84оÑ\80маÑ\86Ñ\96Ñ\8e пÑ\80о Ñ\80Ñ\96знÑ\96 об'Ñ\94кÑ\82и, Ñ\8fкÑ\96 мÑ\96Ñ\81Ñ\82Ñ\8fÑ\82Ñ\8cÑ\81Ñ\8f Ñ\83
+наборі файлів на мові C у придатній для читання формі. Exuberant Ctags
+Ñ\8fвлÑ\8fÑ\94 Ñ\81обоÑ\8e вдоÑ\81коналеннÑ\8f Ñ\81Ñ\82андаÑ\80Ñ\82ного ctags, Ñ\82ак Ñ\8fк вÑ\96н Ñ\83 Ñ\81Ñ\82анÑ\96
+знаходити всі типи тегів мови C, включаючи макровизначення, значення
+всередині enum{...}, визначення функцій та методів, теги
+enum/struct/union, пÑ\80оÑ\82оÑ\82ипи зовнÑ\96Ñ\88нÑ\96Ñ\85 Ñ\84Ñ\83нкÑ\86Ñ\96й, Ñ\96мена typedef Ñ\82а
+декларації змінних. Exuberant Ctags значно тяжче обманути кодом, що
+містить умовні конструкцію препроцесора #if, ніж оригінальний ctags.
+Exuberant Ctags пÑ\96дÑ\82Ñ\80имÑ\83Ñ\94 вивÑ\96д Ñ\84айлÑ\83 TAGS Ñ\83 Ñ\81Ñ\82илÑ\96 Emacs Ñ\96 може бÑ\83Ñ\82и
+використаний для виводу списку вибраних об'єктів, які знаходяться у
+вихідних файлах.
%prep
%setup -q
+%patch0 -p0
+#%patch1 -p1 recheck
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
%build
%{__autoconf}
-cp -f %{_datadir}/automake/install-sh .
-cp -f %{_datadir}/automake/config.sub .
-%configure
+cp -f /usr/share/automake/install-sh .
+cp -f /usr/share/automake/config.sub .
+%configure \
+ --enable-etags \
+ --enable-tmpdir=/tmp
+
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install \
+%{__make} -j1 install \
prefix=$RPM_BUILD_ROOT%{_prefix} \
bindir=$RPM_BUILD_ROOT%{_bindir} \
mandir=$RPM_BUILD_ROOT%{_mandir}
-rm -f $RPM_BUILD_ROOT%{_mandir}/man1/etags.1
-echo ".so ctags.1" > $RPM_BUILD_ROOT%{_mandir}/man1/etags.1
-
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
%doc EXTENDING.html FAQ NEWS README
-%attr(755,root,root) %{_bindir}/*
-%{_mandir}/man1/*
+%attr(755,root,root) %{_bindir}/ctags
+%attr(755,root,root) %{_bindir}/etags
+%{_mandir}/man1/ctags.1*
+%{_mandir}/man1/etags.1*