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