]> git.pld-linux.org Git - packages/global.git/blame - global.spec
- up to 6.6.6
[packages/global.git] / global.spec
CommitLineData
8e5c353f 1#
b13b56c0 2# Conditional build:
d7353ab6 3%bcond_without xemacs # without xemacs subpackage
b13b56c0 4%bcond_without pgsql # without PostgreSQL support
3168f075
ER
5%bcond_without home_etc # use home_etc
6
6557cc60 7Summary: GNU GLOBAL - common source code tag system
57356af9 8Summary(pl.UTF-8): GNU GLOBAL - system list odwołań powszechnego użytku
e78b020d 9Name: global
8e5c353f 10Version: 6.6.6
3168f075 11Release: 0.1
8e5c353f 12License: GPL v3+
e78b020d 13Group: Development/Tools
8e5c353f
JB
14Source0: https://ftp.gnu.org/gnu/global/%{name}-%{version}.tar.gz
15# Source0-md5: a8bfe02e0872db39bd11758f82a01c10
d7353ab6 16#Source1: http://www.vim.org/scripts/download_script.php?src_id=2708
8e5c353f
JB
17Patch0: %{name}-link.patch
18Patch1: %{name}-info.patch
e12d7620 19Patch20: %{name}-ac-shared-pgsql.patch
e78b020d 20URL: http://www.gnu.org/software/global/
b13b56c0 21BuildRequires: autoconf
22BuildRequires: automake
b03a50e8 23%{?with_home_etc:BuildRequires: home-etc-devel}
3168f075 24BuildRequires: libtool
b03a50e8 25%{?with_pgsql:BuildRequires: postgresql-devel}
4282b1b1 26BuildRequires: texinfo
d7353ab6 27%{?with_xemacs:BuildRequires: xemacs}
b13b56c0 28Requires: coreutils
29Requires: findutils
d64c4a3a 30Requires: idutils
3dada9d2 31Requires: setup >= 2.4.6-2
e78b020d
JB
32Provides: gtags-%{version}-%{release}
33Provides: htags-%{version}-%{release}
34BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
b13b56c0 35
d7353ab6 36# definitions useful for vim-global-tags subpackage
1943c8d9 37%define _vimdatadir %{_datadir}/vim/vimfiles
48b746e4 38
3168f075
ER
39%define filterout_c -Werror=format-security
40
b13b56c0 41%description
42GNU GLOBAL is a source code tag system that works the same way across
43diverse environments. It supports C, C++, Yacc, Java, PHP and
44assembler source code. You can locate the specified function or method
45in source files and move there easily. It is useful to hack a large
46project containing many subdirectories, many general, main()-type
47functions. It allows you to create one tags container for a big code
48tree.
49%if %{with pgsql}
d7353ab6 50Tagging information may be keept in the traditional db files, or shared
99aa7559
ER
51GNU GLOBAL is a source code tag system that works the same way across
52diverse environments. It supports C, C++, Yacc, Java, PHP and
53assembler source code. You can locate the specified function or method
54in source files and move there easily. It is useful to hack a large
55project containing many subdirectories, many general, main()-type
56functions. It allows you to create one tags container for a big code
57tree. using the PostgreSQL database.
b13b56c0 58%endif
b13b56c0 59You can also find some subpackages, containing support for additional
99aa7559
ER
60GNU GLOBAL is a source code tag system that works the same way across
61diverse environments. It supports C, C++, Yacc, Java, PHP and
62assembler source code. You can locate the specified function or method
63in source files and move there easily. It is useful to hack a large
64project containing many subdirectories, many general, main()-type
65functions. It allows you to create one tags container for a big code
66tree. using the PostgreSQL database. GLOBAL's features, and for
67compliance with common code editors (symbols' completion, jumping).
b13b56c0 68
9fb02459
JR
69%description -l pl.UTF-8
70GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
71kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
72Umożliwia on odszukanie podanej funkcji lub metody w plikach
73źródłowych i przeniesienie się do niej w łatwy sposób. Narzędzie to
74jest przydatne do dłubania w dużych projektach, zawierających mnóstwo
75podkatalogów, wiele funkcji głównych w stylu main(). Pozwala on
76utworzyć jeden kontener ze znacznikami dla dużego drzewa kodu.
b13b56c0 77%if %{with pgsql}
9fb02459
JR
78Informacje o znacznikach mogą być przechowywane w postaci plików db,
79GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
80kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
81Umożliwia on odszukanie podanej funkcji lub metody w plikach
82źródłowych i przeniesienie się do niej w łatwy sposób. Narzędzie to
83jest przydatne do dłubania w dużych projektach, zawierających mnóstwo
84podkatalogów, wiele funkcji głównych w stylu main(). Pozwala on
85utworzyć jeden kontener ze znacznikami dla dużego drzewa kodu. lub też
86współdzielone przy pomocy bazy danych PostgreSQL.
b13b56c0 87%endif
9fb02459
JR
88Można także znaleźć kilka podpakietów, które zawierają wsparcie dla
89GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
90kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
91Umożliwia on odszukanie podanej funkcji lub metody w plikach
92źródłowych i przeniesienie się do niej w łatwy sposób. Narzędzie to
93jest przydatne do dłubania w dużych projektach, zawierających mnóstwo
94podkatalogów, wiele funkcji głównych w stylu main(). Pozwala on
95utworzyć jeden kontener ze znacznikami dla dużego drzewa kodu. lub też
96współdzielone przy pomocy bazy danych PostgreSQL. dodatkowych
97mechanizmów GLOBAL, a także pozwalają na współpracę z niektórymi
98znanymi edytorami kodu (dopełnianie nazw symboli, przeskakiwanie).
b13b56c0 99
100%package htags
101Summary: GNU GLOBAL - programs for making hypertext from source code
57356af9 102Summary(pl.UTF-8): GNU GLOBAL - programy produkujące hypertext z kodów źródłowych
b13b56c0 103Group: Development/Tools
e78b020d
JB
104Requires: %{name} = %{version}-%{release}
105Requires: perl-base >= 5.005
b13b56c0 106Provides: gozilla-%{version}-%{release}
107Provides: htags-%{version}-%{release}
b13b56c0 108
109%description htags
110GNU GLOBAL is a source code tag system that works the same way across
111diverse environments. It supports C, C++, Yacc, Java, PHP and
112assembler source code.
113
114Htags makes hypertext from source code. The package also contains the
115gozilla wrapper, which enforces Mozilla-based web browsers to display
116source code in an elegant way. Htags can also work with a CVS
117repository, which makes it more easy to navigate though the code over
118the Web.
119
9fb02459
JR
120%description htags -l pl.UTF-8
121GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
122kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
b13b56c0 123
9fb02459
JR
124Htags jest narzędziem generującym hypertext z kodów. Pakiet ten
125zawiera także program wyskakujący o nazwie gozilla, który zmusza
126przeglądarki bazujące na Mozilla, aby wyświetlały kod źródłowy w
127elegancki sposób. Htags potrafi również współpracować z repozytorium
128CVS ułatwiając nawigację w kodach poprzez WWW.
b13b56c0 129
130%package gtags-perl-wrapper
131Summary: GNU GLOBAL - gtags wrapper for tools which use Perl
57356af9 132Summary(pl.UTF-8): GNU GLOBAL - program pomocniczy dla narzędzi używających Perl
b13b56c0 133Group: Development/Tools
b13b56c0 134Requires: %{name} = %{version}-%{release}
e78b020d
JB
135Requires: perl-base >= 5.005
136Provides: gtags-perl-wrapper-%{version}-%{release}
b13b56c0 137
138%description gtags-perl-wrapper
139GNU GLOBAL is a source code tag system that works the same way across
140diverse environments. It supports C, C++, Yacc, Java, PHP and
141assembler source code.
142
143This package contains simple Perl wrapper, which allows to use the
144system for some tools and editors.
145
9fb02459
JR
146%description gtags-perl-wrapper -l pl.UTF-8
147GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
148kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
b13b56c0 149
9fb02459
JR
150Ten pakiet zawiera program pomocniczy, który pozwala używać tego
151systemu niektórym narzędziom i edytorom.
b13b56c0 152
153%package globash
154Summary: GNU GLOBAL - Bash customization to walk though the source trees
57356af9 155Summary(pl.UTF-8): GNU GLOBAL - usprawnienie dla Bash do poruszania się po drzewach źródeł
b13b56c0 156Group: Development/Tools
b13b56c0 157Requires: %{name} = %{version}-%{release}
158Requires: bash >= 2.05
e78b020d 159Provides: globash-%{version}-%{release}
b13b56c0 160
161%description globash
162GNU GLOBAL is a source code tag system that works the same way across
163diverse environments. It supports C, C++, Yacc, Java, PHP and
164assembler source code.
165
166This package allows you to invoke a customized Bash with features that
167makes easy to navigate in the sources trees. These are: Vi-like tag
168stack, Emacs-like tag name completion, editor or viewer automatic
169invocation, tag mark facility, and a cookie facility for managing
170directories.
171
9fb02459
JR
172%description globash -l pl.UTF-8
173GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
174kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
b13b56c0 175
9fb02459
JR
176Ten pakiet pozwala wywoływać odpowiednio przystosowaną wersję powłoki
177Bash z udogodnieniami, które czynią nawigowanie po drzewku źródeł
178rzeczą łatwą. Do tych udogodnień należą: stos znaczników w stylu Vi,
179dopełnianie nazw w stylu edytora Emacs, automatyczne wywoływanie
180edytorów lub przeglądarek, mechanizm wyróżniania znaczników, oraz
181mechanizm ciasteczek pomagający zarządzać katalogami.
b13b56c0 182
183%package -n xemacs-gtags-mode-pkg
184Summary: XEmacs mode for the GNU GLOBAL source tag system
57356af9 185Summary(pl.UTF-8): Tryb systemu list odwołań GNU GLOBAL dla edytora XEmacs
b13b56c0 186Group: Development/Tools
b13b56c0 187Requires: %{name} = %{version}-%{release}
e78b020d 188Requires: xemacs
b13b56c0 189
190%description -n xemacs-gtags-mode-pkg
191GNU GLOBAL is a source code tag system that works the same way across
192diverse environments. It supports C, C++, Yacc, Java, PHP and
193assembler source code.
194
195This package allows to integrate the GLOBAL source tag system with the
196XEmacs editor.
197
9fb02459
JR
198%description -n xemacs-gtags-mode-pkg -l pl.UTF-8
199GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
200kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
b13b56c0 201
9fb02459 202Ten pakiet pozwala zintegrować system GLOBAL z edytorem XEmacs.
d7353ab6 203
d7353ab6 204%package -n vim-global-tags
205Summary: ViM editor plugin for GNU GLOBAL source tag system
57356af9 206Summary(pl.UTF-8): wtyczka dla edytora ViM do systemu odwołań GNU GLOBAL
d7353ab6 207Group: Development/Tools
208Requires: %{name} = %{version}-%{release}
9ce90f7c
ER
209# for _vimdatadir existence
210Requires: vim-rt >= 4:6.3.058-3
d7353ab6 211
212%description -n vim-global-tags
213GNU GLOBAL is a source code tag system that works the same way across
214diverse environments. It supports C, C++, Yacc, Java, PHP and
215assembler source code.
216
217This package allows users to use GLOBAL tag system in ViM editor.
218
9fb02459
JR
219%description -n vim-global-tags -l pl.UTF-8
220GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
221kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
d7353ab6 222
9fb02459
JR
223Ten pakiet pozwala użytkownikom na używanie systemu znaczników i
224odwołań GLOBAL w edytorze ViM.
b13b56c0 225
54d991f6 226%package -n less-global-tags
227Summary: less pager's helper for GNU GLOBAL source tag system
57356af9 228Summary(pl.UTF-8): wsparcie dla polecenia less do systemu odwołań GNU GLOBAL
54d991f6 229Group: Development/Tools
230Requires: %{name} = %{version}-%{release}
231Requires: xemacs
232
233%description -n less-global-tags
234GNU GLOBAL is a source code tag system that works the same way across
235diverse environments. It supports C, C++, Yacc, Java, PHP and
236assembler source code.
237
238This package allows users to navigate through GLOBAL tags and
239references system using less pager.
240
9fb02459
JR
241%description -n less-global-tags -l pl.UTF-8
242GNU GLOBAL jest powszechnym systemem generowania list odwołań dla
243kodów źródłowych napisanych w C, C++, Yacc, Java, PHP i asemblerze.
54d991f6 244
9fb02459
JR
245Ten pakiet pozwala użytkownikom na nawigację poprzez system znaczników
246i odwołań systemu GLOBAL używając polecenia less.
54d991f6 247
b13b56c0 248%prep
249%setup -q
8e5c353f
JB
250%patch0 -p1
251%patch1 -p1
3168f075 252#%patch20 -p1
b13b56c0 253
8e5c353f
JB
254%{__sed} -i -e '1s,/usr/bin/env perl,%{__perl},' plugin-factory/maps2conf.pl
255%{__sed} -i -e '1s,/usr/bin/env python$,%{__python3},' plugin-factory/pygments_parser.py.in
256
b13b56c0 257%build
3168f075 258%{__libtoolize}
b13b56c0 259%{__aclocal}
260%{__autoconf}
261%{__autoheader}
262%{__automake}
263%configure \
e12d7620 264 %{?with_pgsql:--with-postgres=shared} \
8e5c353f 265 %{?with_home_etc:--with-home-etc}
b13b56c0 266%{__make}
267
268%install
269rm -rf $RPM_BUILD_ROOT
270install -d $RPM_BUILD_ROOT%{_bindir} \
271 $RPM_BUILD_ROOT%{_sysconfdir}/gtags \
272 $RPM_BUILD_ROOT%{_mandir}/man1 \
5c387611 273 $RPM_BUILD_ROOT%{_datadir}/{xemacs-packages/lisp/gtags,gtags} \
ca3e7e77 274 $RPM_BUILD_ROOT%{_vimdatadir}/plugin \
5c387611 275 $RPM_BUILD_ROOT%{_infodir} \
276 $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} \
3dada9d2 277 $RPM_BUILD_ROOT/etc/profile.d \
278 $RPM_BUILD_ROOT/etc/shrc.d \
b13b56c0 279
3dada9d2 280# /etc/shrc.d/*.sh hook for globash
6557cc60 281cat << EOF > $RPM_BUILD_ROOT/etc/shrc.d/globash.sh
3168f075 282alias globash='/bin/bash --rcfile %{_sysconfdir}/gtags/globash.rc'
55c1e223 283EOF
2a6b5aca 284
3dada9d2 285# /etc/shrc.d/*.csh hook for globash
6557cc60 286cat << EOF > $RPM_BUILD_ROOT/etc/shrc.d/globash.csh
3168f075 287alias globash '/bin/bash --rcfile %{_sysconfdir}/gtags/globash.rc'
55c1e223 288EOF
b13b56c0 289
d7353ab6 290# /etc/profile.d/*sh hooks for less-global-tags
54d991f6 291echo 'LESSGLOBALTAGS="global"' > $RPM_BUILD_ROOT/etc/profile.d/less-global.sh
292echo 'export LESSGLOBALTAGS' >> $RPM_BUILD_ROOT/etc/profile.d/less-global.sh
293echo 'setenv LESSGLOBALTAGS global' > $RPM_BUILD_ROOT/etc/profile.d/less-global.csh
294
b13b56c0 295%{__make} install \
296 DESTDIR=$RPM_BUILD_ROOT
297
8e5c353f
JB
298%{__rm} $RPM_BUILD_ROOT%{_libdir}/gtags/*.{la,a}
299
5c387611 300# documentation and other stuff
8e5c353f
JB
301%{__rm} $RPM_BUILD_ROOT%{_datadir}/gtags/{AUTHORS,BUILD_TOOLS,NEWS,COPYING,COPYING.LIB,ChangeLog,DONORS,FAQ,INSTALL,LICENSE,PLUGIN*,README*,SERVERSIDE_HOWTO,THANKS}
302# $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
303#%{__rm} $RPM_BUILD_ROOT%{_datadir}/gtags/{dir.gz,nvi*gtags.diff}
5c387611 304rm -f $RPM_BUILD_ROOT%{_infodir}/dir
305
306# vim support
8e5c353f 307%{__mv} $RPM_BUILD_ROOT%{_datadir}/gtags/*.vim $RPM_BUILD_ROOT%{_vimdatadir}/plugin
5c387611 308
309# perl wrapper
8e5c353f 310%{__mv} $RPM_BUILD_ROOT%{_datadir}/gtags/gtags.pl $RPM_BUILD_ROOT%{_bindir}
5c387611 311
312# globash
8e5c353f 313%{__mv} $RPM_BUILD_ROOT%{_datadir}/gtags/globash.rc $RPM_BUILD_ROOT%{_sysconfdir}/gtags
5c387611 314
315# default config
8e5c353f 316%{__mv} $RPM_BUILD_ROOT%{_datadir}/gtags/gtags.conf $RPM_BUILD_ROOT%{_sysconfdir}/gtags
5c387611 317
318# emacs support
319%if %{with xemacs}
8e5c353f 320%{__mv} $RPM_BUILD_ROOT%{_datadir}/gtags/gtags.el $RPM_BUILD_ROOT%{_datadir}/xemacs-packages/lisp/gtags
5c387611 321xemacs -batch -no-autoloads -l autoload -f batch-update-directory \
322 $RPM_BUILD_ROOT%{_datadir}/xemacs-packages/lisp/gtags
323xemacs -batch -vanilla -f batch-byte-compile \
324 $RPM_BUILD_ROOT%{_datadir}/xemacs-packages/lisp/gtags/gtags.el
325find $RPM_BUILD_ROOT%{_datadir} -type f -name "*.el" | while read i; do test ! -f ${i}c || rm -f $i; done
8e5c353f
JB
326%else
327%{__rm} $RPM_BUILD_ROOT%{_datadir}/gtags/gtags.el
5c387611 328%endif
329
b13b56c0 330%clean
331rm -rf $RPM_BUILD_ROOT
332
8e5c353f 333%post -p /sbin/postshell
50624495 334-/usr/sbin/fix-info-dir -c %{_infodir}
5c387611 335
8e5c353f 336%postun -p /sbin/postshell
50624495 337-/usr/sbin/fix-info-dir -c %{_infodir}
5c387611 338
b13b56c0 339%files
340%defattr(644,root,root,755)
8e5c353f 341%doc AUTHORS NEWS ChangeLog DONORS FAQ LICENSE README THANKS plugin-factory/PLUGIN_HOWTO script/SERVERSIDE_HOWTO
b13b56c0 342%attr(755,root,root) %{_bindir}/global
8e5c353f
JB
343%attr(755,root,root) %{_bindir}/gtags
344%attr(755,root,root) %{_bindir}/gtags-cscope
e78b020d 345%dir %{_sysconfdir}/gtags
b03a50e8 346%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/gtags/gtags.conf
8e5c353f
JB
347%dir %{_libdir}/gtags
348%attr(755,root,root) %{_libdir}/gtags/exuberant-ctags.so
349%attr(755,root,root) %{_libdir}/gtags/pygments-parser.so
350%attr(755,root,root) %{_libdir}/gtags/universal-ctags.so
351%attr(755,root,root) %{_libdir}/gtags/user-custom.so
352%{_datadir}/gtags
353%{_mandir}/man1/global.1*
354%{_mandir}/man1/gtags.1*
355%{_mandir}/man1/gtags-cscope.1*
356%{_mandir}/man5/gtags.conf.5*
357%{_infodir}/global.info*
b13b56c0 358
359%files htags
360%defattr(644,root,root,755)
b13b56c0 361%attr(755,root,root) %{_bindir}/htags
8e5c353f 362%attr(755,root,root) %{_bindir}/htags-server
b13b56c0 363%attr(755,root,root) %{_bindir}/gozilla
e78b020d
JB
364%{_mandir}/man1/htags*
365%{_mandir}/man1/gozilla*
b13b56c0 366
367%files gtags-perl-wrapper
368%defattr(644,root,root,755)
369%attr(755,root,root) %{_bindir}/gtags.pl
370
371%files globash
372%defattr(644,root,root,755)
8e5c353f 373%attr(755,root,root) %{_bindir}/globash
b03a50e8
ER
374%attr(755,root,root) %config %{_sysconfdir}/shrc.d/globash*
375%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gtags/globash.rc
8e5c353f 376%{_mandir}/man1/globash.1*
b13b56c0 377
d7353ab6 378%if %{with xemacs}
b13b56c0 379%files -n xemacs-gtags-mode-pkg
380%defattr(644,root,root,755)
381%dir %{_datadir}/xemacs-packages/lisp/*
382%{_datadir}/xemacs-packages/lisp/*/*.el*
d7353ab6 383%endif
54d991f6 384
385%files -n less-global-tags
386%defattr(644,root,root,755)
387%attr(755,root,root) %config /etc/profile.d/less-global*
d7353ab6 388
389%files -n vim-global-tags
390%defattr(644,root,root,755)
8e5c353f
JB
391%{_vimdatadir}/plugin/gtags.vim
392%{_vimdatadir}/plugin/gtags-cscope.vim
This page took 0.165739 seconds and 4 git commands to generate.