]> git.pld-linux.org Git - packages/git-core.git/blob - git-core.spec
convert hardlinks to symlinks
[packages/git-core.git] / git-core.spec
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
13 Summary:        Distributed version control system focused on speed, effectivity and usability
14 Summary(pl.UTF-8):      Rozproszony system śledzenia treści skupiony na szybkości, wydajności i użyteczności
15 Name:           git-core
16 Version:        2.8.0
17 Release:        2
18 License:        GPL v2
19 Group:          Development/Tools
20 Source0:        http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
21 # Source0-md5:  01477f0b97ccab20b986f2808f4d7a97
22 Source1:        %{name}-gitweb.conf
23 Source2:        %{name}-gitweb-httpd.conf
24 Source3:        %{name}-gitweb-lighttpd.conf
25 Source4:        %{name}.sysconfig
26 Source5:        %{name}.inet
27 Source6:        %{name}.init
28 Source7:        gitolite.pl
29 Patch0:         %{name}-tests.patch
30 Patch1:         %{name}-key-bindings.patch
31 Patch2:         %{name}-sysconfdir.patch
32 Patch3:         cherry-picked-commitlog.patch
33 Patch4:         %{name}-svn-exit-errors.patch
34 URL:            http://git-scm.com/
35 BuildRequires:  autoconf >= 2.59
36 BuildRequires:  automake
37 BuildRequires:  curl-devel
38 BuildRequires:  expat-devel
39 BuildRequires:  gettext-tools
40 %if %{with gnome_keyring}
41 BuildRequires:  libgnome-keyring-devel
42 BuildRequires:  pkgconfig
43 %endif
44 BuildRequires:  openssl-devel
45 %{?with_pcre:BuildRequires:     pcre-devel}
46 BuildRequires:  perl-Error > 0.15
47 BuildRequires:  perl-base
48 BuildRequires:  python-devel
49 BuildRequires:  rpm-perlprov >= 4.1-13
50 BuildRequires:  rpm-pythonprov
51 BuildRequires:  rpmbuild(macros) >= 1.673
52 BuildRequires:  tcl
53 BuildRequires:  zlib-devel
54 %if %{with doc}
55 BuildRequires:  asciidoc >= 7.1.2-3
56 BuildRequires:  docbook-dtd45-xml
57 BuildRequires:  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
62 BuildRequires:  cvs-gnu-client < 1.13
63 BuildRequires:  cvs-gnu-client >= 1.12
64 %endif
65 %if %{with tests_svn}
66 BuildRequires:  perl-subversion
67 BuildRequires:  subversion
68 %endif
69 Conflicts:      pdksh < 5.2.14-46
70 %endif
71 # git-sh-setup: sane_grep
72 Requires:       grep
73 # git-pull: printf
74 Requires:       coreutils
75 Requires:       openssh-clients
76 Requires:       perl-Error
77 Requires:       perl-Git = %{version}-%{release}
78 Requires:       sed
79 Suggests:       git-core-bzr
80 Suggests:       git-core-cvs
81 Suggests:       git-core-hg
82 Suggests:       git-core-p4
83 Suggests:       git-core-svn
84 Suggests:       less
85 Suggests:       rsync
86 Obsoletes:      python-Git
87 BuildRoot:      %{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
111 This is a stupid (but extremely fast) directory content manager. It
112 doesn't do a whole lot, but what it 'does' do is track directory
113 contents 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
128 Jest to prymitywny (ale bardzo szybki) zarządca treści słownikowej.
129 Nie robi wiele, ale to, co "robi", to wydajne śledzenie zawartości
130 katalogu.
131
132 %package doc
133 Summary:        Documentation for git-core
134 Summary(pl.UTF-8):      Dokumentacja do git-core
135 Group:          Documentation
136 %if "%{_rpmversion}" >= "5"
137 BuildArch:      noarch
138 %endif
139
140 %description doc
141 Documentation for git-core.
142
143 %description doc -l pl.UTF-8
144 Dokumentacja do git-core.
145
146 %package daemon-inetd
147 Summary:        Files necessary to run git-daemon as an inetd service
148 Summary(pl.UTF-8):      Pliki niezbędne do uruchomienia git-daemona w trybie usługi inetd
149 Group:          Networking/Daemons
150 Requires:       %{name} = %{version}-%{release}
151 Requires:       setup >= 2.4.11-1
152 Provides:       git-core-daemon
153 Obsoletes:      git-core-daemon
154 Obsoletes:      git-core-daemon-standalone
155 %if "%{_rpmversion}" >= "5"
156 BuildArch:      noarch
157 %endif
158
159 %description daemon-inetd
160 Git-daemon is a really simple TCP git daemon that can serve git
161 repositories. This package provides all necessarry files to run
162 git-daemon as an inetd service.
163
164 %description daemon-inetd -l pl.UTF-8
165 Git-daemon to prosty demon git korzystający z protokołu TCP do
166 udostępniania repozytoriów git. Ten pakiet dostarcza pliki potrzebne
167 do uruchomienia git-demona w trybie usługi inetd.
168
169 %package daemon-standalone
170 Summary:        Files necessary to run git-daemon as a standalone service
171 Summary(pl.UTF-8):      Pliki niezbędne do uruchomienia git-daemona w trybie usługi samodzielnej
172 Group:          Networking/Daemons
173 Requires:       %{name} = %{version}-%{release}
174 Provides:       git-core-daemon
175 Obsoletes:      git-core-daemon
176 Obsoletes:      git-core-daemon-inetd
177 %if "%{_rpmversion}" >= "5"
178 BuildArch:      noarch
179 %endif
180
181 %description daemon-standalone
182 Git-daemon is a really simple TCP git daemon that can serve git
183 repositories. This package provides all necessarry files to run
184 git-daemon as an standalone service.
185
186 %description daemon-standalone -l pl.UTF-8
187 Git-daemon to prosty demon git korzystający z protokołu TCP do
188 udostępniania repozytoriów git. Ten pakiet dostarcza pliki potrzebne
189 do uruchomienia git-daemona w trybie usługi samodzielnej.
190
191 %package devel
192 Summary:        Git library with header files
193 Summary(pl.UTF-8):      Biblioteka Gita oraz pliki nagłówkowe
194 Group:          Development/Libraries
195 Requires:       zlib-devel
196
197 %description devel
198 Git library with header files.
199
200 %description devel -l pl.UTF-8
201 Biblioteka Gita oraz pliki nagłówkowe.
202
203 %package gitk
204 Summary:        Tcl/Tk interface to the Git version control system
205 Summary(pl.UTF-8):      Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
206 Group:          Development/Tools
207 Requires:       %{name} = %{version}-%{release}
208 Requires:       tk
209 %if "%{_rpmversion}" >= "5"
210 BuildArch:      noarch
211 %endif
212
213 %description gitk
214 gitk displays changes in a repository or a selected set of commits.
215 This includes visualizing the commit graph, showing information
216 related to each commit, and the files in the trees of each revision.
217
218 Historically, gitk was the first repository browser. It's written in
219 Tcl/Tk and started off in a separate repository but was later merged
220 into the main git repository.
221
222 %description gitk -l pl.UTF-8
223 gitk wyświetla zmiany w repozytorium lub wybranym zbiorze commitów.
224 Oznacza to wizualizację grafu commitów, wyświetlanie informacji
225 związanych z każdym z commitów oraz listę plików dla każdej rewizji.
226
227 Z historycznego punktu widzenia gitk był pierwszą przeglądarką
228 repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany w
229 osobnym repozytorium, ale z czasem został włączony do głównego
230 repozytorium gita.
231
232 %package gitweb
233 Summary:        Web frontend to git
234 Summary(pl.UTF-8):      Frontend WWW do gita
235 Group:          Development/Tools
236 Requires:       %{name} = %{version}-%{release}
237 Requires:       webapps
238 Requires:       webserver(access)
239 Requires:       webserver(alias)
240 Requires:       webserver(cgi)
241 Suggests:       webserver(setenv)
242 %if "%{_rpmversion}" >= "5"
243 BuildArch:      noarch
244 %endif
245
246 %description gitweb
247 This package provides a web interface for browsing git repositories.
248
249 %description gitweb -l pl.UTF-8
250 Pakiet ten dostarcza interfejs WWW do przeglądania repozytoriów gita.
251
252 %package gitview
253 Summary:        A GTK+ based repository browser for git
254 Summary(pl.UTF-8):      Oparta na GTK+ przeglądarka repozytorium gita
255 Group:          Development/Tools
256 Requires:       %{name} = %{version}-%{release}
257 Requires:       python >= 1:2.4
258 Requires:       python-pycairo >= 1.0
259 Requires:       python-pygobject
260 Requires:       python-pygtk-gtk >= 2:2.8
261 Suggests:       python-gnome-desktop-gtksourceview
262 %if "%{_rpmversion}" >= "5"
263 BuildArch:      noarch
264 %endif
265
266 %description gitview
267 A GTK+ based repository browser for git.
268
269 %description gitview -l pl.UTF-8
270 Oparta na GTK+ przeglądarka repozytorium gita.
271
272 %package gui
273 Summary:        Tcl/Tk interface to the Git version control system
274 Summary(pl.UTF-8):      Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
275 Group:          Development/Tools
276 Requires:       %{name} = %{version}-%{release}
277 Requires:       tk
278 Requires:       xdg-utils
279 Suggests:       meld
280 %if "%{_rpmversion}" >= "5"
281 BuildArch:      noarch
282 %endif
283
284 %description gui
285 Displays changes in a repository or a selected set of commits. This
286 includes visualizing the commit graph, showing information related to
287 each commit, and the files in the trees of each revision.
288
289 Historically, gitk was the first repository browser. It's written in
290 Tcl/Tk and started off in a separate repository but was later merged
291 into the main git repository.
292
293 %description gui -l pl.UTF-8
294 Wyświetla zmiany w repozytorium lub wybranym zbiorze commitów. Oznacza
295 to wizualizację grafu commitów, wyświetlanie informacji związanych z
296 każdym z commitów oraz listę plików dla każdej rewizji.
297
298 Z punktu widzenia historii, gitk był pierwszą przeglądarką
299 repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany w
300 osobnym repozytorium, ale z czasem został włączony do głównego
301 repozytorium gita.
302
303 %package arch
304 Summary:        Git tools for importing Arch repositories
305 Summary(pl.UTF-8):      Narzędzia Gita do importowania repozytoriów Archa
306 Group:          Development/Tools
307 Requires:       %{name} = %{version}-%{release}
308 Requires:       tla
309 %if "%{_rpmversion}" >= "5"
310 BuildArch:      noarch
311 %endif
312
313 %description arch
314 Git tools for importing Arch repositories.
315
316 %description arch -l pl.UTF-8
317 Narzędzia Gita do importowania repozytoriów Archa.
318
319 %package bzr
320 Summary:        Git tools for working with bzr repositories
321 Summary(pl.UTF-8):      Narzędzia Gita do pracy z repozytoriami bzr
322 Group:          Development/Tools
323 Requires:       %{name} = %{version}-%{release}
324 Requires:       bzr
325 %if "%{_rpmversion}" >= "5"
326 BuildArch:      noarch
327 %endif
328
329 %description bzr
330 Git tools for working with bzr repositories.
331
332 %description bzr -l pl.UTF-8
333 Narzędzia Gita do pracy z repozytoriami bzr.
334
335 %package cvs
336 Summary:        CVS support for Git
337 Summary(pl.UTF-8):      Obsługa CVS dla Gita
338 Group:          Development/Tools
339 Requires:       %{name} = %{version}-%{release}
340 Requires:       cvsps >= 2.1-2
341 Requires:       rcs
342 %if "%{_rpmversion}" >= "5"
343 BuildArch:      noarch
344 %endif
345
346 %description cvs
347 CVS support for Git.
348
349 %description cvs -l pl.UTF-8
350 Obsługa CVS dla Gita.
351
352 %package hg
353 Summary:        Git tools for working with mercurial repositories
354 Summary(pl.UTF-8):      Narzędzia Gita do pracy z repozytoriami mercuriala
355 Group:          Development/Tools
356 Requires:       %{name} = %{version}-%{release}
357 Requires:       mercurial >= 1.8
358 %if "%{_rpmversion}" >= "5"
359 BuildArch:      noarch
360 %endif
361
362 %description hg
363 Git tools for working with mercurial repositories.
364
365 %description hg -l pl.UTF-8
366 Narzędzia Gita do pracy z repozytoriami mercuriala.
367
368 %package p4
369 Summary:        Git tools for working with Perforce depots
370 Summary(pl.UTF-8):      Narzędzia Gita do pracy z magazynami Perforce'a
371 Group:          Development/Tools
372 Requires:       %{name} = %{version}-%{release}
373 %if "%{_rpmversion}" >= "5"
374 BuildArch:      noarch
375 %endif
376
377 %description p4
378 Git tools for working with Perforce depots.
379
380 %description p4 -l pl.UTF-8
381 Narzędzia Gita do pracy z magazynami Perforce'a.
382
383 %package svn
384 Summary:        Subversion support for Git
385 Summary(pl.UTF-8):      Obsługa Subversion dla Gita
386 Group:          Development/Tools
387 Requires:       %{name} = %{version}-%{release}
388 Requires:       perl-Encode
389 Requires:       perl-Term-ReadKey
390
391 %description svn
392 Subversion support for Git.
393
394 %description svn -l pl.UTF-8
395 Obsługa Subversion dla Gita.
396
397 %package email
398 Summary:        Git tools for sending email
399 Summary(pl.UTF-8):      Narzędzia Gita do wysyłania poczty
400 Group:          Development/Tools
401 Requires:       %{name} = %{version}-%{release}
402
403 %description email
404 Git tools for sending email.
405
406 %description email -l pl.UTF-8
407 Narzędzia Gita do wysyłania poczty.
408
409 %package -n bash-completion-git
410 Summary:        bash-completion for git
411 Summary(pl.UTF-8):      bashowe uzupełnianie nazw dla gita
412 Group:          Applications/Shells
413 Requires:       %{name} = %{version}-%{release}
414 Requires:       bash-completion >= 2.0
415 %if "%{_rpmversion}" >= "5"
416 BuildArch:      noarch
417 %endif
418
419 %description -n bash-completion-git
420 This package provides bash-completion for git.
421
422 %description -n bash-completion-git -l pl.UTF-8
423 Pakiet ten dostarcza bashowe uzupełnianie nazw dla gita.
424
425 %package -n perl-Git
426 Summary:        Perl interface to the Git version control system
427 Summary(pl.UTF-8):      Perlowy interfejs do systemu kontroli wersji Git
428 Group:          Development/Languages/Perl
429 Obsoletes:      perl-git-core
430
431 %description -n perl-Git
432 This module provides Perl scripts easy way to interface the Git
433 version control system. The modules have an easy and well-tested way
434 to call arbitrary Git commands; in the future, the interface will also
435 provide specialized methods for doing easily operations which are not
436 totally trivial to do over the generic command interface.
437
438 %description -n perl-Git -l pl.UTF-8
439 Ten moduł umożliwia skryptom Perla współpracę z systemem kontroli
440 wersji Git. W łatwy i dobrze przetestowany sposób pozwala wywoływać
441 dowolne polecenia Gita; w przyszłości interfejs udostępni także
442 specjalne metody do łatwego wykonywania operacji nietrywialnych do
443 wykonania przy użyciu ogólnego interfejsu poleceń.
444
445 %package -n gnome-keyring-git-core
446 Summary:        GNOME Keyring authentication provider for Git
447 Summary(pl.UTF-8):      Moduł uwierzytelniający GNOME Keyring dla Git
448 Group:          X11/Applications
449 URL:            http://git-scm.com/docs/gitcredentials.html
450 Requires:       %{name} = %{version}-%{release}
451
452 %description -n gnome-keyring-git-core
453 Authentication provider module for Git which allows git client to
454 authenticate using GNOME Keyring.
455
456 You need to register it with:
457 - git config --global credential.helper gnome-keyring
458
459 %description -n gnome-keyring-git-core -l pl.UTF-8
460 Moduł uwierzytelniający dla Subversion pozwalający klientom git
461 uwierzytelniać się przy użyciu mechanizmu GNOME Keyring.
462
463 Moduł trzeba zarejestrować poleceniem:
464 - git config --global credential.helper gnome-keyring
465
466 %prep
467 %setup -q -n git-%{version}
468 %patch0 -p1
469 %patch1 -p0
470 %patch2 -p1
471 %patch3 -p1
472 %patch4 -p1
473
474 %{__rm} {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore
475
476 # we build things in contrib but want to have it clean for doc purporses, too
477 cp -a contrib contrib-doc
478
479 %build
480 %{__aclocal}
481 %{__autoconf}
482 %configure \
483         --sysconfdir=%{_sysconfdir}/git-core \
484         %{?with_pcre:--with-libpcre} \
485         --with-openssl
486
487 echo "BLK_SHA1=1" >> config.mak
488
489 %{__make} \
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" \
495         GITWEB_FAVICON="/gitweb/git-favicon.png" \
496         V=1
497
498 %{__make} -C contrib/subtree
499
500 %if %{with gnome_keyring}
501 %{__make} -C contrib/credential/gnome-keyring
502 %endif
503
504 %if %{with doc}
505 %{__make} -C Documentation \
506         MAN_BASE_URL=file://%{_docdir}/%{name}-doc-%{version}/ \
507         V=1
508 %endif
509
510 %if %{with tests}
511 %if %{without tests_cvs}
512 %{__rm} t/t*cvs*.sh || :
513 %endif
514 %{!?with_tests_svn:GIT_SKIP_TESTS='t91??'} %{__make} test
515 %endif
516
517 %install
518 rm -rf $RPM_BUILD_ROOT
519 install -d $RPM_BUILD_ROOT{%{_includedir}/%{name}/xdiff,%{_localstatedir}/lib/git}
520 install -d $RPM_BUILD_ROOT{%{appdir},%{cgibindir},%{webappdir}}
521 install -d $RPM_BUILD_ROOT/etc/{sysconfig/rc-inetd,rc.d/init.d}
522 install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
523 cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/git-core/gitconfig
524 [init]
525         templatedir = %{_sysconfdir}/%{name}/templates
526 EOF
527
528 %{__make} install \
529         INSTALLDIRS=vendor \
530         DESTDIR=$RPM_BUILD_ROOT
531
532 %if %{with doc}
533 %{__make} -C Documentation install \
534         DESTDIR=$RPM_BUILD_ROOT
535 %endif
536
537 # copy templates except sample hooks
538 cp -a $RPM_BUILD_ROOT%{_datadir}/%{name}/templates $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
539 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/templates/hooks/*.sample
540
541 # header files and lib
542 cp -p *.h $RPM_BUILD_ROOT%{_includedir}/%{name}
543 cp -a compat $RPM_BUILD_ROOT%{_includedir}/%{name}
544 cp -p xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff
545 install -d $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
546 cp -p block-sha1/sha1.h $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
547 cp -p libgit.a $RPM_BUILD_ROOT%{_libdir}
548 cp -p xdiff/lib.a $RPM_BUILD_ROOT%{_libdir}/libgit_xdiff.a
549 cp -p {Makefile,config.mak,config.mak.autogen,config.mak.uname} $RPM_BUILD_ROOT%{_includedir}/%{name}
550
551 %{__make} -C contrib/subtree install \
552         libexecdir=%{gitcoredir} \
553         DESTDIR=$RPM_BUILD_ROOT
554
555 %if %{with doc}
556 %{__make} -C contrib/subtree install-man \
557         DESTDIR=$RPM_BUILD_ROOT
558 %endif
559
560 %if %{with gnome_keyring}
561 install -p contrib/credential/gnome-keyring/git-credential-gnome-keyring $RPM_BUILD_ROOT%{gitcoredir}
562 %endif
563
564 # bash completion
565 install -d $RPM_BUILD_ROOT%{bash_compdir}
566 cp -p contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{bash_compdir}/git
567
568 # Install git-prompt.sh
569 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
570 cp -p contrib/completion/git-prompt.sh $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
571
572 # Install bzr and hg remote helpers from contrib
573 install -p contrib/remote-helpers/git-remote-{bzr,hg} $RPM_BUILD_ROOT%{gitcoredir}
574
575 # gitweb
576 mv $RPM_BUILD_ROOT{%{appdir},%{cgibindir}}/gitweb.cgi
577 ln -s %{cgibindir}/gitweb.cgi $RPM_BUILD_ROOT%{appdir}/gitweb.cgi
578 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf
579 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{webappdir}/gitolite.pl
580 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf
581 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
582 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{webappdir}/lighttpd.conf
583
584 # gitview
585 install -p contrib/gitview/gitview $RPM_BUILD_ROOT%{_bindir}
586
587 # git-daemon related files
588 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/git-daemon
589 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
590 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
591
592 # paths cleanup
593 sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
594 sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
595
596 # same file, link
597 ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-receive-pack
598 ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-upload-archive
599 ln -sf ../../%{gitcoredir}/git-shell $RPM_BUILD_ROOT%{_bindir}/git-shell
600 ln -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
605 find $RPM_BUILD_ROOT%{gitcoredir} -samefile $RPM_BUILD_ROOT%{gitcoredir}/git > files
606 for 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
610 done
611
612 # few others
613 ln -snf git-gui $RPM_BUILD_ROOT%{gitcoredir}/git-citool
614 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-https
615 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftp
616 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftps
617
618 # remove unneeded files
619 %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
620 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Git/.packlist
621 %py_postclean
622
623 mv $RPM_BUILD_ROOT%{_localedir}/pt{_PT,}
624 %find_lang git
625
626 %clean
627 rm -rf $RPM_BUILD_ROOT
628
629 %post daemon-inetd
630 %service -q rc-inetd reload
631
632 %postun daemon-inetd
633 if [ "$1" = "0" ]; then
634         %service -q rc-inetd reload
635 fi
636
637 %post daemon-standalone
638 /sbin/chkconfig --add git-daemon
639 %service git-daemon restart "git-daemon"
640
641 %preun daemon-standalone
642 if [ "$1" = "0" ]; then
643         %service git-daemon stop
644         /sbin/chkconfig --del git-daemon
645 fi
646
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
653 %triggerin gitweb -- apache < 2.2.0, apache-base
654 %webapp_register httpd %{webapp}
655
656 %triggerun gitweb -- apache < 2.2.0, apache-base
657 %webapp_unregister httpd %{webapp}
658
659 %triggerin gitweb -- lighttpd
660 %webapp_register lighttpd %{webapp}
661
662 %triggerun gitweb -- lighttpd
663 %webapp_unregister lighttpd %{webapp}
664
665 %files -f git.lang
666 %defattr(644,root,root,755)
667 %doc README.md contrib-doc
668 %attr(755,root,root) %{_bindir}/git
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
673 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}
674
675 %if %{with doc}
676 %{_mandir}/man1/git-*.1*
677 %exclude %{_mandir}/man1/git-archimport.1*
678 %exclude %{_mandir}/man1/git-svn.1*
679 %exclude %{_mandir}/man1/git-cvs*.1*
680 %exclude %{_mandir}/man1/git-imap-send*.1*
681 %exclude %{_mandir}/man1/*email*.1*
682 %{_mandir}/man1/git.1*
683 %{_mandir}/man1/gitremote-helpers.1*
684 %{_mandir}/man5/gitattributes.5*
685 %{_mandir}/man5/githooks.5*
686 %{_mandir}/man5/gitignore.5*
687 %{_mandir}/man5/gitmodules.5*
688 %{_mandir}/man5/gitrepository-layout.5*
689 %{_mandir}/man7/gitcli.7*
690 %{_mandir}/man7/gitcore-tutorial.7*
691 %{_mandir}/man7/gitcredentials.7*
692 %{_mandir}/man7/gitdiffcore.7*
693 %{_mandir}/man7/giteveryday.7*
694 %{_mandir}/man7/gitglossary.7*
695 %{_mandir}/man7/gitnamespaces.7*
696 %{_mandir}/man7/gitrevisions.7*
697 %{_mandir}/man7/gittutorial-2.7*
698 %{_mandir}/man7/gittutorial.7*
699 %{_mandir}/man7/gitworkflows.7*
700 %endif
701
702 %dir %{gitcoredir}
703 %attr(755,root,root) %{gitcoredir}/*-*
704 %attr(755,root,root) %{gitcoredir}/git
705 %dir %{gitcoredir}/mergetools
706 %{gitcoredir}/mergetools/*
707
708 %{_datadir}/%{name}
709 %{_localstatedir}/lib/git
710
711 # subpackages
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
724 %if %{with gnome_keyring}
725 %exclude %{gitcoredir}/git-credential-gnome-keyring
726 %endif
727
728 %if %{with doc}
729 %files doc
730 %defattr(644,root,root,755)
731 %doc Documentation/RelNotes*
732 %doc Documentation/*.html Documentation/howto Documentation/technical
733 %endif
734
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
744 %files devel
745 %defattr(644,root,root,755)
746 %{_includedir}/%{name}
747 %{_libdir}/libgit.a
748 %{_libdir}/libgit_xdiff.a
749
750 %files gitk
751 %defattr(644,root,root,755)
752 %if %{with doc}
753 %{_mandir}/man1/gitk.1*
754 %endif
755 %attr(755,root,root) %{_bindir}/gitk
756 %dir %{_datadir}/gitk
757 %dir %{_datadir}/gitk/lib
758 %dir %{_datadir}/gitk/lib/msgs
759 %lang(bg) %{_datadir}/gitk/lib/msgs/bg.msg
760 %lang(ca) %{_datadir}/gitk/lib/msgs/ca.msg
761 %lang(de) %{_datadir}/gitk/lib/msgs/de.msg
762 %lang(es) %{_datadir}/gitk/lib/msgs/es.msg
763 %lang(fr) %{_datadir}/gitk/lib/msgs/fr.msg
764 %lang(hu) %{_datadir}/gitk/lib/msgs/hu.msg
765 %lang(it) %{_datadir}/gitk/lib/msgs/it.msg
766 %lang(ja) %{_datadir}/gitk/lib/msgs/ja.msg
767 %lang(pt_BR) %{_datadir}/gitk/lib/msgs/pt_br.msg
768 %lang(ru) %{_datadir}/gitk/lib/msgs/ru.msg
769 %lang(sv) %{_datadir}/gitk/lib/msgs/sv.msg
770 %lang(vi) %{_datadir}/gitk/lib/msgs/vi.msg
771
772 %files gitweb
773 %defattr(644,root,root,755)
774 %doc gitweb/{README,INSTALL}
775 %dir %{webappdir}
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
778 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/lighttpd.conf
779 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitweb.conf
780 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitolite.pl
781 %attr(755,root,root) %{cgibindir}/gitweb.cgi
782 %{appdir}
783 %attr(755,root,root) %{gitcoredir}/git-instaweb
784 %if %{with doc}
785 %{_mandir}/man1/gitweb.1*
786 %{_mandir}/man5/gitweb.conf.5*
787 %endif
788
789 %files gitview
790 %defattr(644,root,root,755)
791 %doc contrib/gitview/gitview.txt
792 %attr(755,root,root) %{_bindir}/gitview
793
794 %files gui
795 %defattr(644,root,root,755)
796 %attr(755,root,root) %{gitcoredir}/git-gui
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
804 %lang(bg) %{_datadir}/git-gui/lib/msgs/bg.msg
805 %lang(de) %{_datadir}/git-gui/lib/msgs/de.msg
806 %lang(el) %{_datadir}/git-gui/lib/msgs/el.msg
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
811 %lang(nb) %{_datadir}/git-gui/lib/msgs/nb.msg
812 %lang(pt_br) %{_datadir}/git-gui/lib/msgs/pt_br.msg
813 %lang(ru) %{_datadir}/git-gui/lib/msgs/ru.msg
814 %lang(sv) %{_datadir}/git-gui/lib/msgs/sv.msg
815 %lang(vi) %{_datadir}/git-gui/lib/msgs/vi.msg
816 %lang(zh_CN) %{_datadir}/git-gui/lib/msgs/zh_cn.msg
817
818 %files arch
819 %defattr(644,root,root,755)
820 %attr(755,root,root) %{gitcoredir}/git-archimport
821 %if %{with doc}
822 %{_mandir}/man1/git-archimport.1*
823 %endif
824
825 %files bzr
826 %defattr(644,root,root,755)
827 %attr(755,root,root) %{gitcoredir}/git-remote-bzr
828
829 %files cvs
830 %defattr(644,root,root,755)
831 %attr(755,root,root) %{_bindir}/git-cvsserver
832 %attr(755,root,root) %{gitcoredir}/git-cvs*
833 %if %{with doc}
834 %{_mandir}/man1/git-cvs*.1*
835 %{_mandir}/man7/gitcvs-migration.7*
836 %endif
837
838 %files hg
839 %defattr(644,root,root,755)
840 %attr(755,root,root) %{gitcoredir}/git-remote-hg
841
842 %files p4
843 %defattr(644,root,root,755)
844 %attr(755,root,root) %{gitcoredir}/git-p4
845 %attr(755,root,root) %{gitcoredir}/mergetools/p4merge
846
847 %files svn
848 %defattr(644,root,root,755)
849 %attr(755,root,root) %{gitcoredir}/git-svn
850 %attr(755,root,root) %{gitcoredir}/git-remote-testsvn
851 %{perl_vendorlib}/Git/SVN
852 %{perl_vendorlib}/Git/SVN.pm
853 %if %{with doc}
854 %{_mandir}/man1/git-svn.1*
855 %endif
856
857 %files email
858 %defattr(644,root,root,755)
859 %attr(755,root,root) %{gitcoredir}/git-imap-send
860 %attr(755,root,root) %{gitcoredir}/*email*
861 %if %{with doc}
862 %{_mandir}/man1/*email*.1*
863 %{_mandir}/man1/*imap-send*.1*
864 %endif
865
866 %files -n bash-completion-git
867 %defattr(644,root,root,755)
868 %{bash_compdir}/git
869
870 %files -n perl-Git
871 %defattr(644,root,root,755)
872 %{perl_vendorlib}/Git.pm
873 %dir %{perl_vendorlib}/Git
874 %{perl_vendorlib}/Git/I18N.pm
875 %{perl_vendorlib}/Git/IndexInfo.pm
876 %{_mandir}/man3/Git*.3pm*
877
878 %if %{with gnome_keyring}
879 %files -n gnome-keyring-git-core
880 %defattr(644,root,root,755)
881 %attr(755,root,root) %{gitcoredir}/git-credential-gnome-keyring
882 %endif
This page took 0.102159 seconds and 4 git commands to generate.