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