]> git.pld-linux.org Git - packages/git-core.git/blame_incremental - git-core.spec
up to 2.8.3
[packages/git-core.git] / git-core.spec
... / ...
CommitLineData
1#
2# Conditional build:
3%bcond_without tests # don't perform make test
4%bcond_with tests_cvs # perform tests which use CVS
5%bcond_without tests_svn # perform tests which use subversion
6%bcond_without doc # skip building/packaging docs/manuals (takes some time)
7%bcond_without pcre # perl-compatible regexes support
8%bcond_without gnome_keyring # build without gnome keyring support
9
10# for AC: --without doc --without gnome_keyring --without tests
11
12%include /usr/lib/rpm/macros.perl
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
15Name: git-core
16Version: 2.8.3
17Release: 1
18License: GPL v2
19Group: Development/Tools
20Source0: http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
21# Source0-md5: 4a9bda9f14e9c5ce3e7a416e43b74a1b
22Source1: %{name}-gitweb.conf
23Source2: %{name}-gitweb-httpd.conf
24Source3: %{name}-gitweb-lighttpd.conf
25Source4: %{name}.sysconfig
26Source5: %{name}.inet
27Source6: %{name}.init
28Source7: gitolite.pl
29Patch0: %{name}-tests.patch
30Patch1: %{name}-key-bindings.patch
31Patch2: %{name}-sysconfdir.patch
32Patch3: cherry-picked-commitlog.patch
33Patch4: %{name}-svn-exit-errors.patch
34URL: http://git-scm.com/
35BuildRequires: autoconf >= 2.59
36BuildRequires: automake
37BuildRequires: curl-devel
38BuildRequires: expat-devel
39BuildRequires: gettext-tools
40%if %{with gnome_keyring}
41BuildRequires: libgnome-keyring-devel
42BuildRequires: pkgconfig
43%endif
44BuildRequires: openssl-devel
45%{?with_pcre:BuildRequires: pcre-devel}
46BuildRequires: perl-Error > 0.15
47BuildRequires: perl-base
48BuildRequires: python-devel
49BuildRequires: rpm-perlprov >= 4.1-13
50BuildRequires: rpm-pythonprov
51BuildRequires: rpmbuild(macros) >= 1.673
52BuildRequires: tcl
53BuildRequires: zlib-devel
54%if %{with doc}
55BuildRequires: asciidoc >= 7.1.2-3
56BuildRequires: docbook-dtd45-xml
57BuildRequires: xmlto
58%endif
59%if %{with tests}
60%if %{with tests_cvs}
61# tests failed sometimes when using nserver/cvsnt client so enforce pure cvs here
62BuildRequires: cvs-gnu-client < 1.13
63BuildRequires: cvs-gnu-client >= 1.12
64%endif
65%if %{with tests_svn}
66BuildRequires: perl-subversion
67BuildRequires: subversion
68%endif
69Conflicts: pdksh < 5.2.14-46
70%endif
71# git-sh-setup: sane_grep
72Requires: grep
73# git-pull: printf
74Requires: coreutils
75Requires: openssh-clients
76Requires: perl-Error
77Requires: perl-Git = %{version}-%{release}
78Requires: sed
79Suggests: git-core-bzr
80Suggests: git-core-cvs
81Suggests: git-core-hg
82Suggests: git-core-p4
83Suggests: git-core-svn
84Suggests: less
85Suggests: rsync
86Obsoletes: python-Git
87BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
88
89# html docs have links to txt files
90%define _noautocompressdoc *.txt
91
92%define webapp gitweb
93%define webappdir %{_sysconfdir}/webapps/%{webapp}
94%define appdir %{_datadir}/%{webapp}
95%define cgibindir %{_prefix}/lib/cgi-bin
96%define gitcoredir %{_prefix}/lib/%{name}
97%define _libexecdir %{_prefix}/lib
98
99%description
100"git" can mean anything, depending on your mood.
101
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
110
111This is a stupid (but extremely fast) directory content manager. It
112doesn't do a whole lot, but what it 'does' do is track directory
113contents efficiently.
114
115%description -l pl.UTF-8
116"git" może oznaczać cokolwiek, w zależności od nastroju.
117
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.
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
130katalogu.
131
132%package doc
133Summary: Documentation for git-core
134Summary(pl.UTF-8): Dokumentacja do git-core
135Group: Documentation
136%if "%{_rpmversion}" >= "5"
137BuildArch: noarch
138%endif
139
140%description doc
141Documentation for git-core.
142
143%description doc -l pl.UTF-8
144Dokumentacja do git-core.
145
146%package daemon-inetd
147Summary: Files necessary to run git-daemon as an inetd service
148Summary(pl.UTF-8): Pliki niezbędne do uruchomienia git-daemona w trybie usługi inetd
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
155%if "%{_rpmversion}" >= "5"
156BuildArch: noarch
157%endif
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
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.
168
169%package daemon-standalone
170Summary: Files necessary to run git-daemon as a standalone service
171Summary(pl.UTF-8): Pliki niezbędne do uruchomienia git-daemona w trybie usługi samodzielnej
172Group: Networking/Daemons
173Requires: %{name} = %{version}-%{release}
174Provides: git-core-daemon
175Obsoletes: git-core-daemon
176Obsoletes: git-core-daemon-inetd
177%if "%{_rpmversion}" >= "5"
178BuildArch: noarch
179%endif
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
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.
190
191%package devel
192Summary: Git library with header files
193Summary(pl.UTF-8): Biblioteka Gita oraz pliki nagłówkowe
194Group: Development/Libraries
195Requires: zlib-devel
196
197%description devel
198Git library with header files.
199
200%description devel -l pl.UTF-8
201Biblioteka Gita oraz pliki nagłówkowe.
202
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
209%if "%{_rpmversion}" >= "5"
210BuildArch: noarch
211%endif
212
213%description gitk
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.
217
218Historically, gitk was the first repository browser. It's written in
219Tcl/Tk and started off in a separate repository but was later merged
220into the main git repository.
221
222%description gitk -l pl.UTF-8
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.
226
227Z historycznego punktu widzenia gitk był pierwszą przeglądarką
228repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany w
229osobnym repozytorium, ale z czasem został włączony do głównego
230repozytorium gita.
231
232%package gitweb
233Summary: Web frontend to git
234Summary(pl.UTF-8): Frontend WWW do gita
235Group: Development/Tools
236Requires: %{name} = %{version}-%{release}
237Requires: webapps
238Requires: webserver(access)
239Requires: webserver(alias)
240Requires: webserver(cgi)
241Suggests: webserver(setenv)
242%if "%{_rpmversion}" >= "5"
243BuildArch: noarch
244%endif
245
246%description gitweb
247This package provides a web interface for browsing git repositories.
248
249%description gitweb -l pl.UTF-8
250Pakiet ten dostarcza interfejs WWW do przeglądania repozytoriów gita.
251
252%package gitview
253Summary: A GTK+ based repository browser for git
254Summary(pl.UTF-8): Oparta na GTK+ przeglądarka repozytorium gita
255Group: Development/Tools
256Requires: %{name} = %{version}-%{release}
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
262%if "%{_rpmversion}" >= "5"
263BuildArch: noarch
264%endif
265
266%description gitview
267A GTK+ based repository browser for git.
268
269%description gitview -l pl.UTF-8
270Oparta na GTK+ przeglądarka repozytorium gita.
271
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
278Requires: xdg-utils
279Suggests: meld
280%if "%{_rpmversion}" >= "5"
281BuildArch: noarch
282%endif
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
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
309%if "%{_rpmversion}" >= "5"
310BuildArch: noarch
311%endif
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
319%package bzr
320Summary: Git tools for working with bzr repositories
321Summary(pl.UTF-8): Narzędzia Gita do pracy z repozytoriami bzr
322Group: Development/Tools
323Requires: %{name} = %{version}-%{release}
324Requires: bzr
325%if "%{_rpmversion}" >= "5"
326BuildArch: noarch
327%endif
328
329%description bzr
330Git tools for working with bzr repositories.
331
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
342%if "%{_rpmversion}" >= "5"
343BuildArch: noarch
344%endif
345
346%description cvs
347CVS support for Git.
348
349%description cvs -l pl.UTF-8
350Obsługa CVS dla Gita.
351
352%package hg
353Summary: Git tools for working with mercurial repositories
354Summary(pl.UTF-8): Narzędzia Gita do pracy z repozytoriami mercuriala
355Group: Development/Tools
356Requires: %{name} = %{version}-%{release}
357Requires: mercurial >= 1.8
358%if "%{_rpmversion}" >= "5"
359BuildArch: noarch
360%endif
361
362%description hg
363Git tools for working with mercurial repositories.
364
365%description hg -l pl.UTF-8
366Narzędzia Gita do pracy z repozytoriami mercuriala.
367
368%package p4
369Summary: Git tools for working with Perforce depots
370Summary(pl.UTF-8): Narzędzia Gita do pracy z magazynami Perforce'a
371Group: Development/Tools
372Requires: %{name} = %{version}-%{release}
373%if "%{_rpmversion}" >= "5"
374BuildArch: noarch
375%endif
376
377%description p4
378Git tools for working with Perforce depots.
379
380%description p4 -l pl.UTF-8
381Narzędzia Gita do pracy z magazynami Perforce'a.
382
383%package svn
384Summary: Subversion support for Git
385Summary(pl.UTF-8): Obsługa Subversion dla Gita
386Group: Development/Tools
387Requires: %{name} = %{version}-%{release}
388Requires: perl-Encode
389Requires: perl-Term-ReadKey
390
391%description svn
392Subversion support for Git.
393
394%description svn -l pl.UTF-8
395Obsługa Subversion dla Gita.
396
397%package email
398Summary: Git tools for sending email
399Summary(pl.UTF-8): Narzędzia Gita do wysyłania poczty
400Group: Development/Tools
401Requires: %{name} = %{version}-%{release}
402
403%description email
404Git tools for sending email.
405
406%description email -l pl.UTF-8
407Narzędzia Gita do wysyłania poczty.
408
409%package -n bash-completion-git
410Summary: bash-completion for git
411Summary(pl.UTF-8): bashowe uzupełnianie nazw dla gita
412Group: Applications/Shells
413Requires: %{name} = %{version}-%{release}
414Requires: bash-completion >= 2.0
415%if "%{_rpmversion}" >= "5"
416BuildArch: noarch
417%endif
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
423Pakiet ten dostarcza bashowe uzupełnianie nazw dla gita.
424
425%package -n perl-Git
426Summary: Perl interface to the Git version control system
427Summary(pl.UTF-8): Perlowy interfejs do systemu kontroli wersji Git
428Group: Development/Languages/Perl
429Obsoletes: perl-git-core
430%if "%{_rpmversion}" >= "5"
431BuildArch: noarch
432%endif
433
434%description -n perl-Git
435This module provides Perl scripts easy way to interface the Git
436version control system. The modules have an easy and well-tested way
437to call arbitrary Git commands; in the future, the interface will also
438provide specialized methods for doing easily operations which are not
439totally trivial to do over the generic command interface.
440
441%description -n perl-Git -l pl.UTF-8
442Ten moduł umożliwia skryptom Perla współpracę z systemem kontroli
443wersji Git. W łatwy i dobrze przetestowany sposób pozwala wywoływać
444dowolne polecenia Gita; w przyszłości interfejs udostępni także
445specjalne metody do łatwego wykonywania operacji nietrywialnych do
446wykonania przy użyciu ogólnego interfejsu poleceń.
447
448%package -n gnome-keyring-git-core
449Summary: GNOME Keyring authentication provider for Git
450Summary(pl.UTF-8): Moduł uwierzytelniający GNOME Keyring dla Git
451Group: X11/Applications
452URL: http://git-scm.com/docs/gitcredentials.html
453Requires: %{name} = %{version}-%{release}
454
455%description -n gnome-keyring-git-core
456Authentication provider module for Git which allows git client to
457authenticate using GNOME Keyring.
458
459You need to register it with:
460- git config --global credential.helper gnome-keyring
461
462%description -n gnome-keyring-git-core -l pl.UTF-8
463Moduł uwierzytelniający dla Subversion pozwalający klientom git
464uwierzytelniać się przy użyciu mechanizmu GNOME Keyring.
465
466Moduł trzeba zarejestrować poleceniem:
467- git config --global credential.helper gnome-keyring
468
469%prep
470%setup -q -n git-%{version}
471%patch0 -p1
472%patch1 -p0
473%patch2 -p1
474%patch3 -p1
475%patch4 -p1
476
477%{__rm} {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore
478
479# we build things in contrib but want to have it clean for doc purporses, too
480cp -a contrib contrib-doc
481
482%build
483%{__aclocal}
484%{__autoconf}
485%configure \
486 --sysconfdir=%{_sysconfdir}/git-core \
487 %{?with_pcre:--with-libpcre} \
488 --with-openssl
489
490echo "BLK_SHA1=1" >> config.mak
491
492%{__make} \
493 INSTALLDIRS=vendor \
494 GITWEB_CONFIG="%{webappdir}/gitweb.conf" \
495 GITWEB_PROJECTROOT="/var/lib/git" \
496 GITWEB_CSS="/gitweb/gitweb.css" \
497 GITWEB_LOGO="/gitweb/git-logo.png" \
498 GITWEB_FAVICON="/gitweb/git-favicon.png" \
499 V=1
500
501%{__make} -C contrib/subtree
502
503%if %{with gnome_keyring}
504%{__make} -C contrib/credential/gnome-keyring
505%endif
506
507%if %{with doc}
508%{__make} -C Documentation \
509 MAN_BASE_URL=file://%{_docdir}/%{name}-doc-%{version}/ \
510 V=1
511%endif
512
513%if %{with tests}
514%if %{without tests_cvs}
515%{__rm} t/t*cvs*.sh || :
516%endif
517%{!?with_tests_svn:GIT_SKIP_TESTS='t91??'} %{__make} test
518%endif
519
520%install
521rm -rf $RPM_BUILD_ROOT
522install -d $RPM_BUILD_ROOT{%{_includedir}/%{name}/xdiff,%{_localstatedir}/lib/git}
523install -d $RPM_BUILD_ROOT{%{appdir},%{cgibindir},%{webappdir}}
524install -d $RPM_BUILD_ROOT/etc/{sysconfig/rc-inetd,rc.d/init.d}
525install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
526cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/git-core/gitconfig
527[init]
528 templatedir = %{_sysconfdir}/%{name}/templates
529EOF
530
531%{__make} install \
532 INSTALLDIRS=vendor \
533 DESTDIR=$RPM_BUILD_ROOT
534
535%if %{with doc}
536%{__make} -C Documentation install \
537 DESTDIR=$RPM_BUILD_ROOT
538%endif
539
540# copy templates except sample hooks
541cp -a $RPM_BUILD_ROOT%{_datadir}/%{name}/templates $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
542%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/templates/hooks/*.sample
543
544# header files and lib
545cp -p *.h $RPM_BUILD_ROOT%{_includedir}/%{name}
546cp -a compat $RPM_BUILD_ROOT%{_includedir}/%{name}
547cp -p xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff
548install -d $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
549cp -p block-sha1/sha1.h $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
550cp -p libgit.a $RPM_BUILD_ROOT%{_libdir}
551cp -p xdiff/lib.a $RPM_BUILD_ROOT%{_libdir}/libgit_xdiff.a
552cp -p {Makefile,config.mak,config.mak.autogen,config.mak.uname} $RPM_BUILD_ROOT%{_includedir}/%{name}
553
554%{__make} -C contrib/subtree install \
555 libexecdir=%{gitcoredir} \
556 DESTDIR=$RPM_BUILD_ROOT
557
558%if %{with doc}
559%{__make} -C contrib/subtree install-man \
560 DESTDIR=$RPM_BUILD_ROOT
561%endif
562
563%if %{with gnome_keyring}
564install -p contrib/credential/gnome-keyring/git-credential-gnome-keyring $RPM_BUILD_ROOT%{gitcoredir}
565%endif
566
567# bash completion
568install -d $RPM_BUILD_ROOT%{bash_compdir}
569cp -p contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{bash_compdir}/git
570
571# Install git-prompt.sh
572install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
573cp -p contrib/completion/git-prompt.sh $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
574
575# Install bzr and hg remote helpers from contrib
576install -p contrib/remote-helpers/git-remote-{bzr,hg} $RPM_BUILD_ROOT%{gitcoredir}
577
578# gitweb
579mv $RPM_BUILD_ROOT{%{appdir},%{cgibindir}}/gitweb.cgi
580ln -s %{cgibindir}/gitweb.cgi $RPM_BUILD_ROOT%{appdir}/gitweb.cgi
581cp -p %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf
582cp -p %{SOURCE7} $RPM_BUILD_ROOT%{webappdir}/gitolite.pl
583cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf
584cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
585cp -p %{SOURCE3} $RPM_BUILD_ROOT%{webappdir}/lighttpd.conf
586
587# gitview
588install -p contrib/gitview/gitview $RPM_BUILD_ROOT%{_bindir}
589
590# git-daemon related files
591cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/git-daemon
592cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
593install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
594
595# paths cleanup
596sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
597sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
598
599# same file, link
600ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-receive-pack
601ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-upload-archive
602ln -sf ../..%{gitcoredir}/git-shell $RPM_BUILD_ROOT%{_bindir}/git-shell
603ln -sf ../..%{gitcoredir}/git-upload-pack $RPM_BUILD_ROOT%{_bindir}/git-upload-pack
604ln -sf ../..%{gitcoredir}/git $RPM_BUILD_ROOT%{_bindir}/git
605
606# convert all hardlinks to symlinks, as rpm fails to calculate it properly
607# requiring excessive free space when it may not be available
608# https://bugs.launchpad.net/pld-linux/+bug/1176337
609find $RPM_BUILD_ROOT%{gitcoredir} -samefile $RPM_BUILD_ROOT%{gitcoredir}/git > files
610for f in $(cat files); do
611 f=${f#$RPM_BUILD_ROOT%{gitcoredir}/}
612 test $f = git && continue
613 ln -snf git $RPM_BUILD_ROOT%{gitcoredir}/$f
614done
615
616# few others
617ln -snf git-gui $RPM_BUILD_ROOT%{gitcoredir}/git-citool
618ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-https
619ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftp
620ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftps
621
622# remove unneeded files
623%{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
624%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Git/.packlist
625%py_postclean
626
627mv $RPM_BUILD_ROOT%{_localedir}/pt{_PT,}
628%find_lang git
629
630%clean
631rm -rf $RPM_BUILD_ROOT
632
633%post daemon-inetd
634%service -q rc-inetd reload
635
636%postun daemon-inetd
637if [ "$1" = "0" ]; then
638 %service -q rc-inetd reload
639fi
640
641%post daemon-standalone
642/sbin/chkconfig --add git-daemon
643%service git-daemon restart "git-daemon"
644
645%preun daemon-standalone
646if [ "$1" = "0" ]; then
647 %service git-daemon stop
648 /sbin/chkconfig --del git-daemon
649fi
650
651%triggerin gitweb -- apache1 < 1.3.37-3, apache1-base
652%webapp_register apache %{webapp}
653
654%triggerun gitweb -- apache1 < 1.3.37-3, apache1-base
655%webapp_unregister apache %{webapp}
656
657%triggerin gitweb -- apache < 2.2.0, apache-base
658%webapp_register httpd %{webapp}
659
660%triggerun gitweb -- apache < 2.2.0, apache-base
661%webapp_unregister httpd %{webapp}
662
663%triggerin gitweb -- lighttpd
664%webapp_register lighttpd %{webapp}
665
666%triggerun gitweb -- lighttpd
667%webapp_unregister lighttpd %{webapp}
668
669%files -f git.lang
670%defattr(644,root,root,755)
671%doc README.md contrib-doc
672%attr(755,root,root) %{_bindir}/git
673%attr(755,root,root) %{_bindir}/git-receive-pack
674%attr(755,root,root) %{_bindir}/git-shell
675%attr(755,root,root) %{_bindir}/git-upload-archive
676%attr(755,root,root) %{_bindir}/git-upload-pack
677%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}
678
679%if %{with doc}
680%{_mandir}/man1/git-*.1*
681%exclude %{_mandir}/man1/git-archimport.1*
682%exclude %{_mandir}/man1/git-svn.1*
683%exclude %{_mandir}/man1/git-cvs*.1*
684%exclude %{_mandir}/man1/git-imap-send*.1*
685%exclude %{_mandir}/man1/*email*.1*
686%{_mandir}/man1/git.1*
687%{_mandir}/man1/gitremote-helpers.1*
688%{_mandir}/man5/gitattributes.5*
689%{_mandir}/man5/githooks.5*
690%{_mandir}/man5/gitignore.5*
691%{_mandir}/man5/gitmodules.5*
692%{_mandir}/man5/gitrepository-layout.5*
693%{_mandir}/man7/gitcli.7*
694%{_mandir}/man7/gitcore-tutorial.7*
695%{_mandir}/man7/gitcredentials.7*
696%{_mandir}/man7/gitdiffcore.7*
697%{_mandir}/man7/giteveryday.7*
698%{_mandir}/man7/gitglossary.7*
699%{_mandir}/man7/gitnamespaces.7*
700%{_mandir}/man7/gitrevisions.7*
701%{_mandir}/man7/gittutorial-2.7*
702%{_mandir}/man7/gittutorial.7*
703%{_mandir}/man7/gitworkflows.7*
704%endif
705
706%dir %{gitcoredir}
707%attr(755,root,root) %{gitcoredir}/*-*
708%attr(755,root,root) %{gitcoredir}/git
709%dir %{gitcoredir}/mergetools
710%{gitcoredir}/mergetools/*
711
712%{_datadir}/%{name}
713%{_localstatedir}/lib/git
714
715# subpackages
716%exclude %{gitcoredir}/*email*
717%exclude %{gitcoredir}/*p4*
718%exclude %{gitcoredir}/git-archimport
719%exclude %{gitcoredir}/git-cvs*
720%exclude %{gitcoredir}/git-gui
721%exclude %{gitcoredir}/git-imap-send
722%exclude %{gitcoredir}/git-instaweb
723%exclude %{gitcoredir}/git-remote-bzr
724%exclude %{gitcoredir}/git-remote-hg
725%exclude %{gitcoredir}/git-remote-testsvn
726%exclude %{gitcoredir}/git-svn
727%exclude %{gitcoredir}/mergetools/p4merge
728%if %{with gnome_keyring}
729%exclude %{gitcoredir}/git-credential-gnome-keyring
730%endif
731
732%if %{with doc}
733%files doc
734%defattr(644,root,root,755)
735%doc Documentation/RelNotes*
736%doc Documentation/*.html Documentation/howto Documentation/technical
737%endif
738
739%files daemon-inetd
740%defattr(644,root,root,755)
741%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/git-daemon
742
743%files daemon-standalone
744%defattr(644,root,root,755)
745%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/git-daemon
746%attr(754,root, root) /etc/rc.d/init.d/git-daemon
747
748%files devel
749%defattr(644,root,root,755)
750%{_includedir}/%{name}
751%{_libdir}/libgit.a
752%{_libdir}/libgit_xdiff.a
753
754%files gitk
755%defattr(644,root,root,755)
756%if %{with doc}
757%{_mandir}/man1/gitk.1*
758%endif
759%attr(755,root,root) %{_bindir}/gitk
760%dir %{_datadir}/gitk
761%dir %{_datadir}/gitk/lib
762%dir %{_datadir}/gitk/lib/msgs
763%lang(bg) %{_datadir}/gitk/lib/msgs/bg.msg
764%lang(ca) %{_datadir}/gitk/lib/msgs/ca.msg
765%lang(de) %{_datadir}/gitk/lib/msgs/de.msg
766%lang(es) %{_datadir}/gitk/lib/msgs/es.msg
767%lang(fr) %{_datadir}/gitk/lib/msgs/fr.msg
768%lang(hu) %{_datadir}/gitk/lib/msgs/hu.msg
769%lang(it) %{_datadir}/gitk/lib/msgs/it.msg
770%lang(ja) %{_datadir}/gitk/lib/msgs/ja.msg
771%lang(pt_BR) %{_datadir}/gitk/lib/msgs/pt_br.msg
772%lang(ru) %{_datadir}/gitk/lib/msgs/ru.msg
773%lang(sv) %{_datadir}/gitk/lib/msgs/sv.msg
774%lang(vi) %{_datadir}/gitk/lib/msgs/vi.msg
775
776%files gitweb
777%defattr(644,root,root,755)
778%doc gitweb/{README,INSTALL}
779%dir %{webappdir}
780%config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/apache.conf
781%config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/httpd.conf
782%config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/lighttpd.conf
783%config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitweb.conf
784%config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitolite.pl
785%attr(755,root,root) %{cgibindir}/gitweb.cgi
786%{appdir}
787%attr(755,root,root) %{gitcoredir}/git-instaweb
788%if %{with doc}
789%{_mandir}/man1/gitweb.1*
790%{_mandir}/man5/gitweb.conf.5*
791%endif
792
793%files gitview
794%defattr(644,root,root,755)
795%doc contrib/gitview/gitview.txt
796%attr(755,root,root) %{_bindir}/gitview
797
798%files gui
799%defattr(644,root,root,755)
800%attr(755,root,root) %{gitcoredir}/git-gui
801%dir %{_datadir}/git-gui
802%dir %{_datadir}/git-gui/lib
803%dir %{_datadir}/git-gui/lib/msgs
804%{_datadir}/git-gui/lib/git-gui.ico
805%{_datadir}/git-gui/lib/tclIndex
806%{_datadir}/git-gui/lib/*.js
807%{_datadir}/git-gui/lib/*.tcl
808%lang(bg) %{_datadir}/git-gui/lib/msgs/bg.msg
809%lang(de) %{_datadir}/git-gui/lib/msgs/de.msg
810%lang(el) %{_datadir}/git-gui/lib/msgs/el.msg
811%lang(fr) %{_datadir}/git-gui/lib/msgs/fr.msg
812%lang(hu) %{_datadir}/git-gui/lib/msgs/hu.msg
813%lang(it) %{_datadir}/git-gui/lib/msgs/it.msg
814%lang(ja) %{_datadir}/git-gui/lib/msgs/ja.msg
815%lang(nb) %{_datadir}/git-gui/lib/msgs/nb.msg
816%lang(pt_br) %{_datadir}/git-gui/lib/msgs/pt_br.msg
817%lang(ru) %{_datadir}/git-gui/lib/msgs/ru.msg
818%lang(sv) %{_datadir}/git-gui/lib/msgs/sv.msg
819%lang(vi) %{_datadir}/git-gui/lib/msgs/vi.msg
820%lang(zh_CN) %{_datadir}/git-gui/lib/msgs/zh_cn.msg
821
822%files arch
823%defattr(644,root,root,755)
824%attr(755,root,root) %{gitcoredir}/git-archimport
825%if %{with doc}
826%{_mandir}/man1/git-archimport.1*
827%endif
828
829%files bzr
830%defattr(644,root,root,755)
831%attr(755,root,root) %{gitcoredir}/git-remote-bzr
832
833%files cvs
834%defattr(644,root,root,755)
835%attr(755,root,root) %{_bindir}/git-cvsserver
836%attr(755,root,root) %{gitcoredir}/git-cvs*
837%if %{with doc}
838%{_mandir}/man1/git-cvs*.1*
839%{_mandir}/man7/gitcvs-migration.7*
840%endif
841
842%files hg
843%defattr(644,root,root,755)
844%attr(755,root,root) %{gitcoredir}/git-remote-hg
845
846%files p4
847%defattr(644,root,root,755)
848%attr(755,root,root) %{gitcoredir}/git-p4
849%attr(755,root,root) %{gitcoredir}/mergetools/p4merge
850
851%files svn
852%defattr(644,root,root,755)
853%attr(755,root,root) %{gitcoredir}/git-svn
854%attr(755,root,root) %{gitcoredir}/git-remote-testsvn
855%{perl_vendorlib}/Git/SVN
856%{perl_vendorlib}/Git/SVN.pm
857%if %{with doc}
858%{_mandir}/man1/git-svn.1*
859%endif
860
861%files email
862%defattr(644,root,root,755)
863%attr(755,root,root) %{gitcoredir}/git-imap-send
864%attr(755,root,root) %{gitcoredir}/*email*
865%if %{with doc}
866%{_mandir}/man1/*email*.1*
867%{_mandir}/man1/*imap-send*.1*
868%endif
869
870%files -n bash-completion-git
871%defattr(644,root,root,755)
872%{bash_compdir}/git
873
874%files -n perl-Git
875%defattr(644,root,root,755)
876%{perl_vendorlib}/Git.pm
877%dir %{perl_vendorlib}/Git
878%{perl_vendorlib}/Git/I18N.pm
879%{perl_vendorlib}/Git/IndexInfo.pm
880%{_mandir}/man3/Git*.3pm*
881
882%if %{with gnome_keyring}
883%files -n gnome-keyring-git-core
884%defattr(644,root,root,755)
885%attr(755,root,root) %{gitcoredir}/git-credential-gnome-keyring
886%endif
This page took 0.037859 seconds and 4 git commands to generate.