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