]> git.pld-linux.org Git - packages/git-core.git/blob - git-core.spec
- add doc bcond
[packages/git-core.git] / git-core.spec
1
2 # Conditional build:
3 %bcond_without  tests   # don't perform make test
4 %bcond_without  doc     # skip building/packaging docs/manuals (takes some time)
5 #
6 %include        /usr/lib/rpm/macros.perl
7 Summary:        The stupid content tracker
8 Summary(pl.UTF-8):      Prymitywne narzędzie do śledzenia treści
9 Name:           git-core
10 Version:        1.5.3.5
11 Release:        1
12 License:        GPL v2
13 Group:          Development/Tools
14 Source0:        http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.bz2
15 # Source0-md5:  3fdff0bdb3638fce1c4bc6795ed81fb3
16 Source1:        %{name}-gitweb.conf
17 Source2:        %{name}-gitweb-httpd.conf
18 URL:            http://git.or.cz/
19 BuildRequires:  autoconf
20 BuildRequires:  automake
21 BuildRequires:  curl-devel
22 BuildRequires:  expat-devel
23 BuildRequires:  openssl-devel
24 BuildRequires:  perl-Error
25 BuildRequires:  perl-base
26 BuildRequires:  python
27 BuildRequires:  rpm-perlprov >= 4.1-13
28 BuildRequires:  rpmbuild(macros) >= 1.264
29 BuildRequires:  zlib-devel
30 %if %{with doc}
31 BuildRequires:  asciidoc >= 7.1.2-3
32 BuildRequires:  xmlto
33 %endif
34 %if %{with tests}
35 BuildRequires:  cvs
36 BuildRequires:  pdksh >= 5.2.14-46
37 %endif
38 Requires:       coreutils
39 Requires:       cpio
40 Requires:       curl
41 Requires:       diffutils
42 Requires:       findutils
43 Requires:       grep
44 Requires:       openssh-clients
45 Requires:       perl-Error
46 Requires:       rcs
47 Requires:       sed
48 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49
50 # html docs have links to txt files
51 %define         _noautocompressdoc      *.txt
52
53 %define         webapp          gitweb
54 %define         webappdir       %{_sysconfdir}/webapps/%{webapp}
55 %define         appdir          %{_datadir}/%{webapp}
56 %define         cgibindir       %{_prefix}/lib/cgi-bin
57
58 %description
59 "git" can mean anything, depending on your mood.
60
61  - random three-letter combination that is pronounceable, and not
62    actually used by any common UNIX command. The fact that it is a
63    mispronunciation of "get" may or may not be relevant.
64  - stupid. contemptible and despicable. simple. Take your pick from the
65    dictionary of slang.
66  - "global information tracker": you're in a good mood, and it actually
67    works for you. Angels sing, and a light suddenly fills the room.
68  - "goddamn idiotic truckload of sh*t": when it breaks
69
70 This is a stupid (but extremely fast) directory content manager. It
71 doesn't do a whole lot, but what it 'does' do is track directory
72 contents efficiently.
73
74 %description -l pl.UTF-8
75 "git" może oznaczać cokolwiek, w zależności od nastroju.
76
77 - losową kombinację trzech liter, która jest wymawialna i
78   właściwie nie używana przez żadne popularne polecenie uniksowe.
79   Fakt, że jest to błędna pisownia słowa "get" może mieć lub nie
80   mieć znaczenia.
81 - głupi, pogardliwy, prosty. Można wybrać ze słownika slangu.
82 - "global information tracker" (narzędzie do globalnego śledzenia
83   informacji) - jeśli jesteśmy w dobrym nastroju i git akurat działa.
84   Anioły śpiewają, a światło niespodziewanie wypełnia pokój.
85 - "goddamn idiotic truckload of sh*t" (przeklęty idiotyczny ładunek
86   g*) - kiedy się zepsuje.
87
88 Jest to prymitywny (ale bardzo szybki) zarządca treści słownikowej.
89 Nie robi wiele, ale to, co "robi", to wydajne śledzenie zawartości
90 katalogu.
91
92 %package devel
93 Summary:        Header files for git-core
94 Summary(pl.UTF-8):      Pliki nagłówkowe dla git-core
95 Group:          Development/Libraries
96
97 %description devel
98 Header files for git-core.
99
100 %description devel -l pl.UTF-8
101 Pliki nagłówkowe dla git-core.
102
103 %package gitk
104 Summary:        Tcl/Tk interface to the Git version control system
105 Summary(pl.UTF-8):      Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
106 Group:          Development/Tools
107 Requires:       %{name} = %{version}-%{release}
108 Requires:       tk
109
110 %description gitk
111 Displays changes in a repository or a selected set of commits. This
112 includes visualizing the commit graph, showing information related to
113 each commit, and the files in the trees of each revision.
114
115 Historically, gitk was the first repository browser. It's written in
116 Tcl/Tk and started off in a separate repository but was later merged
117 into the main git repository.
118
119 %description gitk -l pl.UTF-8
120 Wyświetla zmiany w repozytorium lub wybranym zbiorze commitów.
121 Oznacza to wizualizację grafu commitów, wyświetlanie informacji
122 związanych z każdym z commitów oraz listę plików dla każdej
123 rewizji.
124
125 Z punktu widzenia historii, gitk był pierwszą przeglądarką
126 repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany
127 w osobnym repozytorium, ale z czasem został włączony do głównego
128 repozytorium gita.
129
130 %package gitweb
131 Summary:        Web frontend to git
132 Summary(pl.UTF-8):      Webowy frontend do git
133 Group:          Development/Tools
134 Requires:       %{name} = %{version}-%{release}
135 Requires:       webapps
136
137 %description gitweb
138 This package provides a web interface for browsing git repositories.
139
140 %description gitweb -l pl.UTF-8
141 Pakiet ten dostarcza interfejs WWW do przeglądania repozytoriów gita.
142
143 %package gitview
144 Summary:        A GTK+ based repository browser for git
145 Summary(pl.UTF-8):      Oparta na GTK+ przeglądarka repozytorium gita
146 Group:          Development/Tools
147 Requires:       %{name} = %{version}-%{release}
148 #Requires:      pytongowe mambo dżambo
149
150 %description gitview
151 A GTK+ based repository browser for git.
152
153 %description gitview -l pl.UTF-8
154 Oparta na GTK+ przeglądarka repozytorium gita.
155
156 %package -n bash-completion-git
157 Summary:        bash-completion for git
158 Summary(pl.UTF-8):      bashowe uzupełnianie nazw dla gita
159 Group:          Applications/Shell
160 Requires:       bash-completion
161
162 %description -n bash-completion-git
163 This package provides bash-completion for git.
164
165 %description -n bash-completion-git -l pl.UTF-8
166 Pakiet ten dostarcza bashowe uzupełnianie nazw dla gita.
167
168 %package -n perl-Git
169 Summary:        Perl interface to the Git version control system
170 Summary(pl.UTF-8):      Perlowy interfejs do systemu kontroli wersji Git
171 Group:          Development/Languages/Perl
172 Requires:       %{name} = %{version}-%{release}
173 Obsoletes:      perl-git-core
174
175 %description -n perl-Git
176 This module provides Perl scripts easy way to interface the Git
177 version control system. The modules have an easy and well-tested way
178 to call arbitrary Git commands; in the future, the interface will also
179 provide specialized methods for doing easily operations which are not
180 totally trivial to do over the generic command interface.
181
182 %description -n perl-Git -l pl.UTF-8
183 Ten moduł umożliwia skryptom Perla współpracę z systemem kontroli
184 wersji Git. W łatwy i dobrze przetestowany sposób pozwala wywoływać
185 dowolne polecenia Gita; w przyszłości interfejs udostępni także
186 specjalne metody do łatwego wykonywania operacji nietrywialnych do
187 wykonania przy użyciu ogólnego interfejsu poleceń.
188
189 %package -n vim-syntax-gitcommit
190 Summary:        Vim syntax: gitcommit
191 Summary(pl.UTF-8):      Składnia dla Vima: gitcommit
192 Group:          Applications/Editors/Vim
193 # for _vimdatadir existence
194 Requires:       vim >= 4:6.3.058-3
195
196 %description -n vim-syntax-gitcommit
197 This plugin provides syntax highlighting for git's commit messages.
198
199 %description -n vim-syntax-gitcommit -l pl.UTF-8
200 Ta wtyczka dostarcza podświetlanie składni dla treści commitów gita.
201
202 %prep
203 %setup -q -n git-%{version}
204
205 %build
206 %{__aclocal}
207 %{__autoconf}
208 %configure \
209         --with-openssl
210
211 %{__make} \
212         INSTALLDIRS=vendor \
213         GITWEB_CONFIG="%{webappdir}/gitweb.conf" \
214         GITWEB_PROJECTROOT="/var/lib/git" \
215         GITWEB_CSS="/gitweb/gitweb.css" \
216         GITWEB_LOGO="/gitweb/git-logo.png" \
217         GITWEB_FAVICON="/gitweb/git-favicon.png"
218
219 %{?with_doc:%{__make} -C Documentation}
220
221 %{?with_tests:%{__make} test}
222
223 %install
224 rm -rf $RPM_BUILD_ROOT
225 install -d $RPM_BUILD_ROOT{%{_includedir}/%{name}/xdiff,%{_sharedstatedir}/git}
226 install -d $RPM_BUILD_ROOT{%{appdir},%{cgibindir},%{webappdir}}
227 install -d $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/syntax
228 install -d $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
229
230 %{__make} install \
231         INSTALLDIRS=vendor \
232         DESTDIR=$RPM_BUILD_ROOT
233
234 %if %{with doc}
235 %{__make} -C Documentation install \
236         DESTDIR=$RPM_BUILD_ROOT
237 %endif
238
239 # header files and lib
240 install *.h $RPM_BUILD_ROOT%{_includedir}/%{name}
241 install xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff
242 install libgit.a $RPM_BUILD_ROOT%{_libdir}
243
244 # bash completion
245 install contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
246
247 # vim syntax
248 install contrib/vim/syntax/gitcommit.vim $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles/syntax
249
250 # gitweb
251 install gitweb/*.css gitweb/*.png $RPM_BUILD_ROOT%{appdir}
252 install gitweb/gitweb.cgi $RPM_BUILD_ROOT%{cgibindir}
253 install %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf
254 install %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf
255 install %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
256
257 # gitview
258 install contrib/gitview/gitview $RPM_BUILD_ROOT%{_bindir}
259
260 # remove unneeded files
261 rm -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
262 rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Git/.packlist
263
264 %clean
265 rm -rf $RPM_BUILD_ROOT
266
267 %triggerin gitweb -- apache1 < 1.3.37-3, apache1-base
268 %webapp_register apache %{webapp}
269
270 %triggerun gitweb -- apache1 < 1.3.37-3, apache1-base
271 %webapp_unregister apache %{webapp}
272
273 %triggerin gitweb -- apache < 2.2.0, apache-base
274 %webapp_register httpd %{webapp}
275
276 %triggerun gitweb -- apache < 2.2.0, apache-base
277 %webapp_unregister httpd %{webapp}
278
279 %files
280 %defattr(644,root,root,755)
281 %doc README contrib
282 %if %{with doc}
283 %doc Documentation/{[!g]*,g[!i]*,git,git[!k]*}.html Documentation/howto Documentation/technical
284 %{_mandir}/man1/git-*.1*
285 %{_mandir}/man5/gitattributes.5*
286 %{_mandir}/man5/gitignore.5*
287 %{_mandir}/man5/gitmodules.5*
288 %{_mandir}/man7/git.7*
289 %endif
290 %attr(755,root,root) %{_bindir}/git
291 %attr(755,root,root) %{_bindir}/git-*
292 %{_datadir}/%{name}
293 %{_datadir}/git-gui
294 %{_sharedstatedir}/git
295
296 %files devel
297 %defattr(644,root,root,755)
298 %{_includedir}/*
299 %{_libdir}/*.a
300
301 %files gitk
302 %defattr(644,root,root,755)
303 %if %{with doc}
304 %doc Documentation/gitk.html
305 %{_mandir}/man1/gitk.1*
306 %endif
307 %attr(755,root,root) %{_bindir}/gitk
308
309 %files gitweb
310 %defattr(644,root,root,755)
311 %doc gitweb/{README,INSTALL}
312 %dir %{webappdir}
313 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitweb.conf
314 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/apache.conf
315 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/httpd.conf
316 %attr(755,root,root) %{cgibindir}/gitweb.cgi
317 %{appdir}
318
319 %files gitview
320 %defattr(644,root,root,755)
321 %doc contrib/gitview/gitview.txt
322 %attr(755,root,root) %{_bindir}/gitview
323
324 %files -n bash-completion-git
325 %defattr(644,root,root,755)
326 %{_sysconfdir}/bash_completion.d/*
327
328 %files -n perl-Git
329 %defattr(644,root,root,755)
330 %{perl_vendorlib}/Git.pm
331 %{_mandir}/man3/Git.3pm*
332
333 %files -n vim-syntax-gitcommit
334 %defattr(644,root,root,755)
335 %doc contrib/vim/README
336 %{_datadir}/vim/vimfiles/syntax/*
This page took 0.044425 seconds and 4 git commands to generate.