]> git.pld-linux.org Git - packages/git-core.git/blame - git-core.spec
- added try-restart action (LSB 3.1)
[packages/git-core.git] / git-core.spec
CommitLineData
08cc92d7 1
891d0b05
JB
2# Conditional build:
3%bcond_without tests # don't perform make test
08cc92d7 4%bcond_without doc # skip building/packaging docs/manuals (takes some time)
891d0b05 5#
89a476f8 6%include /usr/lib/rpm/macros.perl
51c3b977 7Summary: The stupid content tracker
3f8032f4 8Summary(pl.UTF-8): Prymitywne narzędzie do śledzenia treści
51c3b977 9Name: git-core
f22f764e
AM
10Version: 1.5.3.7
11Release: 1
51c3b977 12License: GPL v2
13Group: Development/Tools
bf83806a 14Source0: http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.bz2
f22f764e 15# Source0-md5: a114cbf532ff627698a031a66d072173
be2ccf99
AG
16Source1: %{name}-gitweb.conf
17Source2: %{name}-gitweb-httpd.conf
b11ada2c
AG
18Source3: %{name}.sysconfig
19Source4: %{name}.inet
20Source5: %{name}.init
508ade43 21URL: http://git.or.cz/
11856720
AM
22BuildRequires: autoconf
23BuildRequires: automake
51c3b977 24BuildRequires: curl-devel
115484e9 25BuildRequires: expat-devel
51c3b977 26BuildRequires: openssl-devel
27b79a12 27BuildRequires: perl-Error
51c3b977 28BuildRequires: perl-base
29BuildRequires: python
89a476f8 30BuildRequires: rpm-perlprov >= 4.1-13
be2ccf99 31BuildRequires: rpmbuild(macros) >= 1.264
51c3b977 32BuildRequires: zlib-devel
08cc92d7
ER
33%if %{with doc}
34BuildRequires: asciidoc >= 7.1.2-3
35BuildRequires: xmlto
36%endif
2c50f007 37%if %{with tests}
c95a5d99
JB
38# tests failed sometimes when using nserver client 1.11(?)
39BuildRequires: cvs-client >= 1.12
08cc92d7 40BuildRequires: pdksh >= 5.2.14-46
2c50f007 41%endif
3f245fc5 42Requires: coreutils
36ef13fd 43Requires: cpio
11856720
AM
44Requires: curl
45Requires: diffutils
3f245fc5
AM
46Requires: findutils
47Requires: grep
11856720 48Requires: openssh-clients
f266cd28 49Requires: perl-Error
401f46f5 50Requires: rcs
3f245fc5 51Requires: sed
51c3b977 52BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53
19936745
AM
54# html docs have links to txt files
55%define _noautocompressdoc *.txt
56
be2ccf99
AG
57%define webapp gitweb
58%define webappdir %{_sysconfdir}/webapps/%{webapp}
59%define appdir %{_datadir}/%{webapp}
60%define cgibindir %{_prefix}/lib/cgi-bin
61
51c3b977 62%description
63"git" can mean anything, depending on your mood.
64
65 - random three-letter combination that is pronounceable, and not
c751087d 66 actually used by any common UNIX command. The fact that it is a
51c3b977 67 mispronunciation of "get" may or may not be relevant.
68 - stupid. contemptible and despicable. simple. Take your pick from the
69 dictionary of slang.
70 - "global information tracker": you're in a good mood, and it actually
71 works for you. Angels sing, and a light suddenly fills the room.
72 - "goddamn idiotic truckload of sh*t": when it breaks
73
c751087d 74This is a stupid (but extremely fast) directory content manager. It
51c3b977 75doesn't do a whole lot, but what it 'does' do is track directory
76contents efficiently.
77
ea061c99
JR
78%description -l pl.UTF-8
79"git" może oznaczać cokolwiek, w zależności od nastroju.
80
b11ada2c
AG
81 - losową kombinację trzech liter, która jest wymawialna i właściwie
82 nie używana przez żadne popularne polecenie uniksowe. Fakt, że jest to
83 błędna pisownia słowa "get" może mieć lub nie mieć znaczenia.
84 - głupi, pogardliwy, prosty. Można wybrać ze słownika slangu.
85 - "global information tracker" (narzędzie do globalnego śledzenia
86 informacji) - jeśli jesteśmy w dobrym nastroju i git akurat działa.
87 Anioły śpiewają, a światło niespodziewanie wypełnia pokój.
88 - "goddamn idiotic truckload of sh*t" (przeklęty idiotyczny ładunek
89 g*) - kiedy się zepsuje.
ea061c99
JR
90
91Jest to prymitywny (ale bardzo szybki) zarządca treści słownikowej.
92Nie robi wiele, ale to, co "robi", to wydajne śledzenie zawartości
c751087d
JB
93katalogu.
94
b11ada2c
AG
95%package daemon-inetd
96Summary: Files necessary to run git-daemon as an inetd service
97Summary(pl.UTF-8): Pliki niezbędne do uruchomienia git-daemon w trybie usługi inetd
98Group: Networking/Daemons
99Requires: %{name} = %{version}-%{release}
100Requires: setup >= 2.4.11-1
101Provides: git-core-daemon
102Obsoletes: git-core-daemon
103Obsoletes: git-core-daemon-standalone
104
105%description daemon-inetd
106Git-daemon is a really simple TCP git daemon that can serve git
107repositories. This package provides all necessarry files to run
108git-daemon as an inetd service.
109
110%description daemon-inetd -l pl.UTF-8
111Git-daemon to prosty daemon git korzystający z protokołu TCP do
112udostępnienia repozytoriów git. Pakiet ten dostarcza potrzebnych
113plików do uruchomienia git-daemon w trybie usługi inetd.
114
115%package daemon-standalone
116Summary: Files necessary to run git-daemon as a standalone service
117Summary(pl.UTF-8): Pliki niezbędne do uruchomienia git-daemon w trybie usługi standalone
118Group: Networking/Daemons
119Requires: %{name} = %{version}-%{release}
120Provides: git-core-daemon
121Obsoletes: git-core-daemon
122Obsoletes: git-core-daemon-inetd
123
124%description daemon-standalone
125Git-daemon is a really simple TCP git daemon that can serve git
126repositories. This package provides all necessarry files to run
127git-daemon as an standalone service.
128
129%description daemon-standalone -l pl.UTF-8
130Git-daemon to prosty daemon git korzystający z protokołu TCP do
131udostępnienia repozytoriów git. Pakiet ten dostarcza potrzebnych
132plików do uruchomienia git-daemon w trybie usługi standalone.
133
e3cefa79 134%package devel
66a7f095 135Summary: Header files for git-core
3f8032f4 136Summary(pl.UTF-8): Pliki nagłówkowe dla git-core
66a7f095 137Group: Development/Libraries
e3cefa79 138
139%description devel
66a7f095 140Header files for git-core.
141
ea061c99
JR
142%description devel -l pl.UTF-8
143Pliki nagłówkowe dla git-core.
e3cefa79 144
91396e2e
AG
145%package gitk
146Summary: Tcl/Tk interface to the Git version control system
147Summary(pl.UTF-8): Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
148Group: Development/Tools
149Requires: %{name} = %{version}-%{release}
150Requires: tk
151
152%description gitk
153Displays changes in a repository or a selected set of commits. This
154includes visualizing the commit graph, showing information related to
155each commit, and the files in the trees of each revision.
156
157Historically, gitk was the first repository browser. It's written in
04fdf912 158Tcl/Tk and started off in a separate repository but was later merged
91396e2e
AG
159into the main git repository.
160
161%description gitk -l pl.UTF-8
02059138
ER
162Wyświetla zmiany w repozytorium lub wybranym zbiorze commitów. Oznacza
163to wizualizację grafu commitów, wyświetlanie informacji związanych z
164każdym z commitów oraz listę plików dla każdej rewizji.
91396e2e 165
04fdf912 166Z punktu widzenia historii, gitk był pierwszą przeglądarką
02059138
ER
167repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany w
168osobnym repozytorium, ale z czasem został włączony do głównego
2712fe7b 169repozytorium gita.
91396e2e 170
be2ccf99
AG
171%package gitweb
172Summary: Web frontend to git
173Summary(pl.UTF-8): Webowy frontend do git
174Group: Development/Tools
175Requires: %{name} = %{version}-%{release}
176Requires: webapps
177
178%description gitweb
179This package provides a web interface for browsing git repositories.
180
181%description gitweb -l pl.UTF-8
2712fe7b 182Pakiet ten dostarcza interfejs WWW do przeglądania repozytoriów gita.
be2ccf99 183
e1c8d79f 184%package gitview
30794a22
JB
185Summary: A GTK+ based repository browser for git
186Summary(pl.UTF-8): Oparta na GTK+ przeglądarka repozytorium gita
e1c8d79f 187Group: Development/Tools
188Requires: %{name} = %{version}-%{release}
c95a5d99
JB
189Requires: python >= 1:2.4
190Requires: python-pycairo >= 1.0
191Requires: python-pygobject
192Requires: python-pygtk-gtk >= 2:2.8
193Suggests: python-gnome-desktop-gtksourceview
e1c8d79f 194
195%description gitview
30794a22 196A GTK+ based repository browser for git.
e1c8d79f 197
198%description gitview -l pl.UTF-8
30794a22 199Oparta na GTK+ przeglądarka repozytorium gita.
e1c8d79f 200
f2c1983d
AG
201%package -n bash-completion-git
202Summary: bash-completion for git
2712fe7b 203Summary(pl.UTF-8): bashowe uzupełnianie nazw dla gita
02059138 204Group: Applications/Shells
f2c1983d
AG
205Requires: bash-completion
206
207%description -n bash-completion-git
208This package provides bash-completion for git.
209
210%description -n bash-completion-git -l pl.UTF-8
5383e3af 211Pakiet ten dostarcza bashowe uzupełnianie nazw dla gita.
f2c1983d 212
3dc01deb 213%package -n perl-Git
5d7220ad 214Summary: Perl interface to the Git version control system
3f8032f4 215Summary(pl.UTF-8): Perlowy interfejs do systemu kontroli wersji Git
5d7220ad
AM
216Group: Development/Languages/Perl
217Requires: %{name} = %{version}-%{release}
27b79a12 218Obsoletes: perl-git-core
5d7220ad 219
3dc01deb 220%description -n perl-Git
5d7220ad
AM
221This module provides Perl scripts easy way to interface the Git
222version control system. The modules have an easy and well-tested way
223to call arbitrary Git commands; in the future, the interface will also
224provide specialized methods for doing easily operations which are not
225totally trivial to do over the generic command interface.
226
ea061c99
JR
227%description -n perl-Git -l pl.UTF-8
228Ten moduł umożliwia skryptom Perla współpracę z systemem kontroli
08cc92d7
ER
229wersji Git. W łatwy i dobrze przetestowany sposób pozwala wywoływać
230dowolne polecenia Gita; w przyszłości interfejs udostępni także
231specjalne metody do łatwego wykonywania operacji nietrywialnych do
232wykonania przy użyciu ogólnego interfejsu poleceń.
7eef96e1 233
f2c1983d
AG
234%package -n vim-syntax-gitcommit
235Summary: Vim syntax: gitcommit
2712fe7b 236Summary(pl.UTF-8): Składnia dla Vima: gitcommit
f2c1983d
AG
237Group: Applications/Editors/Vim
238# for _vimdatadir existence
08cc92d7 239Requires: vim >= 4:6.3.058-3
f2c1983d
AG
240
241%description -n vim-syntax-gitcommit
242This plugin provides syntax highlighting for git's commit messages.
243
244%description -n vim-syntax-gitcommit -l pl.UTF-8
2712fe7b 245Ta wtyczka dostarcza podświetlanie składni dla treści commitów gita.
f2c1983d 246
51c3b977 247%prep
bf83806a 248%setup -q -n git-%{version}
a1036d06 249
250%build
11856720
AM
251%{__aclocal}
252%{__autoconf}
253%configure \
254 --with-openssl
51c3b977 255
b69112f7 256%{__make} \
be2ccf99
AG
257 INSTALLDIRS=vendor \
258 GITWEB_CONFIG="%{webappdir}/gitweb.conf" \
259 GITWEB_PROJECTROOT="/var/lib/git" \
260 GITWEB_CSS="/gitweb/gitweb.css" \
261 GITWEB_LOGO="/gitweb/git-logo.png" \
262 GITWEB_FAVICON="/gitweb/git-favicon.png"
27b79a12 263
08cc92d7 264%{?with_doc:%{__make} -C Documentation}
7fdeb28c 265
6c0d6e05
AM
266%{?with_tests:%{__make} test}
267
51c3b977 268%install
269rm -rf $RPM_BUILD_ROOT
be2ccf99
AG
270install -d $RPM_BUILD_ROOT{%{_includedir}/%{name}/xdiff,%{_sharedstatedir}/git}
271install -d $RPM_BUILD_ROOT{%{appdir},%{cgibindir},%{webappdir}}
f2c1983d
AG
272install -d $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/syntax
273install -d $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
b11ada2c 274install -d $RPM_BUILD_ROOT%{_sysconfdir}/{sysconfig/rc-inetd,rc.d/init.d}
c751087d 275
51c3b977 276%{__make} install \
d778c02c 277 INSTALLDIRS=vendor \
51c3b977 278 DESTDIR=$RPM_BUILD_ROOT
279
08cc92d7 280%if %{with doc}
7fdeb28c 281%{__make} -C Documentation install \
7fdeb28c 282 DESTDIR=$RPM_BUILD_ROOT
08cc92d7 283%endif
7fdeb28c 284
1f25da6d 285# header files and lib
e3cefa79 286install *.h $RPM_BUILD_ROOT%{_includedir}/%{name}
287install xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff
1f25da6d 288install libgit.a $RPM_BUILD_ROOT%{_libdir}
e3cefa79 289
f2c1983d
AG
290# bash completion
291install contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
292
293# vim syntax
294install contrib/vim/syntax/gitcommit.vim $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/syntax
295
be2ccf99
AG
296# gitweb
297install gitweb/*.css gitweb/*.png $RPM_BUILD_ROOT%{appdir}
298install gitweb/gitweb.cgi $RPM_BUILD_ROOT%{cgibindir}
299install %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf
300install %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf
301install %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
302
e1c8d79f 303# gitview
304install contrib/gitview/gitview $RPM_BUILD_ROOT%{_bindir}
305
b11ada2c
AG
306# git-daemon related files
307install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/git-daemon
308install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/rc-inetd/git-daemon
309install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/git-daemon
310
be2ccf99 311# remove unneeded files
27b79a12
ER
312rm -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
313rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Git/.packlist
c95a5d99
JB
314rm -f $RPM_BUILD_ROOT%{perl_vendorlib}/Error.pm
315rm -f $RPM_BUILD_ROOT%{_mandir}/man3/private-Error.3*
27b79a12 316
51c3b977 317%clean
318rm -rf $RPM_BUILD_ROOT
319
b11ada2c
AG
320%post daemon-inetd
321%service -q rc-inetd reload
322
323%postun daemon-inetd
324if [ "$1" = "0" ]; then
325 %service -q rc-inetd reload
326fi
327
328%post daemon-standalone
329/sbin/chkconfig --add git-daemon
330%service git-daemon restart "git-daemon"
331
332%preun daemon-standalone
333if [ "$1" = "0" ]; then
334 %service git-daemon stop
335 /sbin/chkconfig --del git-daemon
336fi
337
be2ccf99
AG
338%triggerin gitweb -- apache1 < 1.3.37-3, apache1-base
339%webapp_register apache %{webapp}
340
341%triggerun gitweb -- apache1 < 1.3.37-3, apache1-base
342%webapp_unregister apache %{webapp}
343
344%triggerin gitweb -- apache < 2.2.0, apache-base
345%webapp_register httpd %{webapp}
346
347%triggerun gitweb -- apache < 2.2.0, apache-base
348%webapp_unregister httpd %{webapp}
349
51c3b977 350%files
351%defattr(644,root,root,755)
08cc92d7
ER
352%doc README contrib
353%if %{with doc}
354%doc Documentation/{[!g]*,g[!i]*,git,git[!k]*}.html Documentation/howto Documentation/technical
0afd37aa
JB
355%{_mandir}/man1/git-*.1*
356%{_mandir}/man5/gitattributes.5*
357%{_mandir}/man5/gitignore.5*
785b167d 358%{_mandir}/man5/gitmodules.5*
0afd37aa 359%{_mandir}/man7/git.7*
08cc92d7
ER
360%endif
361%attr(755,root,root) %{_bindir}/git
362%attr(755,root,root) %{_bindir}/git-*
6c4f9a5b
AM
363%{_datadir}/%{name}
364%{_datadir}/git-gui
be2ccf99 365%{_sharedstatedir}/git
e3cefa79 366
b11ada2c
AG
367%files daemon-inetd
368%defattr(644,root,root,755)
369%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/git-daemon
370
371%files daemon-standalone
372%defattr(644,root,root,755)
373%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/git-daemon
374%attr(754,root, root) /etc/rc.d/init.d/git-daemon
375
e3cefa79 376%files devel
3ff86e9e 377%defattr(644,root,root,755)
e3cefa79 378%{_includedir}/*
1f25da6d 379%{_libdir}/*.a
5d7220ad 380
91396e2e
AG
381%files gitk
382%defattr(644,root,root,755)
08cc92d7 383%if %{with doc}
91396e2e 384%doc Documentation/gitk.html
91396e2e 385%{_mandir}/man1/gitk.1*
08cc92d7
ER
386%endif
387%attr(755,root,root) %{_bindir}/gitk
91396e2e 388
be2ccf99
AG
389%files gitweb
390%defattr(644,root,root,755)
391%doc gitweb/{README,INSTALL}
392%dir %{webappdir}
393%config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitweb.conf
394%config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/apache.conf
395%config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/httpd.conf
396%attr(755,root,root) %{cgibindir}/gitweb.cgi
397%{appdir}
398
e1c8d79f 399%files gitview
400%defattr(644,root,root,755)
401%doc contrib/gitview/gitview.txt
402%attr(755,root,root) %{_bindir}/gitview
403
f2c1983d
AG
404%files -n bash-completion-git
405%defattr(644,root,root,755)
406%{_sysconfdir}/bash_completion.d/*
407
3dc01deb 408%files -n perl-Git
5d7220ad 409%defattr(644,root,root,755)
3dc01deb 410%{perl_vendorlib}/Git.pm
0afd37aa 411%{_mandir}/man3/Git.3pm*
f2c1983d
AG
412
413%files -n vim-syntax-gitcommit
414%defattr(644,root,root,755)
415%doc contrib/vim/README
416%{_datadir}/vim/vimfiles/syntax/*
This page took 0.115529 seconds and 4 git commands to generate.