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