3 # - python(abi) cap is not provided automatically because /usr/lib*/libpython2*.so.*
5 # - repackaging when lzma is not installed (todo: fix digest signature of header)
6 # rpmbuild computes digest when writing package to temporary file, then adds a few
7 # tags (incl. digest) and writes whole package to destination file;
8 # repackaging uses unchanged "immutable header" image from original rpm, also
9 # preserving payload format and compressor from original rpm, _not_ current settings
12 %bcond_with static # build static rpm+rpmi
13 %bcond_with autoreqdep # autogenerate package name deps in addition to sonames/perl(X)
14 %bcond_without python # don't build python bindings
15 %bcond_without selinux # build without selinux support
16 %bcond_without suggest_tags # build without Suggest tag (bootstrapping)
17 %bcond_with neon # build with HTTP/WebDAV support (neon library)
18 %bcond_without db # BerkeleyDB
19 %bcond_with sqlite # build with SQLite support
20 %bcond_with sqlite_dbapi # default database backend is sqlite
21 # force_cc - force using __cc other than "%{_target_cpu}-pld-linux-gcc"
22 # force_cxx - force using __cxx other than "%{_target_cpu}-pld-linux-g++"
23 # force_cpp - force using __cpp other than "%{_target_cpu}-pld-linux-gcc -E"
25 %if %{with sqlite_dbapi}
29 %if %{without db} && %{without sqlite}
30 %{error: Need db or sqlite}
35 # versions of required libraries
36 %define reqdb_ver 4.6.18
37 %define reqpopt_ver 1.10.8
38 %define beecrypt_ver 2:4.1.2-4
40 Summary: RPM Package Manager
41 Summary(de.UTF-8): RPM Packet-Manager
42 Summary(es.UTF-8): Gestor de paquetes RPM
43 Summary(pl.UTF-8): Aplikacja do zarządzania pakietami RPM
44 Summary(pt_BR.UTF-8): Gerenciador de pacotes RPM
45 Summary(ru.UTF-8): Менеджер пакетов от RPM
46 Summary(uk.UTF-8): Менеджер пакетів від RPM
52 Source0: rpm-20070927.tar.gz
53 # Source0-md5: cf0bda3a41b74d68b36ef078edfafc6d
54 Source1: %{name}.groups
55 Source2: %{name}.platform
56 Source3: %{name}-install-tree
57 Source4: %{name}-find-spec-bcond
58 Source5: %{name}-find-lang
59 Source6: %{name}-groups-po.awk
60 Source7: %{name}-compress-doc
61 Source8: %{name}-check-files
62 Source9: %{name}-php-provides
63 Source10: %{name}-php-requires
64 Source11: %{name}.sysinfo
66 Source13: %{name}-user_group.sh
67 Source14: %{name}.sysconfig
68 Source15: %{name}-macros.java
69 Source16: %{name}-java-requires
70 # http://svn.pld-linux.org/banner.sh/
72 Source18: %{name}-pld.macros
73 Patch0: %{name}-pl.po.patch
75 Patch3: %{name}-rpmpopt.patch
76 Patch4: %{name}-perl-macros.patch
77 Patch5: %{name}-perl-req-perlfile.patch
78 Patch6: %{name}-noexpand.patch
79 Patch7: %{name}-scripts-closefds.patch
80 Patch8: %{name}-php-macros.patch
81 Patch9: %{name}-gettext-in-header.patch
82 Patch10: %{name}-compress-doc.patch
84 Patch14: %{name}-etc_dir.patch
85 Patch16: %{name}-php-deps.patch
87 Patch18: %{name}-perl_req.patch
89 Patch23: %{name}-pkgconfigdeps.patch
91 Patch25: %{name}-rpm2cpio-payload.patch
92 Patch26: %{name}-notsc.patch
93 Patch27: %{name}-hack-norpmlibdep.patch
95 Patch31: %{name}-missing-prototypes.patch
96 Patch32: %{name}-pld-autodep.patch
97 Patch34: %{name}-epoch0.patch
98 Patch35: %{name}-perl_req-INC_dirs.patch
99 Patch36: %{name}-debuginfo.patch
100 Patch37: %{name}-doxygen_hack.patch
102 Patch41: %{name}-reduce-stack-usage.patch
103 Patch42: %{name}-old-fileconflicts-behaviour.patch
105 Patch46: %{name}-mono.patch
106 Patch47: %{name}-javadeps.patch
108 Patch52: %{name}-morearchs.patch
110 Patch55: %{name}-truncate-cvslog.patch
112 Patch58: %{name}-repackage-wo-lzma.patch
113 Patch59: %{name}-libtool-deps.patch
115 Patch61: %{name}-sparc64.patch
116 URL: http://rpm5.org/
117 BuildRequires: autoconf >= 2.57
118 BuildRequires: automake >= 1.4
119 BuildRequires: beecrypt-devel >= %{beecrypt_ver}
120 BuildRequires: bzip2-devel >= 1.0.2-17
121 %{?with_db:BuildRequires: db-devel >= %{reqdb_ver}}
122 BuildRequires: elfutils-devel >= 0.108
125 BuildRequires: gcc >= 5:3.4
127 BuildRequires: gettext-devel >= 0.11.4-2
128 BuildRequires: libmagic-devel
129 %{?with_selinux:BuildRequires: libselinux-devel >= 1.18}
130 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
131 BuildRequires: libstdc++-devel
132 BuildRequires: libtool >= 1:1.4.2-9
134 BuildRequires: libxml2-devel
135 BuildRequires: neon-devel >= 0.25.5
137 BuildRequires: patch >= 2.2
138 BuildRequires: popt-devel >= %{reqpopt_ver}
139 %{?with_python:BuildRequires: python-devel >= 1:2.5}
140 BuildRequires: python-modules >= 1:2.5
141 BuildRequires: rpm-perlprov
142 %{?with_python:BuildRequires: rpm-pythonprov}
143 %{?with_sqlite:BuildRequires: sqlite3-devel}
144 BuildRequires: zlib-devel
146 # Require static library only for static build
147 BuildRequires: beecrypt-static >= %{beecrypt_ver}
148 BuildRequires: bzip2-static >= 1.0.2-17
149 %{?with_db:BuildRequires: db-static >= %{reqdb_ver}}
150 BuildRequires: elfutils-static
151 BuildRequires: glibc-static >= 2.2.94
152 BuildRequires: libmagic-static
153 %{?with_selinux:BuildRequires: libselinux-static >= 1.18}
154 BuildRequires: popt-static >= %{reqpopt_ver}
155 BuildRequires: zlib-static
157 Requires: %{name}-base = %{version}-%{release}
158 Requires: %{name}-lib = %{version}-%{release}
159 Requires: beecrypt >= %{beecrypt_ver}
160 Requires: popt >= %{reqpopt_ver}
161 %{!?with_static:Obsoletes: rpm-utils-static}
162 Conflicts: glibc < 2.2.92
163 # db4.6 poldek needed
164 Conflicts: poldek < 0.21-0.20070703.00.3
165 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
167 %define _binary_payload w9.gzdio
168 %define _noPayloadPrefix 1
170 # don't require very fresh rpm.macros to build
171 %define __gettextize gettextize --copy --force --intl ; cp -f po/Makevars{.template,}
172 %define ix86 i386 i486 i586 i686 athlon pentium3 pentium4
173 %define ppc ppc ppc7400 ppc7450
174 %define x8664 amd64 ia32e x86_64
176 # stabilize new build environment
177 %define __newcc %{?force_cc}%{!?force_cc:%{_target_cpu}-pld-linux-gcc}
178 %define __newcxx %{?force_cxx}%{!?force_cxx:%{_target_cpu}-pld-linux-g++}
179 %define __newcpp %{?force_cpp}%{!?force_cpp:%{_target_cpu}-pld-linux-gcc -E}
181 %define _rpmlibdir /usr/lib/rpm
183 %define specflags -fno-strict-aliasing
186 RPM is a powerful package manager, which can be used to build,
187 install, query, verify, update, and uninstall individual software
188 packages. A package consists of an archive of files, and package
189 information, including name, version, and description.
191 %description -l de.UTF-8
192 RPM ist ein kräftiger Packet-Manager, der verwendet sein kann zur
193 Installation, Anfrage, Verifizierung, Aktualisierung und
194 Uninstallation individueller Softwarepakete. Ein Paket besteht aus
195 einem Archiv Dateien und Paketinformation, inklusive Name, Version und
198 %description -l es.UTF-8
199 RPM es un poderoso administrador de paquetes, que puede ser usado para
200 construir, instalar, pesquisar, verificar, actualizar y desinstalar
201 paquetes individuales de software. Un paquete consiste en un
202 almacenaje de archivos, y información sobre el paquete, incluyendo
203 nombre, versión y descripción.
205 %description -l pl.UTF-8
206 RPM jest doskonałym programem zarządzającym pakietami. Umożliwia on
207 przebudowanie, instalację czy weryfikację dowolnego pakietu.
208 Informacje dotyczące każdego pakietu, takie jak jego opis, lista
209 plików wchodzących w skład pakietu, zależności od innych pakietów, są
210 przechowywane w bazie danych i można je uzyskać za pomocą opcji
211 odpytywania programu rpm.
213 %description -l pt_BR.UTF-8
214 RPM é um poderoso gerenciador de pacotes, que pode ser usado para
215 construir, instalar, pesquisar, verificar, atualizar e desinstalar
216 pacotes individuais de software. Um pacote consiste de um conjunto de
217 arquivos e informações adicionais, incluindo nome, versão e descrição
218 do pacote, permissões dos arquivos, etc.
220 %description -l ru.UTF-8
221 RPM - это мощный менеджер пакетов, который может быть использован для
222 создания, инсталляции, запросов (query), проверки, обновления и
223 удаления программных пакетов. Пакет состоит из файлового архива и
224 служебной информации, включающей название, версию, описание и другие
227 %description -l uk.UTF-8
228 RPM - це потужний менеджер пакетів, що може бути використаний для
229 створення, інсталяції, запитів (query), перевірки, поновлення та
230 видалення програмних пакетів. Пакет складається з файлового архіву та
231 службової інформації, що містить назву, версію, опис та іншу
232 інформацію про пакет.
235 Summary: RPM base package - scripts used by rpm packages themselves
236 Summary(pl.UTF-8): Podstawowy pakiet RPM - skrypty używane przez same pakiety rpm
239 Obsoletes: vserver-rpm
242 The RPM base package contains scripts used by rpm packages themselves.
244 - scripts for adding/removing groups and users needed for rpm
246 - banner.sh to display %%banner messages from rpm scriptlets.
248 %description base -l pl.UTF-8
249 Pakiet podstawowy RPM zwiera skrypty używane przez same pakiety rpm.
251 - skrypty dodające/usuwające grupy i użytkowników dla pakietów rpm,
252 - banner.sh do pokazywania komunikatów %%banner dla skryptletów rpm.
255 Summary: RPMs library
256 Summary(pl.UTF-8): Biblioteki RPM-a
258 Requires: beecrypt >= %{beecrypt_ver}
259 %{?with_db:Requires: db >= %{reqdb_ver}}
260 %{?with_selinux:Requires: libselinux >= 1.18}
261 Requires: libmagic >= 1.15-2
262 Requires: popt >= %{reqpopt_ver}
264 Obsoletes: rpm-apidocs
265 # avoid SEGV caused by mixed db versions
266 Conflicts: poldek < 0.18.1-16
267 %{?with_suggest_tags:Suggests: lzma}
272 %description lib -l pl.UTF-8
276 Summary: Header files for rpm libraries
277 Summary(de.UTF-8): Header-Dateien für rpm Libraries
278 Summary(es.UTF-8): Archivos de inclusión y bibliotecas para programas de manipulación de paquetes rpm
279 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek rpm
280 Summary(pt_BR.UTF-8): Arquivos de inclusão e bibliotecas para programas de manipulação de pacotes RPM
281 Summary(ru.UTF-8): Хедеры и библиотеки для программ, работающих с rpm-пакетами
282 Summary(uk.UTF-8): Хедери та бібліотеки для програм, що працюють з пакетами rpm
283 Group: Development/Libraries
284 Requires: %{name}-lib = %{version}-%{release}
285 Requires: beecrypt-devel >= %{beecrypt_ver}
286 Requires: bzip2-devel
287 %{?with_db:Requires: db-devel >= %{reqdb_ver}}
288 Requires: elfutils-devel
289 Requires: libmagic-devel
290 %{?with_selinux:Requires: libselinux-devel}
291 Requires: popt-devel >= %{reqpopt_ver}
295 The RPM packaging system includes C libraries that make it easy to
296 manipulate RPM packages and databases. They are intended to ease the
297 creation of graphical package managers and other tools that need
298 intimate knowledge of RPM packages. This package contains header files
301 %description devel -l de.UTF-8
302 Der RPM-Packensystem enthält eine C-Library, die macht es einfach
303 RPM-Pakete und Dateibanken zu manipulieren. Er eignet sich für
304 Vereinfachung des Schaffens grafischer Paket-Manager und anderer
305 Werkzeuge, die intime Kenntnis von RPM-Paketen brauchen.
307 %description devel -l es.UTF-8
308 El sistema de empaquetado RPM incluye una biblioteca C que vuelve
309 fácil la manipulación de paquetes y bases de datos RPM. Su objetivo es
310 facilitar la creación de administradores gráficos de paquetes y otras
311 herramientas que necesiten un conocimiento profundo de paquetes RPM.
313 %description devel -l pl.UTF-8
314 System RPM zawiera biblioteki C, które ułatwiają manipulowanie
315 pakietami RPM oraz bazami danych. W zamiarze ma to uprościć tworzenie
316 graficznych programów zarządzających pakietami oraz innych narzędzi,
317 które wymagają szczegółowej wiedzy na temat pakietów RPM. Ten pakiet
318 zawiera pliki nagłówkowe wspomnianych bibliotek.
320 %description devel -l pt_BR.UTF-8
321 O sistema de empacotamento RPM inclui uma biblioteca C que torna fácil
322 a manipulação de pacotes e bases de dados RPM. Seu objetivo é
323 facilitar a criação de gerenciadores gráficos de pacotes e outras
324 ferramentas que precisem de conhecimento profundo de pacotes RPM.
326 %description devel -l ru.UTF-8
327 Система управления пакетами RPM содержит библиотеку C, которая
328 упрощает манипуляцию пакетами RPM и соответствующими базами данных.
329 Эта библиотека предназначена для облегчения создания графических
330 пакетных менеджеров и других утилит, которым необходимо работать с
333 %description devel -l uk.UTF-8
334 Система керування пакетами RPM містить бібліотеку C, котра спрощує
335 роботу з пакетами RPM та відповідними базами даних. Ця бібліотека
336 призначена для полегшення створення графічних пакетних менеджерів та
337 інших утиліт, що працюють з пакетами RPM.
340 Summary: RPM static libraries
341 Summary(de.UTF-8): RPMs statische Libraries
342 Summary(pl.UTF-8): Biblioteki statyczne RPM-a
343 Summary(pt_BR.UTF-8): Bibliotecas estáticas para o desenvolvimento de aplicações RPM
344 Summary(ru.UTF-8): Статическая библиотека для программ, работающих с rpm-пакетами
345 Summary(uk.UTF-8): Статична бібліотека для програм, що працюють з пакетами rpm
346 Group: Development/Libraries
347 Requires: %{name}-devel = %{version}-%{release}
348 Requires: beecrypt-static >= %{beecrypt_ver}
349 Requires: bzip2-static
350 %{?with_db:Requires: db-static >= %{reqdb_ver}}
351 Requires: elfutils-static
352 Requires: libmagic-static
353 Requires: popt-static >= %{reqpopt_ver}
354 Requires: zlib-static
357 RPM static libraries.
359 %description static -l de.UTF-8
360 RPMs statische Libraries.
362 %description static -l pl.UTF-8
363 Biblioteki statyczne RPM-a.
365 %description static -l pt_BR.UTF-8
366 Bibliotecas estáticas para desenvolvimento.
368 %description static -l ru.UTF-8
369 Система управления пакетами RPM содержит библиотеку C, которая
370 упрощает манипуляцию пакетами RPM и соответствующими базами данных.
371 Это статическая библиотека RPM.
373 %description static -l uk.UTF-8
374 Система керування пакетами RPM містить бібліотеку C, котра спрощує
375 роботу з пакетами RPM та відповідними базами даних. Це статична
379 Summary: Additional utilities for managing RPM packages and database
380 Summary(de.UTF-8): Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
381 Summary(pl.UTF-8): Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
382 Group: Applications/File
383 Requires: %{name} = %{version}-%{release}
384 Requires: popt >= %{reqpopt_ver}
387 Additional utilities for managing RPM packages and database.
389 %description utils -l de.UTF-8
390 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
392 %description utils -l pl.UTF-8
393 Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
396 Summary: Additional utilities for managing RPM packages and database
397 Summary(de.UTF-8): Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
398 Summary(pl.UTF-8): Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
399 Group: Applications/File
400 Requires: %{name}-utils = %{version}-%{release}
401 Requires: popt >= %{reqpopt_ver}
403 %description utils-perl
404 Additional utilities for managing RPM packages and database.
406 %description utils-perl -l de.UTF-8
407 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
409 %description utils-perl -l pl.UTF-8
410 Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
412 %package utils-static
413 Summary: Static rpm utilities
414 Summary(pl.UTF-8): Statyczne narzędzia rpm
415 Group: Applications/System
416 Requires: %{name} = %{version}-%{release}
418 %description utils-static
419 Static rpm utilities for repairing system in case something with
420 shared libraries used by rpm become broken. Currently it contains rpmi
421 binary, which can be used to install/upgrade/remove packages without
422 using shared libraries (well, in fact with exception of NSS modules).
424 %description utils-static -l pl.UTF-8
425 Statyczne narzędzia rpm do naprawy systemu w przypadku zepsucia czegoś
426 związanego z bibliotekami współdzielonymi używanymi przez rpm-a.
427 Aktualnie pakiet zawiera binarkę rpmi, którą można użyć do instalacji,
428 uaktualniania lub usuwania pakietów bez udziału bibliotek statycznych
429 (z wyjątkiem modułów NSS).
432 Summary: Scripts for building binary RPM packages
433 Summary(de.UTF-8): Scripts fürs Bauen binärer RPM-Pakete
434 Summary(pl.UTF-8): Skrypty pomocnicze do budowania binarnych RPM-ów
435 Summary(pt_BR.UTF-8): Scripts e programas executáveis usados para construir pacotes
436 Summary(ru.UTF-8): Скрипты и утилиты, необходимые для сборки пакетов
437 Summary(uk.UTF-8): Скрипти та утиліти, необхідні для побудови пакетів
438 Group: Applications/File
439 Requires(pre): findutils
440 Requires: %{name}-build-macros >= 1.314
441 Requires: %{name}-utils = %{version}-%{release}
444 # we need fixed binutils for -feliminate-dwarf2-dups
445 Requires: binutils >= 3:2.17.50.0.3-2
447 Requires: chrpath >= 0.10-4
451 Requires: file >= 4.17
454 Requires: gcc >= 5:3.4
455 Requires: glibc-devel
465 Provides: rpmbuild(monoautodeps)
466 Provides: rpmbuild(noauto) = 3
468 Conflicts: automake < 1:1.7.9-2
469 Conflicts: libtool < 2:1.5-13
473 Scripts for building binary RPM packages.
475 %description build -l de.UTF-8
476 Scripts fürs Bauen binärer RPM-Pakete.
478 %description build -l pl.UTF-8
479 Skrypty pomocnicze do budowania binarnych RPM-ów.
481 %description build -l pt_BR.UTF-8
482 Este pacote contém scripts e programas executáveis que são usados para
483 construir pacotes usando o RPM.
485 %description build -l ru.UTF-8
486 Различные вспомогательные скрипты и исполняемые программы, которые
487 используются для сборки RPM'ов.
489 %description build -l uk.UTF-8
490 Різноманітні допоміжні скрипти та утиліти, які використовуються для
494 Summary: Additional utilities for checking Java provides/requires in RPM packages
495 Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach RPM
496 Group: Applications/File
497 Requires: %{name} = %{version}-%{release}
499 Requires: findutils >= 1:4.2.26
503 %description javaprov
504 Additional utilities for checking Java provides/requires in RPM
507 %description javaprov -l pl.UTF-8
508 Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach
512 Summary: Additional utilities for checking Perl provides/requires in RPM packages
513 Summary(de.UTF-8): Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen
514 Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM
515 Group: Applications/File
516 Requires: %{name} = %{version}-%{release}
518 Requires: perl-modules
520 %description perlprov
521 Additional utilities for checking Perl provides/requires in RPM
524 %description perlprov -l de.UTF-8
525 Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen.
527 %description perlprov -l pl.UTF-8
528 Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w
532 Summary: Python macros, which simplifies creation of RPM packages with Python software
533 Summary(pl.UTF-8): Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Pythonie
534 Group: Applications/File
535 Requires: %{name} = %{version}-%{release}
537 Requires: python-modules
539 %description pythonprov
540 Python macros, which simplifies creation of RPM packages with Python
543 %description pythonprov -l pl.UTF-8
544 Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
547 %package php-pearprov
548 Summary: Additional utilities for checking PHP PEAR provides/requires in RPM packages
549 Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności skryptów php w RPM
550 Group: Applications/File
551 Requires: %{name} = %{version}-%{release}
554 %description php-pearprov
555 Additional utilities for checking PHP PEAR provides/requires in RPM
558 %description php-pearprov -l pl.UTF-8
559 Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w
562 %package -n python-rpm
563 Summary: Python interface to RPM library
564 Summary(pl.UTF-8): Pythonowy interfejs do biblioteki RPM-a
565 Summary(pt_BR.UTF-8): Módulo Python para aplicativos que manipulam pacotes RPM
566 Group: Development/Languages/Python
567 Requires: %{name} = %{version}-%{release}
568 %pyrequires_eq python
569 Obsoletes: rpm-python
571 %description -n python-rpm
572 The rpm-python package contains a module which permits applications
573 written in the Python programming language to use the interface
574 supplied by RPM (RPM Package Manager) libraries.
576 This package should be installed if you want to develop Python
577 programs that will manipulate RPM packages and databases.
579 %description -n python-rpm -l pl.UTF-8
580 Pakiet rpm-python zawiera moduł, który pozwala aplikacjom napisanym w
581 Pythonie na używanie interfejsu dostarczanego przez biblioteki RPM-a.
583 Pakiet ten powinien zostać zainstalowany, jeśli chcesz pisać w
584 Pythonie programy manipulujące pakietami i bazami danych rpm.
586 %description -n python-rpm -l pt_BR.UTF-8
587 O pacote rpm-python contém um módulo que permite que aplicações
588 escritas em Python utilizem a interface fornecida pelas bibliotecas
589 RPM (RPM Package Manager).
591 Esse pacote deve ser instalado se você quiser desenvolver programas em
592 Python para manipular pacotes e bancos de dados RPM.
596 sed -i -e 's# no # nb #g' configure.ac
598 sed -i -e 's# sr # sr@Latn #g' configure.ac
599 mv -f po/{sr,sr@Latn}.po
601 sed -i -e 's#${prefix}/lib/python@WITH_PYTHON_VERSION@#@WITH_PYTHON_LIBDIR@#g' python/rpm/Makefile.am
617 echo '%%define __perl_provides %%{__perl} /usr/lib/rpm/perl.prov' > macros.perl
618 echo '%%define __perl_requires %%{__perl} /usr/lib/rpm/perl.req' >> macros.perl
619 echo '# obsoleted file' > macros.python
620 echo '%%define __php_provides /usr/lib/rpm/php.prov' > macros.php
621 echo '%%define __php_requires /usr/lib/rpm/php.req' >> macros.php
622 echo '%%define __mono_provides /usr/lib/rpm/mono-find-provides' > macros.mono
623 echo '%%define __mono_requires /usr/lib/rpm/mono-find-requires' >> macros.mono
624 install %{SOURCE5} scripts/find-lang.sh
625 install %{SOURCE9} scripts/php.prov.in
626 install %{SOURCE10} scripts/php.req.in
627 install %{SOURCE12} scripts/perl.prov
645 # CHECK ME, PROBABLY WILL NEED TO HANLE IN OTHER WAY since rpmfcSCRIPT already handles mono
658 mv -f perl.req perl.req.in
659 mv -f perl.prov perl.prov.in
662 # generate Group translations to *.po
663 awk -f %{SOURCE6} %{SOURCE1}
665 # update macros paths
666 #for f in doc{,/ja,/pl}/rpm.8 doc{,/ja,/pl}/rpmbuild.8 ; do
667 # sed -e 's@lib/rpm/redhat@lib/rpm/pld@g' $f > ${f}.tmp
679 # config.guess doesn't handle athlon, so we have to change it by hand.
680 # rpm checks for CPU type at runtime, but it looks better
681 #sed -i -e 's|@host@|%{_target_cpu}-%{_target_vendor}-linux-gnu|' -e 's|@host_cpu@|%{_target_cpu}|' macros.in
683 # pass CC and CXX too in case of building with some older configure macro
684 # disable perl-RPM2 build, we have it in separate spec
689 WITH_PERL_VERSION=no \
690 %{?with_autoreqdep:--enable-adding-packages-names-in-autogenerated-dependancies} \
693 %{?with_python:--with-python=2.5 --with-python-lib-dir=%{py_libdir}} \
694 %{!?with_python:--without-python} \
695 --with%{!?with_selinux:out}-selinux \
697 --with-zlib=external \
698 --with-bzip2=external \
699 --with-beecrypt=external \
700 --with-neon=%{?with_neon:external}%{!?with_neon:no} \
701 --with-file=external \
702 --with-popt=external \
703 --with-db=%{?with_db:external}%{!?with_db:no} \
704 --with-sqlite=%{?with_sqlite:external}%{!?with_sqlite:no} \
705 --with-dbapi=%{!?sqlite_dbapi:db}%{?sqlite_dbapi:sqlite} \
707 --with-pcre=external \
708 --with-keyutils=none \
709 --without-path-versioned \
710 --with-path-macros='%{_rpmlibdir}/macros:%{_rpmlibdir}/macros.build:%{_rpmlibdir}/%%{_target}/macros:%{_sysconfdir}/macros.*:%{_sysconfdir}/macros:%{_sysconfdir}/%%{_target}/macros:~/etc/rpmmacros:~/etc/.rpmmacros:~/.rpmmacros' \
711 --with-bugreport="http://bugs.pld-linux.org/"
719 rm -rf $RPM_BUILD_ROOT
720 install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm,/var/lib/banner}
723 pkgconfigdir=%{_pkgconfigdir} \
724 DESTDIR=$RPM_BUILD_ROOT
726 # first platform file entry can't contain regexps
727 echo "%{_target_cpu}-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
731 echo "amd64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
732 echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
736 echo "amd64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
737 echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
741 echo "ia32e-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
742 echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
746 %ifarch athlon %{x8664}
747 echo "athlon-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
749 %ifarch pentium4 athlon %{x8664}
750 echo "pentium4-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
752 %ifarch pentium3 pentium4 athlon %{x8664}
753 echo "pentium3-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
755 %ifarch i686 pentium3 pentium4 athlon %{x8664}
756 echo "i686-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
758 %ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
759 echo "i586-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
761 %ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
762 echo "i486-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
764 %ifarch %{ix86} %{x8664}
765 echo "i386-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
770 echo "ppc-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
771 echo "powerpc-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
775 echo "noarch-[^-]*-.*" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
778 #sed -e '/_target_platform/s/[%]{_target_cpu}/ppc/' \
779 # -i $RPM_BUILD_ROOT%{_rpmlibdir}/ppc74[05]0-linux/macros
782 rm $RPM_BUILD_ROOT%{_rpmlibdir}/vpkg-provides*
783 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl
784 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl
786 # not installed since 4.4.8 (-tools-perl subpackage)
787 install scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
789 install macros.perl $RPM_BUILD_ROOT%{_rpmlibdir}/macros.perl
790 install macros.python $RPM_BUILD_ROOT%{_rpmlibdir}/macros.python
791 install macros.php $RPM_BUILD_ROOT%{_rpmlibdir}/macros.php
792 install macros.mono $RPM_BUILD_ROOT%{_rpmlibdir}/macros.mono
793 install %{SOURCE15} $RPM_BUILD_ROOT%{_rpmlibdir}/macros.java
794 install %{SOURCE18} $RPM_BUILD_ROOT%{_rpmlibdir}/macros.pld
796 install %{SOURCE1} doc/manual/groups
797 install %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
798 install %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
799 install %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
800 install %{SOURCE8} $RPM_BUILD_ROOT%{_rpmlibdir}/check-files
801 install %{SOURCE13} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
802 install %{SOURCE16} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
803 install scripts/find-php* $RPM_BUILD_ROOT%{_rpmlibdir}
804 install scripts/php.{prov,req} $RPM_BUILD_ROOT%{_rpmlibdir}
805 install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/rpm
807 install %{SOURCE17} $RPM_BUILD_ROOT%{_bindir}/banner.sh
809 install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
811 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros <<EOF
812 # customized rpm macros - global for host
814 #%%_install_langs pl_PL:en_US
817 # remove or replace with file_contexts path if you want to use custom
818 # SELinux file contexts policy instead of one stored in packages payload
819 %%_install_file_context_path %%{nil}
820 %%_verify_file_context_path %%{nil}
822 # If non-zero, all erasures will be automagically repackaged.
823 #%%_repackage_all_erasures 1
826 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles <<EOF
827 # global list of files (regexps) which don't generate Provides
829 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov <<EOF
830 # global list of script capabilities (regexps) not to be used in Provides
832 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles <<EOF
833 # global list of files (regexps) which don't generate Requires
837 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq <<EOF
838 # global list of script capabilities (regexps) not to be used in Requires
840 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep <<EOF
841 # global list of capabilities (SONAME, perl(module), php(module) regexps)
842 # which don't generate dependencies on package NAMES
843 # -- OpenGL implementation
853 # -- X11 implementation
898 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc <<EOF
899 # global list of file masks not to be compressed in DOCDIR
902 # for rpm -e|-U --repackage
903 install -d $RPM_BUILD_ROOT/var/{spool/repackage,lock/rpm}
904 touch $RPM_BUILD_ROOT/var/lock/rpm/transaction
907 mv -f $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
909 for a in librpm-%{sover}.so librpmdb-%{sover}.so librpmio-%{sover}.so librpmbuild-%{sover}.so; do
910 mv -f $RPM_BUILD_ROOT%{_libdir}/$a $RPM_BUILD_ROOT/%{_lib}
911 ln -s /%{_lib}/$a $RPM_BUILD_ROOT%{_libdir}/$a
914 # remove arch dependant macros which have no use on noarch
916 #/{__spec_install_post_strip}/d
917 #/{__spec_install_post_chrpath}/d
918 #/{__spec_install_post_compress_modules}/d
919 #' $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux/macros
921 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
922 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
924 rm $RPM_BUILD_ROOT%{py_sitedir}/rpm/*.{la,a,py}
926 # wrong location, not used anyway
927 rm $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log,xinetd}
928 # manuals for utils dropped in 4.4.8 (?)
929 #rm $RPM_BUILD_ROOT%{_mandir}/{,*/}/man8/{rpmcache,rpmgraph}.8
934 cp -a doc/manual manual
935 rm -f manual/Makefile*
938 rm -rf $RPM_BUILD_ROOT
940 %post lib -p /sbin/ldconfig
941 %postun lib -p /sbin/ldconfig
944 find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
946 %files -f %{name}.lang
947 %defattr(644,root,root,755)
948 %doc CHANGES CREDITS README pubkeys/JBJ-GPG-KEY manual/*
950 %attr(755,root,root) /bin/rpm
951 #%attr(755,root,root) %{_bindir}/rpmdb
952 #%attr(755,root,root) %{_bindir}/rpmquery
953 #%attr(755,root,root) %{_bindir}/rpmsign
954 #%attr(755,root,root) %{_bindir}/rpmverify
956 %dir %{_sysconfdir}/rpm
957 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros
958 # these are ok to be replaced
959 %config %verify(not md5 mtime size) %{_sysconfdir}/rpm/sysinfo
960 %config %verify(not md5 mtime size) %{_sysconfdir}/rpm/platform
963 %{_mandir}/man8/rpm.8*
964 %lang(fr) %{_mandir}/fr/man8/rpm.8*
965 %lang(ja) %{_mandir}/ja/man8/rpm.8*
966 %lang(ko) %{_mandir}/ko/man8/rpm.8*
967 %lang(pl) %{_mandir}/pl/man8/rpm.8*
968 %lang(ru) %{_mandir}/ru/man8/rpm.8*
969 %lang(sk) %{_mandir}/sk/man8/rpm.8*
972 %dir %attr(700,root,root) /var/spool/repackage
974 /var/lock/rpm/transaction
976 #%attr(755,root,root) %{_rpmlibdir}/rpmd
977 #%{!?with_static:%attr(755,root,root) %{_rpmlibdir}/rpm[eiu]}
978 #%attr(755,root,root) %{_rpmlibdir}/rpmk
979 #%attr(755,root,root) %{_rpmlibdir}/rpm[qv]
981 %{_rpmlibdir}/rpmpopt*
983 %{_rpmlibdir}/macros.pld
986 %defattr(644,root,root,755)
987 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rpm
989 %attr(755,root,root) %{_bindir}/banner.sh
990 %attr(755,root,root) %{_rpmlibdir}/user_group.sh
994 %defattr(644,root,root,755)
995 %attr(755,root,root) /%{_lib}/librpm*-*.so
996 %attr(755,root,root) %{_libdir}/librpm*-*.so
999 %defattr(644,root,root,755)
1001 %{_libdir}/librpm*.la
1002 %{_pkgconfigdir}/*.pc
1003 %attr(755,root,root) %{_libdir}/librpm.so
1004 %attr(755,root,root) %{_libdir}/librpm-%{sover}.so
1005 %attr(755,root,root) %{_libdir}/librpmio.so
1006 %attr(755,root,root) %{_libdir}/librpmio-%{sover}.so
1007 %attr(755,root,root) %{_libdir}/librpmdb.so
1008 %attr(755,root,root) %{_libdir}/librpmdb-%{sover}.so
1009 %attr(755,root,root) %{_libdir}/librpmbuild.so
1012 %defattr(644,root,root,755)
1013 %{_libdir}/librpm*.a
1016 %defattr(644,root,root,755)
1017 %attr(755,root,root) %{_bindir}/rpmconstant
1018 %attr(755,root,root) %{_bindir}/rpm2cpio
1019 %attr(755,root,root) %{_rpmlibdir}/rpmcache
1020 %attr(755,root,root) %{_rpmlibdir}/rpmcmp
1021 %attr(755,root,root) %{_rpmlibdir}/rpmdeps
1022 %attr(755,root,root) %{_rpmlibdir}/debugedit
1023 %attr(755,root,root) %{_rpmlibdir}/rpmdigest
1024 %attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh
1025 %attr(755,root,root) %{_rpmlibdir}/tgpg
1026 %attr(755,root,root) %{_rpmlibdir}/rpmdb_loadcvt
1027 %{_mandir}/man8/rpm2cpio.8*
1028 %{_mandir}/man8/rpmdeps.8*
1029 #%{_mandir}/man8/rpmcache.8*
1030 #%{_mandir}/man8/rpmgraph.8*
1031 %lang(ja) %{_mandir}/ja/man8/rpm2cpio.8*
1032 #%lang(ja) %{_mandir}/ja/man8/rpmcache.8*
1033 #%lang(ja) %{_mandir}/ja/man8/rpmgraph.8*
1034 %lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
1035 %lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
1036 %lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
1037 #%lang(pl) %{_mandir}/pl/man8/rpmcache.8*
1038 #%lang(pl) %{_mandir}/pl/man8/rpmgraph.8*
1039 %lang(ru) %{_mandir}/ru/man8/rpm2cpio.8*
1042 %defattr(644,root,root,755)
1043 %attr(755,root,root) %{_rpmlibdir}/rpmdiff*
1047 %defattr(644,root,root,755)
1048 %attr(755,root,root) %{_bindir}/rpm[ieu]
1049 %attr(755,root,root) %{_rpmlibdir}/rpm[ieu]
1053 %defattr(644,root,root,755)
1054 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/noauto*
1055 %attr(755,root,root) %{_rpmlibdir}/brp-*
1056 %attr(755,root,root) %{_rpmlibdir}/check-files
1057 # %attr(755,root,root) %{_rpmlibdir}/check-prereqs
1058 %attr(755,root,root) %{_rpmlibdir}/compress-doc
1059 #%attr(755,root,root) %{_rpmlibdir}/config.*
1060 %attr(755,root,root) %{_rpmlibdir}/cross-build
1061 %attr(755,root,root) %{_rpmlibdir}/find-spec-bcond
1062 %attr(755,root,root) %{_rpmlibdir}/find-lang.sh
1063 %attr(755,root,root) %{_rpmlibdir}/getpo.sh
1064 %attr(755,root,root) %{_rpmlibdir}/install-build-tree
1065 %attr(755,root,root) %{_rpmlibdir}/mkinstalldirs
1066 %attr(755,root,root) %{_rpmlibdir}/u_pkg.sh
1067 %attr(755,root,root) %{_rpmlibdir}/executabledeps.sh
1068 %attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh
1069 # needs hacked pkg-config to return anything
1070 %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh
1071 #%attr(755,root,root) %{_rpmlibdir}/rpmb
1072 #%attr(755,root,root) %{_rpmlibdir}/rpmt
1073 # XXX FIXME FIXME FIXME XXX
1075 %{_rpmlibdir}/noarch-*
1078 %{_rpmlibdir}/pentium*
1079 %{_rpmlibdir}/athlon*
1082 %{_rpmlibdir}/alpha*
1087 %ifarch mips mipsel mips64 mips64el
1093 %ifarch sparc sparc64
1094 %{_rpmlibdir}/sparc*
1097 %{_rpmlibdir}/amd64*
1098 %{_rpmlibdir}/ia32e*
1099 %{_rpmlibdir}/x86_64*
1102 # must be here for "Requires: rpm-*prov" to work
1103 %{_rpmlibdir}/macros.java
1104 %{_rpmlibdir}/macros.mono
1105 %{_rpmlibdir}/macros.perl
1106 %{_rpmlibdir}/macros.php
1107 # not used yet ... these six depend on perl
1108 #%attr(755,root,root) %{_rpmlibdir}/http.req
1109 #%attr(755,root,root) %{_rpmlibdir}/magic.prov
1110 #%attr(755,root,root) %{_rpmlibdir}/magic.req
1111 #%{_rpmlibdir}/sql.prov
1112 #%{_rpmlibdir}/sql.req
1113 #%{_rpmlibdir}/tcl.req
1115 %attr(755,root,root) %{_bindir}/gendiff
1116 %attr(755,root,root) %{_bindir}/rpmbuild
1118 %{_mandir}/man1/gendiff.1*
1119 %{_mandir}/man8/rpmbuild.8*
1120 %lang(ja) %{_mandir}/ja/man8/rpmbuild.8*
1121 %lang(pl) %{_mandir}/pl/man1/gendiff.1*
1122 %lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
1125 %defattr(644,root,root,755)
1126 %attr(755,root,root) %{_rpmlibdir}/java-find-requires
1127 # needs jar (any jdk), jcf-dump (gcc-java) to work
1128 %attr(755,root,root) %{_rpmlibdir}/javadeps.sh
1131 %defattr(644,root,root,755)
1132 %attr(755,root,root) %{_rpmlibdir}/perl.*
1133 #%attr(755,root,root) %{_rpmlibdir}/perldeps.pl
1134 #%attr(755,root,root) %{_rpmlibdir}/find-perl-*
1135 #%attr(755,root,root) %{_rpmlibdir}/find-*.perl
1136 #%attr(755,root,root) %{_rpmlibdir}/find-prov.pl
1137 #%attr(755,root,root) %{_rpmlibdir}/find-req.pl
1138 #%attr(755,root,root) %{_rpmlibdir}/get_magic.pl
1141 %defattr(644,root,root,755)
1142 %{_rpmlibdir}/macros.python
1143 %attr(755,root,root) %{_rpmlibdir}/pythondeps.sh
1146 %defattr(644,root,root,755)
1147 %attr(755,root,root) %{_rpmlibdir}/php*
1148 %attr(755,root,root) %{_rpmlibdir}/find-php*
1151 %files -n python-rpm
1152 %defattr(644,root,root,755)
1153 %dir %{py_sitedir}/rpm
1154 %attr(755,root,root) %{py_sitedir}/rpm/*.so
1155 %{py_sitedir}/rpm/*.py[co]