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