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