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