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