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