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