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