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