]> git.pld-linux.org Git - packages/rpm.git/blob - rpm.spec
- more xmms specific macros in rpm.macros (rev. 1.125)
[packages/rpm.git] / rpm.spec
1 #
2 # TODO:
3 # - learn find-perl-provides to use the __perl macro instead
4 #   of /usr/bin/perl
5 #   NOTE: there is no find-perl* now, only perl.{prov,req}
6 # - use system libmagic not internal libfmagic
7 #
8 # Conditional build:
9 # _without_static       - build shared /bin/rpm (doesn't work at the moment)
10 # _without_docs         - don't generate documentation with doxygen
11 # force_cc              - force using __cc other than "%{_target_cpu}-pld-linux-gcc"
12 # force_cxx             - force using __cxx other than "%{_target_cpu}-pld-linux-g++"
13 # force_cpp             - force using __cpp other than "%{_target_cpu}-pld-linux-gcc -E"
14 #
15 %include        /usr/lib/rpm/macros.python
16 %define snap    20030610
17 # versions of required libraries
18 %define reqdb_ver       4.1.25-1
19 %define reqpopt_ver     1.9
20 %define beecrypt_ver    3.0.0-0.20030610.1
21 %define rpm_macros_rev  1.125
22 Summary:        RPM Package Manager
23 Summary(de):    RPM Packet-Manager
24 Summary(es):    Gestor de paquetes RPM
25 Summary(pl):    Aplikacja do zarz±dzania pakietami RPM
26 Summary(pt_BR): Gerenciador de pacotes RPM
27 Summary(ru):    íÅÎÅÄÖÅÒ ÐÁËÅÔÏ× ÏÔ RPM
28 Summary(uk):    íÅÎÅÄÖÅÒ ÐÁËÅԦנצĠRPM
29 Name:           rpm
30 %define ver     4.3
31 Version:        %{ver}
32 %define rel     0.%{snap}.20.6
33 Release:        %{rel}
34 License:        GPL
35 Group:          Base
36 #Source0:       ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.2.x/%{name}-%{version}.%{snap}.tar.gz
37 Source0:        ftp://distfiles.pld-linux.org/src/%{name}-%{version}.%{snap}.tar.gz
38 # Source0-md5:  f923fe5ca8f0803868ae7bcc0fabe9bb
39 Source1:        %{name}.groups
40 Source2:        %{name}.platform
41 Source3:        %{name}-install-tree
42 Source4:        %{name}-find-rpm-provides
43 Source5:        %{name}-find-spec-bcond
44 Source6:        %{name}-find-lang
45 Source7:        %{name}-find-provides
46 Source8:        %{name}-find-requires
47 Source9:        %{name}-groups-po.awk
48 Source10:       %{name}-compress-doc
49 Source11:       %{name}-check-files
50 Source12:       %{name}-php-provides
51 Source13:       %{name}-php-requires
52 Source14:       %{name}.macros
53 Source15:       %{name}-find-provides-wrapper
54 Source16:       %{name}-find-requires-wrapper
55 Source30:       builder
56 Source31:       adapter.awk
57 Source32:       pldnotify.awk
58 Source33:       perl.prov
59 Patch0:         %{name}-pl.po.patch
60 Patch1:         %{name}-rpmrc.patch
61 Patch2:         %{name}-arch.patch
62 Patch3:         %{name}-rpmpopt.patch
63 Patch4:         %{name}-perl-macros.patch
64 Patch5:         %{name}-perl-req-perlfile.patch
65 Patch6:         %{name}-glob.patch
66 Patch7:         %{name}-noexpand.patch
67 Patch8:         %{name}-scripts-closefds.patch
68 Patch9:         %{name}-python-macros.patch
69 Patch10:        %{name}-gettext-in-header.patch
70 Patch11:        %{name}-compress-doc.patch
71 Patch12:        %{name}-gettext0.11.patch
72 Patch13:        %{name}-build.patch
73 Patch14:        %{name}-system_libs.patch
74 Patch15:        %{name}-bb-and-short-circuit.patch
75 Patch16:        %{name}-etc_dir.patch
76 Patch17:        %{name}-system_libs-more.patch
77 Patch18:        %{name}-php-deps.patch
78 Patch19:        %{name}-python-fix.patch
79 #Patch20:       %{name}-spec-prep-pre.patch
80 Patch21:        %{name}-perl_req.patch
81 Patch22:        %{name}-system_libs_more.patch
82 Patch23:        %{name}-python_2_3.patch
83 Patch24:        %{name}-no-bin-env.patch
84 Patch25:        %{name}-specflags.patch
85 Patch26:        %{name}-magic-usesystem.patch
86 Patch27:        %{name}-dontneedutils.patch
87 Patch28:        %{name}-python-beecrypt.patch
88 Patch29:        %{name}-man-typos.patch
89 Patch30:        %{name}-man-pl.patch
90 Patch31:        %{name}-fdClose-typo.patch
91 Patch32:        %{name}-userpmdepswrappers.patch
92 Patch33:        %{name}-provides-dont-obsolete.patch
93 Patch34:        %{name}-examplesaredoc.patch
94 URL:            http://www.rpm.org/
95 Icon:           rpm.gif
96 BuildRequires:  autoconf >= 2.52
97 BuildRequires:  automake
98 BuildRequires:  beecrypt-devel >= %{beecrypt_ver}
99 BuildRequires:  bzip2-devel >= 1.0.1
100 BuildRequires:  db-devel >= %{reqdb_ver}
101 %{!?_without_docs:BuildRequires:        doxygen}
102 BuildRequires:  gettext-devel >= 0.11.4-2
103 BuildRequires:  elfutils-devel
104 #BuildRequires: libmagic-devel
105 BuildRequires:  libtool
106 BuildRequires:  patch >= 2.2
107 BuildRequires:  popt-devel >= %{reqpopt_ver}
108 BuildRequires:  python-devel >= 2.2
109 BuildRequires:  python-modules >= 2.2
110 BuildRequires:  rpm-perlprov
111 BuildRequires:  rpm-pythonprov
112 BuildRequires:  zlib-devel
113 %if %{!?_without_static:1}0
114 # Require static library only for static build
115 BuildRequires:  beecrypt-static >= %{beecrypt_ver}
116 BuildRequires:  bzip2-static >= 1.0.2-5
117 BuildRequires:  db-static >= %{reqdb_ver}
118 BuildRequires:  glibc-static >= 2.2.94
119 BuildRequires:  elfutils-static
120 #BuildRequires: libmagic-static
121 BuildRequires:  popt-static >= %{reqpopt_ver}
122 BuildRequires:  zlib-static
123 %endif
124 Requires:       popt >= %{reqpopt_ver}
125 Conflicts:      glibc < 2.2.92
126 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
127
128 %define         __find_provides %{SOURCE4}
129 %define         _binary_payload w9.gzdio
130 %define         _noPayloadPrefix 1
131
132 # don't require very fresh rpm.macros to build
133 %define         __gettextize gettextize --copy --force --intl ; cp -f po/Makevars{.template,}
134
135 # stabilize new build environment
136 %define         __cc %{?force_cc}%{!?force_cc:%{_target_cpu}-pld-linux-gcc}
137 %define         __cxx %{?force_cxx}%{!?force_cxx:%{_target_cpu}-pld-linux-g++}
138 %define         __cpp %{?force_cpp}%{!?force_cpp:%{_target_cpu}-pld-linux-gcc -E}
139
140 %description
141 RPM is a powerful package manager, which can be used to build,
142 install, query, verify, update, and uninstall individual software
143 packages. A package consists of an archive of files, and package
144 information, including name, version, and description.
145
146 %description -l de
147 RPM ist ein kräftiger Packet-Manager, der verwendet sein kann zur
148 Installation, Anfrage, Verifizierung, Aktualisierung und
149 Uninstallation individueller Softwarepakete. Ein Paket besteht aus
150 einem Archiv Dateien und Paketinformation, inklusive Name, Version und
151 Beschreibung.
152
153 %description -l es
154 RPM es un poderoso administrador de paquetes, que puede ser usado para
155 construir, instalar, pesquisar, verificar, actualizar y desinstalar
156 paquetes individuales de software. Un paquete consiste en un
157 almacenaje de archivos, y información sobre el paquete, incluyendo
158 nombre, versión y descripción.
159
160 %description -l pl
161 RPM jest doskona³ym programem zarz±dzaj±cym pakietami. Umo¿liwia on
162 przebudowanie, instalacjê czy weryfikacjê dowolnego pakietu.
163 Informacje dotycz±ce ka¿dego pakietu, takie jak jego opis, lista
164 plików wchodz±cych w sk³ad pakietu, zale¿no¶ci od innych pakietów, s±
165 przechowywane w bazie danych i mo¿na je uzyskaæ za pomoc± opcji
166 odpytywania programu rpm.
167
168 %description -l pt_BR
169 RPM é um poderoso gerenciador de pacotes, que pode ser usado para
170 construir, instalar, pesquisar, verificar, atualizar e desinstalar
171 pacotes individuais de software. Um pacote consiste de um conjunto de
172 arquivos e informações adicionais, incluindo nome, versão e descrição
173 do pacote, permissões dos arquivos, etc.
174
175 %description -l ru
176 RPM - ÜÔÏ ÍÏÝÎÙÊ ÍÅÎÅÄÖÅÒ ÐÁËÅÔÏ×, ËÏÔÏÒÙÊ ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁΠÄÌÑ
177 ÓÏÚÄÁÎÉÑ, ÉÎÓÔÁÌÌÑÃÉÉ, ÚÁÐÒÏÓÏ× (query), ÐÒÏ×ÅÒËÉ, ÏÂÎÏ×ÌÅÎÉÑ É
178 ÕÄÁÌÅÎÉÑ ÐÒÏÇÒÁÍÍÎÙÈ ÐÁËÅÔÏ×. ðÁËÅÔ ÓÏÓÔÏÉÔ ÉÚ ÆÁÊÌÏ×ÏÇÏ ÁÒÈÉ×Á É
179 ÓÌÕÖÅÂÎÏÊ ÉÎÆÏÒÍÁÃÉÉ, ×ËÌÀÞÁÀÝÅÊ ÎÁÚ×ÁÎÉÅ, ×ÅÒÓÉÀ, ÏÐÉÓÁÎÉÅ É ÄÒÕÇÉÅ
180 ÄÁÎÎÙÅ Ï ÐÁËÅÔÅ.
181
182 %description -l uk
183 RPM - ÃÅ ÐÏÔÕÖÎÉÊ ÍÅÎÅÄÖÅÒ ÐÁËÅÔ¦×, ÝÏ ÍÏÖÅ ÂÕÔÉ ×ÉËÏÒÉÓÔÁÎÉÊ ÄÌÑ
184 ÓÔ×ÏÒÅÎÎÑ, ¦ÎÓÔÁÌÑæ§, ÚÁÐÉԦנ(query), ÐÅÒÅצÒËÉ, ÐÏÎÏ×ÌÅÎÎÑ ÔÁ
185 ×ÉÄÁÌÅÎÎÑ ÐÒÏÇÒÁÍÎÉÈ ÐÁËÅÔ¦×. ðÁËÅÔ ÓËÌÁÄÁ¤ÔØÓÑ Ú ÆÁÊÌÏ×ÏÇÏ ÁÒȦ×Õ ÔÁ
186 ÓÌÕÖÂÏ×ϧ ¦ÎÆÏÒÍÁæ§, ÝϠͦÓÔÉÔØ ÎÁÚ×Õ, ×ÅÒÓ¦À, ÏÐÉÓ ÔÁ ¦ÎÛÕ
187 ¦ÎÆÏÒÍÁæÀ ÐÒÏ ÐÁËÅÔ.
188
189 %package devel
190 Summary:        Header files for rpm libraries
191 Summary(de):    Header-Dateien für rpm Libraries
192 Summary(es):    Archivos de inclusión y bibliotecas para programas de manipulación de paquetes rpm
193 Summary(pl):    Pliki nag³ówkowe bibliotek rpm
194 Summary(pt_BR): Arquivos de inclusão e bibliotecas para programas de manipulação de pacotes RPM
195 Summary(ru):    èÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÉ ÄÌÑ ÐÒÏÇÒÁÍÍ, ÒÁÂÏÔÁÀÝÉÈ Ó rpm-ÐÁËÅÔÁÍÉ
196 Summary(uk):    èÅÄÅÒÉ ÔÁ Â¦Â̦ÏÔÅËÉ ÄÌÑ ÐÒÏÇÒÁÍ, ÝÏ ÐÒÁÃÀÀÔØ Ú ÐÁËÅÔÁÍÉ rpm
197 Group:          Development/Libraries
198 Requires:       %{name}-lib = %{version}
199 Requires:       beecrypt-devel >= %{beecrypt_ver}
200 Requires:       bzip2-devel
201 Requires:       db-devel
202 Requires:       elfutils-devel
203 Requires:       popt-devel >= %{reqpopt_ver}
204 Requires:       zlib-devel
205
206 %description devel
207 The RPM packaging system includes C libraries that make it easy to
208 manipulate RPM packages and databases. They are intended to ease the
209 creation of graphical package managers and other tools that need
210 intimate knowledge of RPM packages. This package contains header files
211 for these libraries.
212
213 %description devel -l de
214 Der RPM-Packensystem enthält eine C-Library, die macht es einfach
215 RPM-Pakete und Dateibanken zu manipulieren. Er eignet sich für
216 Vereinfachung des Schaffens grafischer Paket-Manager und anderer
217 Werkzeuge, die intime Kenntnis von RPM-Paketen brauchen.
218
219 %description devel -l es
220 El sistema de empaquetado RPM incluye una biblioteca C que vuelve
221 fácil la manipulación de paquetes y bases de datos RPM. Su objetivo es
222 facilitar la creación de administradores gráficos de paquetes y otras
223 herramientas que necesiten un conocimiento profundo de paquetes RPM.
224
225 %description devel -l pl
226 System RPM zawiera biblioteki C, które u³atwiaj± manipulowanie
227 pakietami RPM oraz bazami danych. W zamiarze ma to upro¶ciæ tworzenie
228 graficznych programów zarz±dzaj±cych pakietami oraz innych narzêdzi,
229 które wymagaj± szczegó³owej wiedzy na temat pakietów RPM. Ten pakiet
230 zawiera pliki nag³ówkowe wspomnianych bibliotek.
231
232 %description devel -l pt_BR
233 O sistema de empacotamento RPM inclui uma biblioteca C que torna fácil
234 a manipulação de pacotes e bases de dados RPM. Seu objetivo é
235 facilitar a criação de gerenciadores gráficos de pacotes e outras
236 ferramentas que precisem de conhecimento profundo de pacotes RPM.
237
238 %description devel -l ru
239 óÉÓÔÅÍÁ ÕÐÒÁ×ÌÅÎÉÑ ÐÁËÅÔÁÍÉ RPM ÓÏÄÅÒÖÉÔ ÂÉÂÌÉÏÔÅËÕ C, ËÏÔÏÒÁÑ
240 ÕÐÒÏÝÁÅÔ ÍÁÎÉÐÕÌÑÃÉÀ ÐÁËÅÔÁÍÉ RPM É ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÍÉ ÂÁÚÁÍÉ ÄÁÎÎÙÈ.
241 üÔÁ ÂÉÂÌÉÏÔÅËÁ ÐÒÅÄÎÁÚÎÁÞÅÎÁ ÄÌÑ ÏÂÌÅÇÞÅÎÉÑ ÓÏÚÄÁÎÉÑ ÇÒÁÆÉÞÅÓËÉÈ
242 ÐÁËÅÔÎÙÈ ÍÅÎÅÄÖÅÒÏ× É ÄÒÕÇÉÈ ÕÔÉÌÉÔ, ËÏÔÏÒÙÍ ÎÅÏÂÈÏÄÉÍÏ ÒÁÂÏÔÁÔØ Ó
243 ÐÁËÅÔÁÍÉ RPM.
244
245 %description devel -l uk
246 óÉÓÔÅÍÁ ËÅÒÕ×ÁÎÎÑ ÐÁËÅÔÁÍÉ RPM Í¦ÓÔÉÔؠ¦Â̦ÏÔÅËÕ C, ËÏÔÒÁ ÓÐÒÏÝÕ¤
247 ÒÏÂÏÔÕ Ú ÐÁËÅÔÁÍÉ RPM ÔÁ ×¦ÄÐÏצÄÎÉÍÉ ÂÁÚÁÍÉ ÄÁÎÉÈ. ãѠ¦Â̦ÏÔÅËÁ
248 ÐÒÉÚÎÁÞÅÎÁ ÄÌÑ ÐÏÌÅÇÛÅÎÎÑ ÓÔ×ÏÒÅÎÎÑ ÇÒÁƦÞÎÉÈ ÐÁËÅÔÎÉÈ ÍÅÎÅÄÖÅҦנÔÁ
249 ¦ÎÛÉÈ ÕÔÉ̦Ô, ÝÏ ÐÒÁÃÀÀÔØ Ú ÐÁËÅÔÁÍÉ RPM.
250
251 %package static
252 Summary:        RPM static libraries
253 Summary(de):    RPMs statische Libraries
254 Summary(pl):    Biblioteki statyczne RPM-a
255 Summary(pt_BR): Bibliotecas estáticas para o desenvolvimento de aplicações RPM
256 Summary(ru):    óÔÁÔÉÞÅÓËÁÑ ÂÉÂÌÉÏÔÅËÁ ÄÌÑ ÐÒÏÇÒÁÍÍ, ÒÁÂÏÔÁÀÝÉÈ Ó rpm-ÐÁËÅÔÁÍÉ
257 Summary(uk):    óÔÁÔÉÞÎÁ Â¦Â̦ÏÔÅËÁ ÄÌÑ ÐÒÏÇÒÁÍ, ÝÏ ÐÒÁÃÀÀÔØ Ú ÐÁËÅÔÁÍÉ rpm
258 Group:          Development/Libraries
259 Requires:       %{name}-devel = %{version}
260 Requires:       beecrypt-static >= %{beecrypt_ver}
261 Requires:       bzip2-static
262 Requires:       db-static
263 Requires:       elfutils-static
264 Requires:       popt-static >= %{reqpopt_ver}
265 Requires:       zlib-static
266
267 %description static
268 RPM static libraries.
269
270 %description static -l de
271 RPMs statische Libraries.
272
273 %description static -l pl
274 Biblioteki statyczne RPM-a.
275
276 %description static -l pt_BR
277 Bibliotecas estáticas para desenvolvimento.
278
279 %description static -l ru
280 óÉÓÔÅÍÁ ÕÐÒÁ×ÌÅÎÉÑ ÐÁËÅÔÁÍÉ RPM ÓÏÄÅÒÖÉÔ ÂÉÂÌÉÏÔÅËÕ C, ËÏÔÏÒÁÑ
281 ÕÐÒÏÝÁÅÔ ÍÁÎÉÐÕÌÑÃÉÀ ÐÁËÅÔÁÍÉ RPM É ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÍÉ ÂÁÚÁÍÉ ÄÁÎÎÙÈ.
282 üÔÏ ÓÔÁÔÉÞÅÓËÁÑ ÂÉÂÌÉÏÔÅËÁ RPM.
283
284 %description static -l uk
285 óÉÓÔÅÍÁ ËÅÒÕ×ÁÎÎÑ ÐÁËÅÔÁÍÉ RPM Í¦ÓÔÉÔؠ¦Â̦ÏÔÅËÕ C, ËÏÔÒÁ ÓÐÒÏÝÕ¤
286 ÒÏÂÏÔÕ Ú ÐÁËÅÔÁÍÉ RPM ÔÁ ×¦ÄÐÏצÄÎÉÍÉ ÂÁÚÁÍÉ ÄÁÎÉÈ. ãÅ ÓÔÁÔÉÞÎÁ
287 ¦Â̦ÏÔÅËÁ RPM.
288
289 %package utils
290 Summary:        Additional utilities for managing rpm packages and database
291 Summary(de):    Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
292 Summary(pl):    Dodatkowe narzêdzia do zarz±dzania baz± RPM-a i pakietami
293 Group:          Applications/File
294 Requires:       %{name} = %{version}
295 Requires:       popt >= %{reqpopt_ver}
296
297 %description utils
298 Additional utilities for managing rpm packages and database.
299
300 %description utils -l de
301 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
302
303 %description utils -l pl
304 Dodatkowe narzêdzia do zarz±dzania baz± RPM-a i pakietami.
305
306 %package utils-perl
307 Summary:        Additional utilities for managing rpm packages and database
308 Summary(de):    Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
309 Summary(pl):    Dodatkowe narzêdzia do zarz±dzania baz± RPM-a i pakietami
310 Group:          Applications/File
311 Requires:       %{name} = %{version}
312 Requires:       %{name}-utils = %{version}
313 Requires:       popt >= %{reqpopt_ver}
314
315 %description utils-perl
316 Additional utilities for managing rpm packages and database.
317
318 %description utils-perl -l de
319 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
320
321 %description utils-perl -l pl
322 Dodatkowe narzêdzia do zarz±dzania baz± RPM-a i pakietami.
323
324
325 %package utils-static
326 Summary:        Static rpm utilities
327 Summary(pl):    Statyczne narzêdzia rpm
328 Group:          Applications/System
329 Requires:       %{name} = %{version}
330
331 %description utils-static
332 Static rpm utilities for repairing system in case something with
333 shared libraries used by rpm become broken. Currently it contains rpmi
334 binary, which can be used to install/upgrade/remove packages without
335 using shared libraries (well, in fact with exception of NSS modules).
336
337 %description utils-static -l pl
338 Statyczne narzêdzia rpm do naprawy systemu w przypadku zepsucia czego¶
339 zwi±zanego z bibliotekami wspó³dzielonymi u¿ywanymi przez rpm-a.
340 Aktualnie pakiet zawiera binarkê rpmi, któr± mo¿na u¿yæ do instalacji,
341 uaktualniania lub usuwania pakietów bez udzia³u bibliotek statycznych
342 (z wyj±tkiem modu³ów NSS).
343
344 %package perlprov
345 Summary:        Additional utilities for checking perl provides/requires in rpm packages
346 Summary(de):    Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen
347 Summary(pl):    Dodatkowe narzêdzia do sprawdzenia zale¿no¶ci skryptów perla w pakietach rpm
348 Group:          Applications/File
349 Requires:       %{name} = %{version}
350 Requires:       perl-devel
351 Requires:       perl-modules
352
353 %description perlprov
354 Additional utilities for checking perl provides/requires in rpm
355 packages.
356
357 %description perlprov -l de
358 Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen.
359
360 %description perlprov -l pl
361 Dodatkowe narzêdzia do sprawdzenia zale¿no¶ci skryptów perla w
362 pakietach rpm.
363
364 %package pythonprov
365 Summary:        Python macros, which simplifies creation of rpm packages with Python software
366 Summary(pl):    Makra u³atwiaj±ce tworzenie pakietów rpm z programami napisanymi w Pythonie
367 Group:          Applications/File
368 Requires:       %{name} = %{version}
369 Requires:       python-modules
370
371 %description pythonprov
372 Python macros, which simplifies creation of rpm packages with Python
373 software.
374
375 %description pythonprov -l pl
376 Makra u³atwiaj±ce tworzenie pakietów rpm z programami napisanymi w
377 Pythonie.
378
379 %package php-pearprov
380 Summary:        Additional utilities for managing rpm packages and database
381 Summary(pl):    Dodatkowe narzêdzia do sprawdzania zale¿no¶ci skryptów php w rpm
382 Group:          Applications/File
383 Requires:       %{name} = %{version}
384
385 %description php-pearprov
386 Additional utilities for checking php pear provides/requires in rpm
387 packages.
388
389 %description php-pearprov -l pl
390 Dodatkowe narzêdzia do sprawdzenia zale¿no¶ci skryptów php pear w
391 pakietach rpm.
392
393 %package -n python-rpm
394 Summary:        Python interface to RPM library
395 Summary(pl):    Pythonowy interfejs do biblioteki RPM-a
396 Summary(pt_BR): Módulo Python para aplicativos que manipulam pacotes RPM
397 Group:          Development/Languages/Python
398 Requires:       %{name} = %{version}
399 %pyrequires_eq  python
400 Obsoletes:      rpm-python
401
402 %description -n python-rpm
403 The rpm-python package contains a module which permits applications
404 written in the Python programming language to use the interface
405 supplied by RPM (RPM Package Manager) libraries.
406
407 This package should be installed if you want to develop Python
408 programs that will manipulate RPM packages and databases.
409
410 %description -n python-rpm -l pl
411 Pakiet rpm-python zawiera modu³, który pozwala aplikacjom napisanym w
412 Pythonie na u¿ywanie interfejsu dostarczanego przez biblioteki RPM-a.
413
414 Pakiet ten powinien zostaæ zainstalowany, je¶li chcesz pisaæ w
415 Pythonie programy manipuluj±ce pakietami i bazami danych rpm.
416
417 %description -n python-rpm -l pt_BR
418 O pacote rpm-python contém um módulo que permite que aplicações
419 escritas em Python utilizem a interface fornecida pelas bibliotecas
420 RPM (RPM Package Manager).
421
422 Esse pacote deve ser instalado se você quiser desenvolver programas em
423 Python para manipular pacotes e bancos de dados RPM.
424
425 %package lib
426 Summary:        RPMs library
427 Summary(pl):    Biblioteki RPM-a
428 Group:          Libraries
429 Requires:       db >= %{reqdb_ver}
430 Requires:       popt >= %{reqpopt_ver}
431
432 %description lib
433 RPMs library.
434
435 %description lib -l pl
436 Biblioteki RPM-a.
437
438 %package build
439 Summary:        Scripts for building binary RPM packages
440 Summary(de):    Scripts fürs Bauen binärer RPM-Pakete
441 Summary(pl):    Skrypty pomocnicze do budowania binarnych RPM-ów
442 Summary(pt_BR): Scripts e programas executáveis usados para construir pacotes
443 Summary(ru):    óËÒÉÐÔÙ É ÕÔÉÌÉÔÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÓÂÏÒËÉ ÐÁËÅÔÏ×
444 Summary(uk):    óËÒÉÐÔÉ ÔÁ ÕÔÉ̦ÔÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÏÂÕÄÏ×É ÐÁËÅÔ¦×
445 Group:          Applications/File
446 Requires(pre):  findutils
447 Requires:       %{name} = %{version}
448 Requires:       %{name}-utils = %{version}
449 Requires:       /bin/id
450 Requires:       awk
451 Requires:       binutils
452 Requires:       diffutils
453 Requires:       file >= 4.01
454 Requires:       fileutils
455 Requires:       findutils
456 %ifarch athlon
457 Requires:       gcc >= 3.0.3
458 %else
459 Requires:       gcc
460 %endif
461 Requires:       glibc-devel
462 Requires:       grep
463 Requires:       gzip
464 Requires:       make
465 Requires:       patch
466 Requires:       popt >= 1.7
467 Requires:       sed
468 Requires:       sh-utils
469 Requires:       tar
470 Requires:       textutils
471 Provides:       rpmbuild(macros) = %{rpm_macros_rev}
472
473 %description build
474 Scripts for building binary RPM packages.
475
476 %description build -l de
477 Scripts fürs Bauen binärer RPM-Pakete.
478
479 %description build -l pl
480 Skrypty pomocnicze do budowania binarnych RPM-ów.
481
482 %description build -l pt_BR
483 Este pacote contém scripts e programas executáveis que são usados para
484 construir pacotes usando o RPM.
485
486 %description build -l ru
487 òÁÚÌÉÞÎÙÅ ×ÓÐÏÍÏÇÁÔÅÌØÎÙÅ ÓËÒÉÐÔÙ É ÉÓÐÏÌÎÑÅÍÙÅ ÐÒÏÇÒÁÍÍÙ, ËÏÔÏÒÙÅ
488 ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ÓÂÏÒËÉ RPM'Ï×.
489
490 %description build -l uk
491 ò¦ÚÎÏÍÁΦÔΦ ÄÏÐÏͦÖΦ ÓËÒÉÐÔÉ ÔÁ ÕÔÉ̦ÔÉ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØÓÑ ÄÌÑ
492 ÐÏÂÕÄÏ×É RPM'¦×.
493
494 %package build-tools
495 Summary:        Scripts for managing .spec files and building RPM packages
496 Summary(de):    Scripts fürs Bauen binärer RPM-Pakete
497 Summary(pl):    Skrypty pomocnicze do zarz±dznia plikami .spec i budowania RPM-ów
498 Summary(pt_BR): Scripts e programas executáveis usados para construir pacotes
499 Summary(ru):    óËÒÉÐÔÙ É ÕÔÉÌÉÔÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÓÂÏÒËÉ ÐÁËÅÔÏ×
500 Summary(uk):    óËÒÉÐÔÉ ÔÁ ÕÔÉ̦ÔÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÏÂÕÄÏ×É ÐÁËÅÔ¦×
501 Group:          Applications/File
502 Requires:       %{name}-build = %{version}
503 # these are optional
504 #Requires:      cvs
505 #Requires:      wget
506
507 %description build-tools
508 Scripts for managing .spec files and building RPM packages.
509
510 %description build-tools -l de
511 Scripts fürs Bauen RPM-Pakete.
512
513 %description build-tools -l pl
514 Skrypty pomocnicze do zarz±dzania plikami .spec i do budowania RPM-ów.
515
516 %description build-tools -l pt_BR
517 Este pacote contém scripts e programas executáveis que são usados para
518 construir pacotes usando o RPM.
519
520 %description build-tools -l ru
521 òÁÚÌÉÞÎÙÅ ×ÓÐÏÍÏÇÁÔÅÌØÎÙÅ ÓËÒÉÐÔÙ É ÉÓÐÏÌÎÑÅÍÙÅ ÐÒÏÇÒÁÍÍÙ, ËÏÔÏÒÙÅ
522 ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ÓÂÏÒËÉ RPM'Ï×.
523
524 %description build-tools -l uk
525 ò¦ÚÎÏÍÁΦÔΦ ÄÏÐÏͦÖΦ ÓËÒÉÐÔÉ ÔÁ ÕÔÉ̦ÔÉ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØÓÑ ÄÌÑ
526 ÐÏÂÕÄÏ×É RPM'¦×.
527
528 %prep
529 %setup -q
530 %patch0 -p1
531 %patch1 -p1
532 %patch2 -p1
533 %patch3 -p1
534 %patch4 -p1
535 %patch5 -p1
536 %patch6 -p1
537 %patch7 -p1
538 %patch8 -p1
539 %patch9 -p1
540 %patch10 -p1
541 %patch11 -p1
542 %patch12 -p1
543 %patch13 -p1
544 %patch14 -p1
545 %patch15 -p1
546 %patch16 -p1
547 %patch17 -p1
548 %patch18 -p1
549 %patch19 -p1
550 # patch20 -- look down
551 %patch21 -p1
552 %patch22 -p1
553 %patch23 -p1
554 %patch24 -p1
555
556 sed -e 's/^/@pld@/' %{SOURCE2} >>platform.in
557 cp -f platform.in macros.pld.in
558 echo '%%define  _perl_deps      1' > macros.perl
559 echo '# obsoleted file' > macros.python
560 echo '%%define  _php_deps       1' > macros.php
561 install %{SOURCE6} scripts/find-lang.sh
562 install %{SOURCE12} scripts/php.prov.in
563 install %{SOURCE13} scripts/php.req.in
564 install %{SOURCE33} scripts/perl.prov
565 cat %{SOURCE14} >> macros.in
566 # %patch20 -p1 -- merged into macros
567 %patch25 -p1
568 %patch26 -p1
569 %patch27 -p1
570 %patch28 -p1
571 %patch29 -p1
572 %patch30 -p1
573 %patch31 -p1
574 %patch32 -p1
575 %patch33 -p1
576 %patch34 -p1
577
578 cd scripts;
579 mv -f perl.req perl.req.in
580 mv -f perl.prov perl.prov.in
581 cd ..
582
583 chmod +x %{SOURCE4}
584 rm -rf zlib libelf db db3 popt rpmdb/db.h
585
586 # generate Group translations to *.po
587 awk -f %{SOURCE9} %{SOURCE1}
588
589 # update macros paths
590 for f in doc{,/ja,/pl}/rpm.8 doc{,/ja,/pl}/rpmbuild.8 ; do
591         sed -e 's@lib/rpm/redhat@lib/rpm/pld@g' $f > ${f}.tmp
592         mv -f ${f}.tmp $f
593 done
594
595 %build
596 cd file
597 rm -f missing
598 %{__libtoolize}
599 %{__aclocal}
600 %{__autoheader}
601 %{__autoconf}
602 %{__automake}
603 cd ..
604
605 rm -f missing
606 %{__libtoolize}
607 %{__gettextize}
608 %{__aclocal}
609 %{__autoheader}
610 %{__autoconf}
611 %{__automake}
612
613 # config.guess doesn't handle athlon, so we have to change it by hand.
614 # rpm checks for CPU type at runtime, but it looks better
615 sed -e 's|@host@|%{_target_cpu}-%{_target_vendor}-linux-gnu|'  \
616         -e 's|@host_cpu@|%{_target_cpu}|'  macros.in  > macros.tmp
617 mv -f macros.tmp macros.in
618
619 # pass CC and CXX too in case of building with some older configure macro
620 %configure \
621         CC="%{__cc}" CXX="%{__cxx}" CPP="%{__cpp}" \
622         --enable-shared \
623         --enable-static \
624         %{!?_without_docs:--with-apidocs} \
625         --with-python=auto \
626         --without-db
627
628 %{__make} \
629         %{?_without_static:rpm_LDFLAGS="\$(myLDFLAGS)"} \
630         myLDFLAGS="%{rpmldflags}"
631
632 %install
633 rm -rf $RPM_BUILD_ROOT
634 install -d $RPM_BUILD_ROOT/lib
635
636 %{__make} install \
637         DESTDIR=$RPM_BUILD_ROOT \
638         pkgbindir="%{_bindir}"
639
640 install macros.perl     $RPM_BUILD_ROOT%{_libdir}/rpm/macros.perl
641 install macros.python   $RPM_BUILD_ROOT%{_libdir}/rpm/macros.python
642 install macros.php      $RPM_BUILD_ROOT%{_libdir}/rpm/macros.php
643
644 install %{SOURCE1} doc/manual/groups
645 install %{SOURCE3} $RPM_BUILD_ROOT%{_libdir}/rpm/install-build-tree
646 install %{SOURCE4} $RPM_BUILD_ROOT%{_libdir}/rpm/find-rpm-provides
647 install %{SOURCE5} $RPM_BUILD_ROOT%{_libdir}/rpm/find-spec-bcond
648 # 2 following files - to be removed or changed to find-elf-*
649 # (to generate only ELF dependencies using objdump)???
650 install %{SOURCE7} $RPM_BUILD_ROOT%{_libdir}/rpm/find-provides
651 install %{SOURCE8} $RPM_BUILD_ROOT%{_libdir}/rpm/find-requires
652 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/rpm/compress-doc
653 install %{SOURCE11} $RPM_BUILD_ROOT%{_libdir}/rpm/check-files
654 install %{SOURCE15} $RPM_BUILD_ROOT%{_libdir}/rpm/find-provides-wrapper
655 install %{SOURCE16} $RPM_BUILD_ROOT%{_libdir}/rpm/find-requires-wrapper
656 install scripts/find-php*       $RPM_BUILD_ROOT%{_libdir}/rpm
657 install scripts/php.{prov,req}  $RPM_BUILD_ROOT%{_libdir}/rpm
658
659 install %{SOURCE30} $RPM_BUILD_ROOT%{_bindir}/builder
660 install %{SOURCE31} $RPM_BUILD_ROOT%{_bindir}/adapter.awk
661 install %{SOURCE32} $RPM_BUILD_ROOT%{_bindir}/pldnotify.awk
662
663 install rpmio/ugid.h $RPM_BUILD_ROOT%{_includedir}/rpm
664
665 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm
666 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros <<EOF
667 # customized rpm macros - global for host
668 #
669 #%%_install_langs pl_PL:en_US
670 %%distribution PLD
671 EOF
672
673 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles <<EOF
674 # global list of files (name regexps) which don't generate Provides
675 EOF
676 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov <<EOF
677 # global list of capabilities (regexps) not to be used in Provides
678 EOF
679 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles <<EOF
680 # global list of files (name regexps) which don't generate Requires
681 /usr/src/examples/.*
682 /usr/share/doc/.*
683 EOF
684 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq <<EOF
685 # global list of capabilities (regexps) not to be used in Requires
686 EOF
687 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep <<EOF
688 # global list of capabilities (SONAME, perl(module), php(module) regexps)
689 # which don't generate dependencies on package NAMES
690 libGL.so.1
691 libGLU.so.1
692 libOSMesa.so.4
693 libglide3.so.3
694 libgtkmozembed.so
695 libgtksuperwin.so
696 libxpcom.so
697 EOF
698
699 # for rpm -e|-U --repackage
700 install -d $RPM_BUILD_ROOT/var/spool/repackage
701
702 # move libs to /lib
703 for a in librpm-%{ver}.so librpmdb-%{ver}.so librpmio-%{ver}.so ; do
704         mv -f $RPM_BUILD_ROOT%{_libdir}/$a $RPM_BUILD_ROOT/lib
705         ln -s /lib/$a $RPM_BUILD_ROOT%{_libdir}/$a
706 done
707
708 %find_lang %{name}
709
710 rm -rf manual
711 cp -a doc/manual manual
712 rm -f manual/Makefile*
713
714 %clean
715 rm -rf $RPM_BUILD_ROOT
716
717 %post   lib -p /sbin/ldconfig
718 %postun lib -p /sbin/ldconfig
719
720 %pre build
721 find /usr/lib/rpm -name '*-linux' -type l | xargs rm -f
722
723 %files -f %{name}.lang
724 %defattr(644,root,root,755)
725 %doc RPM-PGP-KEY CHANGES manual
726
727 %attr(755,root,root) /bin/rpm
728 #%attr(755,root,root) %{_bindir}/rpmdb
729 #%attr(755,root,root) %{_bindir}/rpmquery
730 #%attr(755,root,root) %{_bindir}/rpmsign
731 #%attr(755,root,root) %{_bindir}/rpmverify
732
733 %dir %{_sysconfdir}/rpm
734 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/rpm/macros
735
736 %{_mandir}/man8/rpm.8*
737 %lang(fr) %{_mandir}/fr/man8/rpm.8*
738 %lang(ja) %{_mandir}/ja/man8/rpm.8*
739 %lang(ko) %{_mandir}/ko/man8/rpm.8*
740 %lang(pl) %{_mandir}/pl/man8/rpm.8*
741 %lang(ru) %{_mandir}/ru/man8/rpm.8*
742 %lang(sk) %{_mandir}/sk/man8/rpm.8*
743
744 %dir /var/lib/rpm
745 %dir %attr(700,root,root) /var/spool/repackage
746 %dir %{_libdir}/rpm
747 #%attr(755,root,root) %{_libdir}/rpm/rpmd
748 #%attr(755,root,root) %{_libdir}/rpm/rpmk
749 #%attr(755,root,root) %{_libdir}/rpm/rpm[qv]
750
751 %doc %attr(755,root,root) %{_libdir}/rpm/convertrpmrc.sh
752
753 %{_libdir}/rpm/rpmrc
754 %{_libdir}/rpm/rpmpopt*
755 %{_libdir}/rpm/macros
756
757 %files lib
758 %defattr(644,root,root,755)
759 %attr(755,root,root) /lib/librpm*-*.so
760 %attr(755,root,root) %{_libdir}/librpm*-*.so
761
762 %files build
763 %defattr(644,root,root,755)
764 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/rpm/noauto*
765 %attr(755,root,root) %{_libdir}/rpm/compress-doc
766 %attr(755,root,root) %{_libdir}/rpm/cross-build
767 %attr(755,root,root) %{_libdir}/rpm/find-provides
768 %attr(755,root,root) %{_libdir}/rpm/find-provides-wrapper
769 %attr(755,root,root) %{_libdir}/rpm/find-requires
770 %attr(755,root,root) %{_libdir}/rpm/find-requires-wrapper
771 %attr(755,root,root) %{_libdir}/rpm/find-rpm-provides
772 %attr(755,root,root) %{_libdir}/rpm/find-spec-bcond
773 %attr(755,root,root) %{_libdir}/rpm/find-lang.sh
774 %attr(755,root,root) %{_libdir}/rpm/mkinstalldirs
775 %attr(755,root,root) %{_libdir}/rpm/config.*
776 %attr(755,root,root) %{_libdir}/rpm/getpo.sh
777 %attr(755,root,root) %{_libdir}/rpm/install-build-tree
778 %attr(755,root,root) %{_libdir}/rpm/brp-*
779 %attr(755,root,root) %{_libdir}/rpm/check-files
780 %attr(755,root,root) %{_libdir}/rpm/check-prereqs
781 #%attr(755,root,root) %{_libdir}/rpm/cpanflute
782 #%attr(755,root,root) %{_libdir}/rpm/cpanflute2
783 #%attr(755,root,root) %{_libdir}/rpm/Specfile.pm
784 %attr(755,root,root) %{_libdir}/rpm/http.req
785 %attr(755,root,root) %{_libdir}/rpm/magic.prov
786 %attr(755,root,root) %{_libdir}/rpm/magic.req
787 %attr(755,root,root) %{_libdir}/rpm/u_pkg.sh
788 %attr(755,root,root) %{_libdir}/rpm/vpkg-provides.sh
789 %attr(755,root,root) %{_libdir}/rpm/vpkg-provides2.sh
790 %attr(755,root,root) %{_libdir}/rpm/rpmb
791 %attr(755,root,root) %{_libdir}/rpm/rpmt
792 %{_libdir}/rpm/noarch-*
793 %ifarch i386 i486 i586 i686 athlon
794 %{_libdir}/rpm/i?86*
795 %{_libdir}/rpm/athlon*
796 %endif
797 %ifarch sparc sparc64
798 %{_libdir}/rpm/sparc*
799 %endif
800 %ifarch alpha
801 %{_libdir}/rpm/alpha*
802 %endif
803 %ifarch ppc
804 %{_libdir}/rpm/ppc*
805 %endif
806 # must be here for "Requires: rpm-*prov" to work
807 %{_libdir}/rpm/macros.perl
808 %{_libdir}/rpm/macros.php
809 # not used yet ...
810 %{_libdir}/rpm/sql.prov
811 %{_libdir}/rpm/sql.req
812 %{_libdir}/rpm/tcl.req
813 %{_libdir}/rpm/trpm
814
815 %attr(755,root,root) %{_bindir}/javadeps
816 %attr(755,root,root) %{_bindir}/gendiff
817 %attr(755,root,root) %{_bindir}/rpmbuild
818
819 %{_mandir}/man1/gendiff.1*
820 %{_mandir}/man8/rpmbuild.8*
821 %lang(ja) %{_mandir}/ja/man8/rpmbuild.8*
822 %lang(pl) %{_mandir}/pl/man1/gendiff.1*
823 %lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
824
825 %files devel
826 %defattr(644,root,root,755)
827 %{_includedir}/rpm
828 %{_libdir}/librpm*.la
829 %attr(755,root,root) %{_libdir}/librpm.so
830 %attr(755,root,root) %{_libdir}/librpmio.so
831 %attr(755,root,root) %{_libdir}/librpmdb.so
832 %attr(755,root,root) %{_libdir}/librpmbuild.so
833
834 %files static
835 %defattr(644,root,root,755)
836 %{_libdir}/librpm*.a
837
838 %files utils
839 %defattr(644,root,root,755)
840 %attr(755,root,root) %{_bindir}/debugedit
841 %attr(755,root,root) %{_bindir}/rpm2cpio
842 %attr(755,root,root) %{_bindir}/rpmcache
843 %attr(755,root,root) %{_bindir}/rpmdeps
844 %attr(755,root,root) %{_bindir}/rpmgraph
845 %attr(755,root,root) %{_bindir}/rpmfile
846 %attr(755,root,root) %{_libdir}/rpm/find-debuginfo.sh
847 %attr(755,root,root) %{_libdir}/rpm/rpm2cpio.sh
848 %attr(755,root,root) %{_libdir}/rpm/tgpg
849 %attr(755,root,root) %{_libdir}/rpm/rpmdb_loadcvt
850
851 %files utils-perl
852 %defattr(644,root,root,755)
853 %attr(755,root,root) %{_libdir}/rpm/rpmdiff*
854 # not here
855 #%%{_libdir}/rpm/rpm.daily
856 #%%{_libdir}/rpm/rpm.log
857 #%%{_libdir}/rpm/rpm.xinetd
858
859 %{_mandir}/man8/rpm2cpio.8*
860 %{_mandir}/man8/rpmdeps.8*
861 %{_mandir}/man8/rpmcache.8*
862 %{_mandir}/man8/rpmgraph.8*
863 %lang(ja) %{_mandir}/ja/man8/rpm2cpio.8*
864 %lang(ja) %{_mandir}/ja/man8/rpmcache.8*
865 %lang(ja) %{_mandir}/ja/man8/rpmgraph.8*
866 %lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
867 %lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
868 %lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
869 %lang(pl) %{_mandir}/pl/man8/rpmcache.8*
870 %lang(pl) %{_mandir}/pl/man8/rpmgraph.8*
871 %lang(ru) %{_mandir}/ru/man8/rpm2cpio.8*
872
873 %files utils-static
874 %defattr(644,root,root,755)
875 %attr(755,root,root) %{_bindir}/rpm[ieu]
876 %attr(755,root,root) %{_libdir}/rpm/rpm[ieu]
877
878 %files perlprov
879 %defattr(644,root,root,755)
880 %attr(755,root,root) %{_libdir}/rpm/perl.*
881 #%attr(755,root,root) %{_libdir}/rpm/perldeps.pl
882 #%attr(755,root,root) %{_libdir}/rpm/find-perl-*
883 %attr(755,root,root) %{_libdir}/rpm/find-*.perl
884 %attr(755,root,root) %{_libdir}/rpm/find-prov.pl
885 %attr(755,root,root) %{_libdir}/rpm/find-req.pl
886 %attr(755,root,root) %{_libdir}/rpm/get_magic.pl
887
888 %files pythonprov
889 %defattr(644,root,root,755)
890 %{_libdir}/rpm/macros.python
891
892 %files php-pearprov
893 %defattr(644,root,root,755)
894 %attr(755,root,root) %{_libdir}/rpm/php*
895 %attr(755,root,root) %{_libdir}/rpm/find-php*
896
897 %files -n python-rpm
898 %defattr(644,root,root,755)
899 %attr(755,root,root) %{py_sitedir}/*.so
900 %attr(755,root,root) %{py_sitedir}/rpmdb/*.so
901 %{py_sitedir}/rpmdb/*.py*
902
903 %files build-tools
904 %defattr(644,root,root,755)
905 %attr(755,root,root) %{_bindir}/builder
906 %attr(755,root,root) %{_bindir}/adapter.awk
907 %attr(755,root,root) %{_bindir}/pldnotify.awk
This page took 0.08846 seconds and 4 git commands to generate.