]> git.pld-linux.org Git - packages/git-core.git/blob - git-core.spec
388797f9ac1ce7aa54f7d9dfdb5552f4e13f5ba0
[packages/git-core.git] / git-core.spec
1 #
2 # Conditional build:
3 %bcond_without  tests           # don't perform make test
4 %bcond_with     tests_cvs       # perform tests which use CVS
5 %bcond_without  tests_svn       # perform tests which use subversion
6 %bcond_without  doc             # skip building/packaging docs/manuals (takes some time)
7 %bcond_without  pcre            # perl-compatible regexes support
8 %bcond_without  gnome_keyring   # build without gnome keyring support
9 %bcond_without  tk              # build without the Tcl/Tk interface
10
11 # for AC: --without doc --without gnome_keyring --without tests
12
13 %include        /usr/lib/rpm/macros.perl
14 Summary:        Distributed version control system focused on speed, effectivity and usability
15 Summary(pl.UTF-8):      Rozproszony system śledzenia treści skupiony na szybkości, wydajności i użyteczności
16 Name:           git-core
17 Version:        2.17.0
18 Release:        1
19 License:        GPL v2
20 Group:          Development/Tools
21 Source0:        http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
22 # Source0-md5:  371985891f467969802fe1c7584a45bf
23 Source1:        %{name}-gitweb.conf
24 Source2:        %{name}-gitweb-httpd.conf
25 Source3:        %{name}-gitweb-lighttpd.conf
26 Source4:        %{name}.sysconfig
27 Source5:        %{name}.inet
28 Source6:        %{name}.init
29 Source7:        gitolite.pl
30 Patch0:         %{name}-key-bindings.patch
31 Patch1:         %{name}-sysconfdir.patch
32 Patch2:         cherry-picked-commitlog.patch
33 Patch3:         %{name}-race_test.patch
34 URL:            http://git-scm.com/
35 BuildRequires:  autoconf >= 2.59
36 BuildRequires:  automake
37 BuildRequires:  curl-devel
38 BuildRequires:  expat-devel
39 %if "%{pld_release}" == "ac"
40 BuildRequires:  gettext-devel
41 %else
42 BuildRequires:  gettext-tools
43 %endif
44 %if %{with gnome_keyring}
45 BuildRequires:  libgnome-keyring-devel
46 BuildRequires:  pkgconfig
47 %endif
48 BuildRequires:  openssl-devel
49 %{?with_pcre:BuildRequires:     pcre2-8-devel}
50 BuildRequires:  perl-Error > 0.15
51 BuildRequires:  perl-base
52 BuildRequires:  python-devel
53 BuildRequires:  rpm-perlprov >= 4.1-13
54 BuildRequires:  rpm-pythonprov
55 BuildRequires:  rpmbuild(macros) >= 1.673
56 %if %{with tk}
57 # wish
58 BuildRequires:  tk
59 %endif
60 BuildRequires:  zlib-devel
61 %if %{with doc}
62 BuildRequires:  asciidoc >= 7.1.2-3
63 BuildRequires:  docbook-dtd45-xml
64 BuildRequires:  xmlto
65 %endif
66 %if %{with tests}
67 %if %{with tests_cvs}
68 # tests failed sometimes when using nserver/cvsnt client so enforce pure cvs here
69 BuildRequires:  cvs-gnu-client < 1.13
70 BuildRequires:  cvs-gnu-client >= 1.12
71 %endif
72 %if %{with tests_svn}
73 BuildRequires:  perl-subversion
74 BuildRequires:  subversion
75 %endif
76 Conflicts:      pdksh < 5.2.14-46
77 %endif
78 # git-sh-setup: sane_grep
79 Requires:       grep
80 # git-pull: printf
81 Requires:       coreutils
82 Requires:       sed
83 Suggests:       git-core-bzr
84 Suggests:       git-core-cvs
85 Suggests:       git-core-hg
86 Suggests:       git-core-p4
87 Suggests:       git-core-svn
88 Suggests:       less
89 Suggests:       openssh-clients
90 Suggests:       perl-Git = %{version}-%{release}
91 Suggests:       rsync
92 Obsoletes:      git-core-gitview
93 Obsoletes:      python-Git
94 Conflicts:      perl-Git < %{version}
95 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
96
97 # html docs have links to txt files
98 %define         _noautocompressdoc      *.txt
99
100 # do not generate perl dependency, git add -p support is optional
101 # skip dependency generation from templates
102 %define         _noautoreqfiles %{_libexecdir}/%{name}/git-add--interactive %{_datadir}/%{name}/templates
103
104 %define         webapp          gitweb
105 %define         webappdir       %{_sysconfdir}/webapps/%{webapp}
106 %define         appdir          %{_datadir}/%{webapp}
107 %define         cgibindir       %{_prefix}/lib/cgi-bin
108 %define         gitcoredir      %{_libexecdir}/%{name}
109
110 %description
111 "git" can mean anything, depending on your mood.
112
113 - random three-letter combination that is pronounceable, and not
114   actually used by any common UNIX command. The fact that it is a
115   mispronunciation of "get" may or may not be relevant.
116 - stupid. contemptible and despicable. simple. Take your pick from the
117   dictionary of slang.
118 - "global information tracker": you're in a good mood, and it actually
119   works for you. Angels sing, and a light suddenly fills the room.
120 - "goddamn idiotic truckload of sh*t": when it breaks
121
122 This is a stupid (but extremely fast) directory content manager. It
123 doesn't do a whole lot, but what it 'does' do is track directory
124 contents efficiently.
125
126 %description -l pl.UTF-8
127 "git" może oznaczać cokolwiek, w zależności od nastroju.
128
129 - losową kombinację trzech liter, która jest wymawialna i właściwie
130   nie używana przez żadne popularne polecenie uniksowe. Fakt, że jest to
131   błędna pisownia słowa "get" może mieć lub nie mieć znaczenia.
132 - głupi, pogardliwy, prosty. Można wybrać ze słownika slangu.
133 - "global information tracker" (narzędzie do globalnego śledzenia
134   informacji) - jeśli jesteśmy w dobrym nastroju i git akurat działa.
135   Anioły śpiewają, a światło niespodziewanie wypełnia pokój.
136 - "goddamn idiotic truckload of sh*t" (przeklęty idiotyczny ładunek
137   g*) - kiedy się zepsuje.
138
139 Jest to prymitywny (ale bardzo szybki) zarządca treści słownikowej.
140 Nie robi wiele, ale to, co "robi", to wydajne śledzenie zawartości
141 katalogu.
142
143 %package doc
144 Summary:        Documentation for git-core
145 Summary(pl.UTF-8):      Dokumentacja do git-core
146 Group:          Documentation
147 %if "%{_rpmversion}" >= "5"
148 BuildArch:      noarch
149 %endif
150
151 %description doc
152 Documentation for git-core.
153
154 %description doc -l pl.UTF-8
155 Dokumentacja do git-core.
156
157 %package daemon-inetd
158 Summary:        Files necessary to run git-daemon as an inetd service
159 Summary(pl.UTF-8):      Pliki niezbędne do uruchomienia git-daemona w trybie usługi inetd
160 Group:          Networking/Daemons
161 Requires:       %{name} = %{version}-%{release}
162 Requires:       setup >= 2.4.11-1
163 Provides:       git-core-daemon
164 Obsoletes:      git-core-daemon
165 Obsoletes:      git-core-daemon-standalone
166
167 %description daemon-inetd
168 Git-daemon is a really simple TCP git daemon that can serve git
169 repositories. This package provides all necessarry files to run
170 git-daemon as an inetd service.
171
172 %description daemon-inetd -l pl.UTF-8
173 Git-daemon to prosty demon git korzystający z protokołu TCP do
174 udostępniania repozytoriów git. Ten pakiet dostarcza pliki potrzebne
175 do uruchomienia git-demona w trybie usługi inetd.
176
177 %package daemon-standalone
178 Summary:        Files necessary to run git-daemon as a standalone service
179 Summary(pl.UTF-8):      Pliki niezbędne do uruchomienia git-daemona w trybie usługi samodzielnej
180 Group:          Networking/Daemons
181 Requires:       %{name} = %{version}-%{release}
182 Provides:       git-core-daemon
183 Obsoletes:      git-core-daemon
184 Obsoletes:      git-core-daemon-inetd
185
186 %description daemon-standalone
187 Git-daemon is a really simple TCP git daemon that can serve git
188 repositories. This package provides all necessarry files to run
189 git-daemon as an standalone service.
190
191 %description daemon-standalone -l pl.UTF-8
192 Git-daemon to prosty demon git korzystający z protokołu TCP do
193 udostępniania repozytoriów git. Ten pakiet dostarcza pliki potrzebne
194 do uruchomienia git-daemona w trybie usługi samodzielnej.
195
196 %package devel
197 Summary:        Git library with header files
198 Summary(pl.UTF-8):      Biblioteka Gita oraz pliki nagłówkowe
199 Group:          Development/Libraries
200 Requires:       zlib-devel
201
202 %description devel
203 Git library with header files.
204
205 %description devel -l pl.UTF-8
206 Biblioteka Gita oraz pliki nagłówkowe.
207
208 %package gitk
209 Summary:        Tcl/Tk interface to the Git version control system
210 Summary(pl.UTF-8):      Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
211 Group:          Development/Tools
212 Requires:       %{name} = %{version}-%{release}
213 Requires:       tk
214 %if "%{_rpmversion}" >= "5"
215 BuildArch:      noarch
216 %endif
217
218 %description gitk
219 gitk displays changes in a repository or a selected set of commits.
220 This includes visualizing the commit graph, showing information
221 related to each commit, and the files in the trees of each revision.
222
223 Historically, gitk was the first repository browser. It's written in
224 Tcl/Tk and started off in a separate repository but was later merged
225 into the main git repository.
226
227 %description gitk -l pl.UTF-8
228 gitk wyświetla zmiany w repozytorium lub wybranym zbiorze commitów.
229 Oznacza to wizualizację grafu commitów, wyświetlanie informacji
230 związanych z każdym z commitów oraz listę plików dla każdej rewizji.
231
232 Z historycznego punktu widzenia gitk był pierwszą przeglądarką
233 repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany w
234 osobnym repozytorium, ale z czasem został włączony do głównego
235 repozytorium gita.
236
237 %package gitweb
238 Summary:        Web frontend to git
239 Summary(pl.UTF-8):      Frontend WWW do gita
240 Group:          Development/Tools
241 Requires:       %{name} = %{version}-%{release}
242 Requires:       webapps
243 Requires:       webserver(access)
244 Requires:       webserver(alias)
245 Requires:       webserver(cgi)
246 Suggests:       webserver(setenv)
247
248 %description gitweb
249 This package provides a web interface for browsing git repositories.
250
251 %description gitweb -l pl.UTF-8
252 Pakiet ten dostarcza interfejs WWW do przeglądania repozytoriów gita.
253
254 %package gui
255 Summary:        Tcl/Tk interface to the Git version control system
256 Summary(pl.UTF-8):      Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
257 Group:          Development/Tools
258 Requires:       %{name} = %{version}-%{release}
259 Requires:       tk
260 Requires:       xdg-utils
261 Suggests:       meld
262
263 %description gui
264 Displays changes in a repository or a selected set of commits. This
265 includes visualizing the commit graph, showing information related to
266 each commit, and the files in the trees of each revision.
267
268 Historically, gitk was the first repository browser. It's written in
269 Tcl/Tk and started off in a separate repository but was later merged
270 into the main git repository.
271
272 %description gui -l pl.UTF-8
273 Wyświetla zmiany w repozytorium lub wybranym zbiorze commitów. Oznacza
274 to wizualizację grafu commitów, wyświetlanie informacji związanych z
275 każdym z commitów oraz listę plików dla każdej rewizji.
276
277 Z punktu widzenia historii, gitk był pierwszą przeglądarką
278 repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany w
279 osobnym repozytorium, ale z czasem został włączony do głównego
280 repozytorium gita.
281
282 %package arch
283 Summary:        Git tools for importing Arch repositories
284 Summary(pl.UTF-8):      Narzędzia Gita do importowania repozytoriów Archa
285 Group:          Development/Tools
286 Requires:       %{name} = %{version}-%{release}
287 Requires:       tla
288
289 %description arch
290 Git tools for importing Arch repositories.
291
292 %description arch -l pl.UTF-8
293 Narzędzia Gita do importowania repozytoriów Archa.
294
295 %package bzr
296 Summary:        Git tools for working with bzr repositories
297 Summary(pl.UTF-8):      Narzędzia Gita do pracy z repozytoriami bzr
298 Group:          Development/Tools
299 Requires:       %{name} = %{version}-%{release}
300 Requires:       bzr
301
302 %description bzr
303 Git tools for working with bzr repositories.
304
305 %description bzr -l pl.UTF-8
306 Narzędzia Gita do pracy z repozytoriami bzr.
307
308 %package cvs
309 Summary:        CVS support for Git
310 Summary(pl.UTF-8):      Obsługa CVS dla Gita
311 Group:          Development/Tools
312 Requires:       %{name} = %{version}-%{release}
313 Requires:       cvsps >= 2.1-2
314 Requires:       rcs
315
316 %description cvs
317 CVS support for Git.
318
319 %description cvs -l pl.UTF-8
320 Obsługa CVS dla Gita.
321
322 %package hg
323 Summary:        Git tools for working with mercurial repositories
324 Summary(pl.UTF-8):      Narzędzia Gita do pracy z repozytoriami mercuriala
325 Group:          Development/Tools
326 Requires:       %{name} = %{version}-%{release}
327 Requires:       mercurial >= 1.8
328
329 %description hg
330 Git tools for working with mercurial repositories.
331
332 %description hg -l pl.UTF-8
333 Narzędzia Gita do pracy z repozytoriami mercuriala.
334
335 %package p4
336 Summary:        Git tools for working with Perforce depots
337 Summary(pl.UTF-8):      Narzędzia Gita do pracy z magazynami Perforce'a
338 Group:          Development/Tools
339 Requires:       %{name} = %{version}-%{release}
340
341 %description p4
342 Git tools for working with Perforce depots.
343
344 %description p4 -l pl.UTF-8
345 Narzędzia Gita do pracy z magazynami Perforce'a.
346
347 %package svn
348 Summary:        Subversion support for Git
349 Summary(pl.UTF-8):      Obsługa Subversion dla Gita
350 Group:          Development/Tools
351 Requires:       %{name} = %{version}-%{release}
352 Requires:       perl-Encode
353 Requires:       perl-Term-ReadKey
354
355 %description svn
356 Subversion support for Git.
357
358 %description svn -l pl.UTF-8
359 Obsługa Subversion dla Gita.
360
361 %package email
362 Summary:        Git tools for sending email
363 Summary(pl.UTF-8):      Narzędzia Gita do wysyłania poczty
364 Group:          Development/Tools
365 Requires:       %{name} = %{version}-%{release}
366 Suggests:       perl-Net-SMTP-SSL
367
368 %description email
369 Git tools for sending email.
370
371 %description email -l pl.UTF-8
372 Narzędzia Gita do wysyłania poczty.
373
374 %package -n bash-completion-git
375 Summary:        bash-completion for git
376 Summary(pl.UTF-8):      bashowe uzupełnianie nazw dla gita
377 Group:          Applications/Shells
378 Requires:       %{name} = %{version}-%{release}
379 Requires:       bash-completion >= 2.0
380 %if "%{_rpmversion}" >= "5"
381 BuildArch:      noarch
382 %endif
383
384 %description -n bash-completion-git
385 This package provides bash-completion for git.
386
387 %description -n bash-completion-git -l pl.UTF-8
388 Pakiet ten dostarcza bashowe uzupełnianie nazw dla gita.
389
390 %package -n perl-Git
391 Summary:        Perl interface to the Git version control system
392 Summary(pl.UTF-8):      Perlowy interfejs do systemu kontroli wersji Git
393 Group:          Development/Languages/Perl
394 Obsoletes:      perl-git-core
395 %if "%{_rpmversion}" >= "5"
396 BuildArch:      noarch
397 %endif
398
399 %description -n perl-Git
400 This module provides Perl scripts easy way to interface the Git
401 version control system. The modules have an easy and well-tested way
402 to call arbitrary Git commands; in the future, the interface will also
403 provide specialized methods for doing easily operations which are not
404 totally trivial to do over the generic command interface.
405
406 %description -n perl-Git -l pl.UTF-8
407 Ten moduł umożliwia skryptom Perla współpracę z systemem kontroli
408 wersji Git. W łatwy i dobrze przetestowany sposób pozwala wywoływać
409 dowolne polecenia Gita; w przyszłości interfejs udostępni także
410 specjalne metody do łatwego wykonywania operacji nietrywialnych do
411 wykonania przy użyciu ogólnego interfejsu poleceń.
412
413 %package -n gnome-keyring-git-core
414 Summary:        GNOME Keyring authentication provider for Git
415 Summary(pl.UTF-8):      Moduł uwierzytelniający GNOME Keyring dla Git
416 Group:          X11/Applications
417 URL:            http://git-scm.com/docs/gitcredentials.html
418 Requires:       %{name} = %{version}-%{release}
419
420 %description -n gnome-keyring-git-core
421 Authentication provider module for Git which allows git client to
422 authenticate using GNOME Keyring.
423
424 You need to register it with:
425 - git config --global credential.helper gnome-keyring
426
427 %description -n gnome-keyring-git-core -l pl.UTF-8
428 Moduł uwierzytelniający dla Subversion pozwalający klientom git
429 uwierzytelniać się przy użyciu mechanizmu GNOME Keyring.
430
431 Moduł trzeba zarejestrować poleceniem:
432 - git config --global credential.helper gnome-keyring
433
434 %prep
435 %setup -q -n git-%{version}
436 %patch0 -p0
437 %patch1 -p1
438 %patch2 -p1
439 %patch3 -p1
440
441 %{__rm} {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore
442
443 # we build things in contrib but want to have it clean for doc purporses, too
444 cp -a contrib contrib-doc
445
446 %build
447 %{__aclocal}
448 %{__autoconf}
449 %configure \
450         --sysconfdir=%{_sysconfdir}/git-core \
451         %{?with_pcre:--with-libpcre2} \
452         --with-openssl
453
454 echo "BLK_SHA1=1" >> config.mak
455
456 %{__make} \
457         GITWEB_CONFIG="%{webappdir}/gitweb.conf" \
458         GITWEB_PROJECTROOT="/var/lib/git" \
459         GITWEB_CSS="/gitweb/gitweb.css" \
460         GITWEB_LOGO="/gitweb/git-logo.png" \
461         GITWEB_FAVICON="/gitweb/git-favicon.png" \
462         NO_PERL_CPAN_FALLBACKS=1 \
463         perllibdir=%{perl_vendorlib} \
464         V=1
465
466 %{__make} -C contrib/subtree
467
468 %if %{with gnome_keyring}
469 %{__make} -C contrib/credential/gnome-keyring
470 %endif
471
472 %if %{with doc}
473 %{__make} doc \
474         MAN_BASE_URL=file://%{_docdir}/%{name}-doc-%{version}/ \
475         V=1
476 %endif
477
478 %if %{with tests}
479 %if %{without tests_cvs}
480 %{__rm} t/t*cvs*.sh || :
481 %endif
482 %{!?with_tests_svn:GIT_SKIP_TESTS='t91??'} %{__make} test
483 %endif
484
485 %install
486 rm -rf $RPM_BUILD_ROOT
487 install -d $RPM_BUILD_ROOT{%{_includedir}/%{name}/xdiff,%{_libdir},%{_localstatedir}/lib/git}
488 install -d $RPM_BUILD_ROOT{%{appdir},%{cgibindir},%{webappdir}}
489 install -d $RPM_BUILD_ROOT/etc/{sysconfig/rc-inetd,rc.d/init.d}
490 install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
491 cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/git-core/gitconfig
492 [init]
493         templatedir = %{_sysconfdir}/%{name}/templates
494 EOF
495
496 %{__make} install \
497         DESTDIR=$RPM_BUILD_ROOT \
498         NO_PERL_CPAN_FALLBACKS=1 \
499         perllibdir=%{perl_vendorlib}
500
501 %if %{with doc}
502 %{__make} install-doc \
503         DESTDIR=$RPM_BUILD_ROOT
504 %endif
505
506 # copy templates except sample hooks
507 cp -a $RPM_BUILD_ROOT%{_datadir}/%{name}/templates $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
508 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/templates/hooks/*.sample
509
510 # header files and lib
511 cp -p *.h $RPM_BUILD_ROOT%{_includedir}/%{name}
512 cp -a compat $RPM_BUILD_ROOT%{_includedir}/%{name}
513 cp -p xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff
514 install -d $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
515 cp -p block-sha1/sha1.h $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
516 cp -p libgit.a $RPM_BUILD_ROOT%{_libdir}
517 cp -p xdiff/lib.a $RPM_BUILD_ROOT%{_libdir}/libgit_xdiff.a
518 cp -p {Makefile,config.mak,config.mak.autogen,config.mak.uname} $RPM_BUILD_ROOT%{_includedir}/%{name}
519
520 %{__make} -C contrib/subtree install \
521         libexecdir=%{gitcoredir} \
522         DESTDIR=$RPM_BUILD_ROOT
523
524 %if %{with doc}
525 %{__make} -C contrib/subtree install-man \
526         DESTDIR=$RPM_BUILD_ROOT
527 %endif
528
529 %if %{with gnome_keyring}
530 install -p contrib/credential/gnome-keyring/git-credential-gnome-keyring $RPM_BUILD_ROOT%{gitcoredir}
531 %endif
532
533 # bash completion
534 install -d $RPM_BUILD_ROOT%{bash_compdir}
535 cp -p contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{bash_compdir}/git
536
537 # Install git-prompt.sh
538 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
539 cp -p contrib/completion/git-prompt.sh $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
540
541 # Install bzr and hg remote helpers from contrib
542 install -p contrib/remote-helpers/git-remote-{bzr,hg} $RPM_BUILD_ROOT%{gitcoredir}
543
544 # gitweb
545 mv $RPM_BUILD_ROOT{%{appdir},%{cgibindir}}/gitweb.cgi
546 ln -s %{cgibindir}/gitweb.cgi $RPM_BUILD_ROOT%{appdir}/gitweb.cgi
547 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf
548 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{webappdir}/gitolite.pl
549 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf
550 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
551 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{webappdir}/lighttpd.conf
552
553 # git-daemon related files
554 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/git-daemon
555 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
556 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
557
558 # paths cleanup
559 sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
560 sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
561
562 # same file, link
563 ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-receive-pack
564 ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-upload-archive
565 ln -sf ../..%{gitcoredir}/git-shell $RPM_BUILD_ROOT%{_bindir}/git-shell
566 ln -sf ../..%{gitcoredir}/git-upload-pack $RPM_BUILD_ROOT%{_bindir}/git-upload-pack
567 ln -sf ../..%{gitcoredir}/git $RPM_BUILD_ROOT%{_bindir}/git
568
569 # convert all hardlinks to symlinks, as rpm fails to calculate it properly
570 # requiring excessive free space when it may not be available
571 # https://bugs.launchpad.net/pld-linux/+bug/1176337
572 find $RPM_BUILD_ROOT%{gitcoredir} -samefile $RPM_BUILD_ROOT%{gitcoredir}/git > files
573 for f in $(cat files); do
574         f=${f#$RPM_BUILD_ROOT%{gitcoredir}/}
575         test $f = git && continue
576         ln -snf git $RPM_BUILD_ROOT%{gitcoredir}/$f
577 done
578
579 # few others
580 ln -snf git-gui $RPM_BUILD_ROOT%{gitcoredir}/git-citool
581 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-https
582 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftp
583 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftps
584
585 # remove unneeded files
586 %py_postclean
587
588 mv $RPM_BUILD_ROOT%{_localedir}/pt{_PT,}
589 %find_lang git
590
591 %clean
592 rm -rf $RPM_BUILD_ROOT
593
594 %post daemon-inetd
595 %service -q rc-inetd reload
596
597 %postun daemon-inetd
598 if [ "$1" = "0" ]; then
599         %service -q rc-inetd reload
600 fi
601
602 %post daemon-standalone
603 /sbin/chkconfig --add git-daemon
604 %service git-daemon restart "git-daemon"
605
606 %preun daemon-standalone
607 if [ "$1" = "0" ]; then
608         %service git-daemon stop
609         /sbin/chkconfig --del git-daemon
610 fi
611
612 %triggerin gitweb -- apache1 < 1.3.37-3, apache1-base
613 %webapp_register apache %{webapp}
614
615 %triggerun gitweb -- apache1 < 1.3.37-3, apache1-base
616 %webapp_unregister apache %{webapp}
617
618 %triggerin gitweb -- apache < 2.2.0, apache-base
619 %webapp_register httpd %{webapp}
620
621 %triggerun gitweb -- apache < 2.2.0, apache-base
622 %webapp_unregister httpd %{webapp}
623
624 %triggerin gitweb -- lighttpd
625 %webapp_register lighttpd %{webapp}
626
627 %triggerun gitweb -- lighttpd
628 %webapp_unregister lighttpd %{webapp}
629
630 %files -f git.lang
631 %defattr(644,root,root,755)
632 %doc README.md contrib-doc
633 %attr(755,root,root) %{_bindir}/git
634 %attr(755,root,root) %{_bindir}/git-receive-pack
635 %attr(755,root,root) %{_bindir}/git-shell
636 %attr(755,root,root) %{_bindir}/git-upload-archive
637 %attr(755,root,root) %{_bindir}/git-upload-pack
638 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}
639
640 %if %{with doc}
641 %{_mandir}/man1/git-*.1*
642 %exclude %{_mandir}/man1/git-archimport.1*
643 %exclude %{_mandir}/man1/git-svn.1*
644 %exclude %{_mandir}/man1/git-cvs*.1*
645 %exclude %{_mandir}/man1/git-imap-send*.1*
646 %exclude %{_mandir}/man1/*email*.1*
647 %{_mandir}/man1/git.1*
648 %{_mandir}/man1/gitremote-helpers.1*
649 %{_mandir}/man5/gitattributes.5*
650 %{_mandir}/man5/githooks.5*
651 %{_mandir}/man5/gitignore.5*
652 %{_mandir}/man5/gitmodules.5*
653 %{_mandir}/man5/gitrepository-layout.5*
654 %{_mandir}/man7/gitcli.7*
655 %{_mandir}/man7/gitcore-tutorial.7*
656 %{_mandir}/man7/gitcredentials.7*
657 %{_mandir}/man7/gitdiffcore.7*
658 %{_mandir}/man7/giteveryday.7*
659 %{_mandir}/man7/gitglossary.7*
660 %{_mandir}/man7/gitnamespaces.7*
661 %{_mandir}/man7/gitrevisions.7*
662 %{_mandir}/man7/gitsubmodules.7*
663 %{_mandir}/man7/gittutorial-2.7*
664 %{_mandir}/man7/gittutorial.7*
665 %{_mandir}/man7/gitworkflows.7*
666 %endif
667
668 %dir %{gitcoredir}
669 %attr(755,root,root) %{gitcoredir}/*-*
670 %attr(755,root,root) %{gitcoredir}/git
671 %dir %{gitcoredir}/mergetools
672 %{gitcoredir}/mergetools/*
673
674 %{_datadir}/%{name}
675 %{_localstatedir}/lib/git
676
677 # subpackages
678 %exclude %{gitcoredir}/*email*
679 %exclude %{gitcoredir}/*p4*
680 %exclude %{gitcoredir}/git-archimport
681 %exclude %{gitcoredir}/git-citool
682 %exclude %{gitcoredir}/git-cvs*
683 %exclude %{gitcoredir}/git-gui
684 %exclude %{gitcoredir}/git-imap-send
685 %exclude %{gitcoredir}/git-instaweb
686 %exclude %{gitcoredir}/git-remote-bzr
687 %exclude %{gitcoredir}/git-remote-hg
688 %exclude %{gitcoredir}/git-remote-testsvn
689 %exclude %{gitcoredir}/git-svn
690 %exclude %{gitcoredir}/mergetools/p4merge
691 %if %{with gnome_keyring}
692 %exclude %{gitcoredir}/git-credential-gnome-keyring
693 %endif
694
695 %if %{with doc}
696 %files doc
697 %defattr(644,root,root,755)
698 %doc Documentation/RelNotes*
699 %doc Documentation/*.html Documentation/howto Documentation/technical
700 %endif
701
702 %files daemon-inetd
703 %defattr(644,root,root,755)
704 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/git-daemon
705
706 %files daemon-standalone
707 %defattr(644,root,root,755)
708 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/git-daemon
709 %attr(754,root, root) /etc/rc.d/init.d/git-daemon
710
711 %files devel
712 %defattr(644,root,root,755)
713 %{_includedir}/%{name}
714 %{_libdir}/libgit.a
715 %{_libdir}/libgit_xdiff.a
716
717 %if %{with tk}
718 %files gitk
719 %defattr(644,root,root,755)
720 %if %{with doc}
721 %{_mandir}/man1/gitk.1*
722 %endif
723 %attr(755,root,root) %{_bindir}/gitk
724 %dir %{_datadir}/gitk
725 %dir %{_datadir}/gitk/lib
726 %dir %{_datadir}/gitk/lib/msgs
727 %lang(bg) %{_datadir}/gitk/lib/msgs/bg.msg
728 %lang(ca) %{_datadir}/gitk/lib/msgs/ca.msg
729 %lang(de) %{_datadir}/gitk/lib/msgs/de.msg
730 %lang(es) %{_datadir}/gitk/lib/msgs/es.msg
731 %lang(fr) %{_datadir}/gitk/lib/msgs/fr.msg
732 %lang(hu) %{_datadir}/gitk/lib/msgs/hu.msg
733 %lang(it) %{_datadir}/gitk/lib/msgs/it.msg
734 %lang(ja) %{_datadir}/gitk/lib/msgs/ja.msg
735 %lang(pt_BR) %{_datadir}/gitk/lib/msgs/pt_br.msg
736 %lang(pt_PT) %{_datadir}/gitk/lib/msgs/pt_pt.msg
737 %lang(ru) %{_datadir}/gitk/lib/msgs/ru.msg
738 %lang(sv) %{_datadir}/gitk/lib/msgs/sv.msg
739 %lang(vi) %{_datadir}/gitk/lib/msgs/vi.msg
740 %endif
741
742 %files gitweb
743 %defattr(644,root,root,755)
744 %doc gitweb/{README,INSTALL}
745 %dir %{webappdir}
746 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/apache.conf
747 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/httpd.conf
748 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/lighttpd.conf
749 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitweb.conf
750 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitolite.pl
751 %attr(755,root,root) %{cgibindir}/gitweb.cgi
752 %{appdir}
753 %attr(755,root,root) %{gitcoredir}/git-instaweb
754 %if %{with doc}
755 %{_mandir}/man1/gitweb.1*
756 %{_mandir}/man5/gitweb.conf.5*
757 %endif
758
759 %if %{with tk}
760 %files gui
761 %defattr(644,root,root,755)
762 %attr(755,root,root) %{gitcoredir}/git-citool
763 %attr(755,root,root) %{gitcoredir}/git-gui
764 %dir %{_datadir}/git-gui
765 %dir %{_datadir}/git-gui/lib
766 %dir %{_datadir}/git-gui/lib/msgs
767 %{_datadir}/git-gui/lib/git-gui.ico
768 %{_datadir}/git-gui/lib/tclIndex
769 %{_datadir}/git-gui/lib/*.js
770 %{_datadir}/git-gui/lib/*.tcl
771 %lang(bg) %{_datadir}/git-gui/lib/msgs/bg.msg
772 %lang(de) %{_datadir}/git-gui/lib/msgs/de.msg
773 %lang(el) %{_datadir}/git-gui/lib/msgs/el.msg
774 %lang(fr) %{_datadir}/git-gui/lib/msgs/fr.msg
775 %lang(hu) %{_datadir}/git-gui/lib/msgs/hu.msg
776 %lang(it) %{_datadir}/git-gui/lib/msgs/it.msg
777 %lang(ja) %{_datadir}/git-gui/lib/msgs/ja.msg
778 %lang(nb) %{_datadir}/git-gui/lib/msgs/nb.msg
779 %lang(pt) %{_datadir}/git-gui/lib/msgs/pt_pt.msg
780 %lang(pt_BR) %{_datadir}/git-gui/lib/msgs/pt_br.msg
781 %lang(ru) %{_datadir}/git-gui/lib/msgs/ru.msg
782 %lang(sv) %{_datadir}/git-gui/lib/msgs/sv.msg
783 %lang(vi) %{_datadir}/git-gui/lib/msgs/vi.msg
784 %lang(zh_CN) %{_datadir}/git-gui/lib/msgs/zh_cn.msg
785 %endif
786
787 %files arch
788 %defattr(644,root,root,755)
789 %attr(755,root,root) %{gitcoredir}/git-archimport
790 %if %{with doc}
791 %{_mandir}/man1/git-archimport.1*
792 %endif
793
794 %files bzr
795 %defattr(644,root,root,755)
796 %attr(755,root,root) %{gitcoredir}/git-remote-bzr
797
798 %files cvs
799 %defattr(644,root,root,755)
800 %attr(755,root,root) %{_bindir}/git-cvsserver
801 %attr(755,root,root) %{gitcoredir}/git-cvs*
802 %if %{with doc}
803 %{_mandir}/man1/git-cvs*.1*
804 %{_mandir}/man7/gitcvs-migration.7*
805 %endif
806
807 %files hg
808 %defattr(644,root,root,755)
809 %attr(755,root,root) %{gitcoredir}/git-remote-hg
810
811 %files p4
812 %defattr(644,root,root,755)
813 %attr(755,root,root) %{gitcoredir}/git-p4
814 %attr(755,root,root) %{gitcoredir}/mergetools/p4merge
815
816 %files svn
817 %defattr(644,root,root,755)
818 %attr(755,root,root) %{gitcoredir}/git-svn
819 %attr(755,root,root) %{gitcoredir}/git-remote-testsvn
820 %{perl_vendorlib}/Git/SVN
821 %{perl_vendorlib}/Git/SVN.pm
822 %if %{with doc}
823 %{_mandir}/man1/git-svn.1*
824 %endif
825
826 %files email
827 %defattr(644,root,root,755)
828 %attr(755,root,root) %{gitcoredir}/git-imap-send
829 %attr(755,root,root) %{gitcoredir}/*email*
830 %if %{with doc}
831 %{_mandir}/man1/*email*.1*
832 %{_mandir}/man1/*imap-send*.1*
833 %endif
834
835 %files -n bash-completion-git
836 %defattr(644,root,root,755)
837 %{bash_compdir}/git
838
839 %files -n perl-Git
840 %defattr(644,root,root,755)
841 %{perl_vendorlib}/Git.pm
842 %dir %{perl_vendorlib}/Git
843 %{perl_vendorlib}/Git/I18N.pm
844 %{perl_vendorlib}/Git/IndexInfo.pm
845 %{perl_vendorlib}/Git/LoadCPAN.pm
846 %{perl_vendorlib}/Git/Packet.pm
847 %dir %{perl_vendorlib}/Git/LoadCPAN
848 %{perl_vendorlib}/Git/LoadCPAN/Error.pm
849 %dir %{perl_vendorlib}/Git/LoadCPAN/Mail
850 %{perl_vendorlib}/Git/LoadCPAN/Mail/Address.pm
851 %{_mandir}/man3/Git.3pm*
852
853 %if %{with gnome_keyring}
854 %files -n gnome-keyring-git-core
855 %defattr(644,root,root,755)
856 %attr(755,root,root) %{gitcoredir}/git-credential-gnome-keyring
857 %endif
This page took 0.073637 seconds and 2 git commands to generate.