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