3 # - when adopting, use 4.5 ticket for checklist: https://bugs.launchpad.net/pld-linux/+bug/262985
6 %bcond_without apidocs # don't generate documentation with doxygen
7 %bcond_without python3 # don't build python bindings
8 %bcond_without plugins # build plugins
9 %bcond_without recommends_tags # build without Recommends tag (bootstrapping)
10 %bcond_with imaevm # build with IMA/EVM support (requires libimaevm from ima-evm-utils)
12 %define db_ver 5.3.28.0
16 %if %{_ver_ge '%{_rpmversion}' '4.12'} && %{_ver_lt '%{_rpmversion}' '5.0'}
17 %define with_recommends_tags
20 Summary: RPM Package Manager
21 Summary(de.UTF-8): RPM Packet-Manager
22 Summary(es.UTF-8): Gestor de paquetes RPM
23 Summary(pl.UTF-8): Aplikacja do zarządzania pakietami RPM
24 Summary(pt_BR.UTF-8): Gerenciador de pacotes RPM
25 Summary(ru.UTF-8): Менеджер пакетов от RPM
26 Summary(uk.UTF-8): Менеджер пакетів від RPM
31 License: GPL v2 / LGPL v2.1
33 Source0: http://ftp.rpm.org/releases/rpm-4.16.x/%{name}-%{version}.tar.bz2
34 # Source0-md5: 434e166a812e35ef181f6dd176326920
35 Source1: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
36 # Source1-md5: 23914bb49fafe7153cee87126d966461
39 Source4: %{name}.sysconfig
40 Source5: %{name}.groups
41 Source6: %{name}-groups-po.awk
42 Source7: %{name}-install-tree
43 Source8: %{name}-hrmib-cache
44 Source9: %{name}-user_group.sh
45 # http://svn.pld-linux.org/banner.sh/
47 Source11: %{name}.noautoprov
48 Source12: %{name}.noautoprovfiles
49 Source13: %{name}.noautoreq
50 Source14: %{name}.noautoreqfiles
52 Source16: %{name}db_checkversion.c
53 Source17: %{name}db_reset.c
54 Source18: dbupgrade.sh
55 Patch0: %{name}-man_pl.patch
56 Patch1: %{name}-popt-aliases.patch
57 Patch2: %{name}-perl-macros.patch
58 Patch3: %{name}-perl-req-perlfile.patch
59 Patch4: %{name}-scripts-closefds.patch
60 Patch6: %{name}-perl_req-INC_dirs.patch
61 Patch7: %{name}-debuginfo.patch
62 Patch8: %{name}-libtool-deps.patch
63 Patch9: %{name}-builddir-readlink.patch
64 Patch10: %{name}-changelog_order_check_nonfatal.patch
65 Patch11: %{name}-postun-nofail.patch
66 Patch12: %{name}-clean-docdir.patch
67 Patch13: %{name}-perl-magic.patch
68 Patch14: %{name}-ignore-missing-macro-files.patch
70 Patch16: rpm5-db-compat.patch
71 Patch17: python-internal-build.patch
72 Patch18: rpmversion.patch
73 Patch19: pkgconfig.patch
74 Patch20: uname-deps.patch
75 Patch21: aarch64.patch
77 BuildRequires: acl-devel
78 BuildRequires: db-devel >= %{db_ver}
79 BuildRequires: autoconf >= 2.63
80 BuildRequires: automake >= 1.4
81 BuildRequires: bzip2-devel >= 1.0.2-17
82 BuildRequires: elfutils-devel >= 0.108
83 BuildRequires: gettext-tools >= 0.19.2
84 BuildRequires: libarchive-devel
85 BuildRequires: libcap-devel
86 BuildRequires: libmagic-devel
87 BuildRequires: libgcrypt-devel
89 BuildRequires: audit-libs-devel
90 BuildRequires: dbus-devel
91 %{?with_imaevm:BuildRequires: libimaevm-devel >= 1.0}
92 BuildRequires: libselinux-devel >= 2.1.0
94 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
95 BuildRequires: libstdc++-devel
96 BuildRequires: libtool >= 1:1.4.2-9
97 BuildRequires: ossp-uuid-devel
98 BuildRequires: patch >= 2.2
99 BuildRequires: pkgconfig(lua) >= 5.1
100 BuildRequires: popt-devel >= %{popt_ver}
101 BuildRequires: python3-modules
103 BuildRequires: python3-devel
104 BuildRequires: rpm-pythonprov
105 BuildRequires: rpmbuild(macros) >= 1.750
107 BuildRequires: sqlite3-devel >= 3.22.0
109 BuildRequires: xz-devel
110 BuildRequires: zlib-devel
111 BuildRequires: zstd-devel
113 BuildRequires: doxygen
114 BuildRequires: ghostscript
115 BuildRequires: graphviz
116 BuildRequires: tetex-pdftex
118 Requires(posttrans): coreutils
119 Requires: %{name}-base = %{epoch}:%{version}-%{release}
120 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
121 Requires: rpm-pld-macros >= 1.744
122 Requires: FHS >= 3.0-2
124 Requires: popt >= %{popt_ver}
125 %if %{with recommends_tags}
126 Recommends: rpm-plugin-audit
127 Recommends: rpm-plugin-prioreset
128 Recommends: rpm-plugin-syslog
129 Recommends: rpm-plugin-systemd-inhibit
131 Obsoletes: rpm-utils-perl
132 Obsoletes: rpm-utils-static
133 Conflicts: glibc < 2.2.92
134 # db4.6 poldek needed
135 Conflicts: poldek < 0.21-0.20070703.00.3
136 # segfaults with lzma 0.42.2
137 Conflicts: lzma-libs < 4.999.3
138 Conflicts: util-vserver < 0.30.216-1.pre3034.7
139 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
141 %define _binary_payload w9.gzdio
143 # don't require very fresh rpm.macros to build
144 %define find_lang sh ./scripts/find-lang.sh $RPM_BUILD_ROOT
145 %define ix86 i386 i486 i586 i686 athlon geode pentium3 pentium4
146 %define ppc ppc ppc7400 ppc7450
147 %define x8664 amd64 ia32e x86_64
149 %define _rpmlibdir /usr/lib/rpm
152 RPM is a powerful package manager, which can be used to build,
153 install, query, verify, update, and uninstall individual software
154 packages. A package consists of an archive of files, and package
155 information, including name, version, and description.
157 %description -l de.UTF-8
158 RPM ist ein kräftiger Packet-Manager, der verwendet sein kann zur
159 Installation, Anfrage, Verifizierung, Aktualisierung und
160 Uninstallation individueller Softwarepakete. Ein Paket besteht aus
161 einem Archiv Dateien und Paketinformation, inklusive Name, Version und
164 %description -l es.UTF-8
165 RPM es un poderoso administrador de paquetes, que puede ser usado para
166 construir, instalar, pesquisar, verificar, actualizar y desinstalar
167 paquetes individuales de software. Un paquete consiste en un
168 almacenaje de archivos, y información sobre el paquete, incluyendo
169 nombre, versión y descripción.
171 %description -l pl.UTF-8
172 RPM jest doskonałym programem zarządzającym pakietami. Umożliwia on
173 przebudowanie, instalację czy weryfikację dowolnego pakietu.
174 Informacje dotyczące każdego pakietu, takie jak jego opis, lista
175 plików wchodzących w skład pakietu, zależności od innych pakietów, są
176 przechowywane w bazie danych i można je uzyskać za pomocą opcji
177 odpytywania programu rpm.
179 %description -l pt_BR.UTF-8
180 RPM é um poderoso gerenciador de pacotes, que pode ser usado para
181 construir, instalar, pesquisar, verificar, atualizar e desinstalar
182 pacotes individuais de software. Um pacote consiste de um conjunto de
183 arquivos e informações adicionais, incluindo nome, versão e descrição
184 do pacote, permissões dos arquivos, etc.
186 %description -l ru.UTF-8
187 RPM - это мощный менеджер пакетов, который может быть использован для
188 создания, инсталляции, запросов (query), проверки, обновления и
189 удаления программных пакетов. Пакет состоит из файлового архива и
190 служебной информации, включающей название, версию, описание и другие
193 %description -l uk.UTF-8
194 RPM - це потужний менеджер пакетів, що може бути використаний для
195 створення, інсталяції, запитів (query), перевірки, поновлення та
196 видалення програмних пакетів. Пакет складається з файлового архіву та
197 службової інформації, що містить назву, версію, опис та іншу
198 інформацію про пакет.
201 Summary: RPM base package - scripts used by rpm packages themselves
202 Summary(pl.UTF-8): Podstawowy pakiet RPM - skrypty używane przez same pakiety rpm
205 Obsoletes: rpm-scripts
206 Obsoletes: vserver-rpm
209 The RPM base package contains scripts used by rpm packages themselves.
211 - scripts for adding/removing groups and users needed for rpm
213 - banner.sh to display %%banner messages from rpm scriptlets.
215 %description base -l pl.UTF-8
216 Pakiet podstawowy RPM zwiera skrypty używane przez same pakiety rpm.
218 - skrypty dodające/usuwające grupy i użytkowników dla pakietów rpm,
219 - banner.sh do pokazywania komunikatów %%banner dla skryptletów rpm.
222 Summary: RPMs library
223 Summary(pl.UTF-8): Biblioteki RPM-a
225 Requires: db >= %{db_ver}
226 Requires: libmagic >= 1.15-2
227 Requires: popt >= %{popt_ver}
229 # avoid SEGV caused by mixed db versions
230 Conflicts: poldek < 0.18.1-16
235 %description lib -l pl.UTF-8
239 Summary: Header files for rpm libraries
240 Summary(de.UTF-8): Header-Dateien für rpm Libraries
241 Summary(es.UTF-8): Archivos de inclusión y bibliotecas para programas de manipulación de paquetes rpm
242 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek rpm
243 Summary(pt_BR.UTF-8): Arquivos de inclusão e bibliotecas para programas de manipulação de pacotes RPM
244 Summary(ru.UTF-8): Хедеры и библиотеки для программ, работающих с rpm-пакетами
245 Summary(uk.UTF-8): Хедери та бібліотеки для програм, що працюють з пакетами rpm
246 Group: Development/Libraries
247 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
248 Requires: bzip2-devel
249 Requires: db-devel >= %{db_ver}
250 Requires: elfutils-devel
251 Requires: libmagic-devel
252 Requires: libgcrypt-devel
254 Requires: libselinux-devel
255 Requires: libsemanage-devel
256 Requires: libsepol-devel
258 Requires: popt-devel >= %{popt_ver}
262 The RPM packaging system includes C libraries that make it easy to
263 manipulate RPM packages and databases. They are intended to ease the
264 creation of graphical package managers and other tools that need
265 intimate knowledge of RPM packages. This package contains header files
268 %description devel -l de.UTF-8
269 Der RPM-Packensystem enthält eine C-Library, die macht es einfach
270 RPM-Pakete und Dateibanken zu manipulieren. Er eignet sich für
271 Vereinfachung des Schaffens grafischer Paket-Manager und anderer
272 Werkzeuge, die intime Kenntnis von RPM-Paketen brauchen.
274 %description devel -l es.UTF-8
275 El sistema de empaquetado RPM incluye una biblioteca C que vuelve
276 fácil la manipulación de paquetes y bases de datos RPM. Su objetivo es
277 facilitar la creación de administradores gráficos de paquetes y otras
278 herramientas que necesiten un conocimiento profundo de paquetes RPM.
280 %description devel -l pl.UTF-8
281 System RPM zawiera biblioteki C, które ułatwiają manipulowanie
282 pakietami RPM oraz bazami danych. W zamiarze ma to uprościć tworzenie
283 graficznych programów zarządzających pakietami oraz innych narzędzi,
284 które wymagają szczegółowej wiedzy na temat pakietów RPM. Ten pakiet
285 zawiera pliki nagłówkowe wspomnianych bibliotek.
287 %description devel -l pt_BR.UTF-8
288 O sistema de empacotamento RPM inclui uma biblioteca C que torna fácil
289 a manipulação de pacotes e bases de dados RPM. Seu objetivo é
290 facilitar a criação de gerenciadores gráficos de pacotes e outras
291 ferramentas que precisem de conhecimento profundo de pacotes RPM.
293 %description devel -l ru.UTF-8
294 Система управления пакетами RPM содержит библиотеку C, которая
295 упрощает манипуляцию пакетами RPM и соответствующими базами данных.
296 Эта библиотека предназначена для облегчения создания графических
297 пакетных менеджеров и других утилит, которым необходимо работать с
300 %description devel -l uk.UTF-8
301 Система керування пакетами RPM містить бібліотеку C, котра спрощує
302 роботу з пакетами RPM та відповідними базами даних. Ця бібліотека
303 призначена для полегшення створення графічних пакетних менеджерів та
304 інших утиліт, що працюють з пакетами RPM.
307 Summary: Additional utilities for managing RPM packages and database
308 Summary(de.UTF-8): Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
309 Summary(pl.UTF-8): Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
310 Group: Applications/File
311 Requires: %{name} = %{epoch}:%{version}-%{release}
312 Requires: popt >= %{popt_ver}
313 %if %{with recommends_tags}
317 Conflicts: filesystem-debuginfo < 3.0-16
320 Additional utilities for managing RPM packages and database.
322 %description utils -l de.UTF-8
323 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
325 %description utils -l pl.UTF-8
326 Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
329 Summary: Scripts for building binary RPM packages
330 Summary(de.UTF-8): Scripts fürs Bauen binärer RPM-Pakete
331 Summary(pl.UTF-8): Skrypty pomocnicze do budowania binarnych RPM-ów
332 Summary(pt_BR.UTF-8): Scripts e programas executáveis usados para construir pacotes
333 Summary(ru.UTF-8): Скрипты и утилиты, необходимые для сборки пакетов
334 Summary(uk.UTF-8): Скрипти та утиліти, необхідні для побудови пакетів
335 Group: Applications/File
336 Requires(pretrans): coreutils
337 Requires(pretrans): findutils
338 Requires: %{name}-utils = %{epoch}:%{version}-%{release}
339 Requires: rpm-pld-macros-build >= 1.744
343 Requires: chrpath >= 0.10-4
347 Requires: file >= 4.17
351 Requires: gcc >= 3.0.3
355 Requires: glibc-devel
362 Requires: tar >= 1:1.22
366 Provides: rpmbuild(noauto) = 3
368 Conflicts: automake < 1:1.7.9-2
369 Conflicts: libtool < 2:1.5-13
373 Scripts for building binary RPM packages.
375 %description build -l de.UTF-8
376 Scripts fürs Bauen binärer RPM-Pakete.
378 %description build -l pl.UTF-8
379 Skrypty pomocnicze do budowania binarnych RPM-ów.
381 %description build -l pt_BR.UTF-8
382 Este pacote contém scripts e programas executáveis que são usados para
383 construir pacotes usando o RPM.
385 %description build -l ru.UTF-8
386 Различные вспомогательные скрипты и исполняемые программы, которые
387 используются для сборки RPM'ов.
389 %description build -l uk.UTF-8
390 Різноманітні допоміжні скрипти та утиліти, які використовуються для
394 Summary: Additional utilities for checking Perl provides/requires in RPM packages
395 Summary(de.UTF-8): Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen
396 Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM
397 Group: Applications/File
398 Requires: %{name} = %{epoch}:%{version}-%{release}
399 Requires: perl-Encode
401 Requires: perl-modules
403 %description perlprov
404 Additional utilities for checking Perl provides/requires in RPM
407 %description perlprov -l de.UTF-8
408 Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen.
410 %description perlprov -l pl.UTF-8
411 Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w
415 Summary: Python macros, which simplifies creation of RPM packages with Python software
416 Summary(pl.UTF-8): Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Pythonie
417 Group: Applications/File
418 Requires: %{name} = %{epoch}:%{version}-%{release}
420 Requires: python3-modules
421 Requires: python3-setuptools
423 %description pythonprov
424 Python macros, which simplifies creation of RPM packages with Python
427 %description pythonprov -l pl.UTF-8
428 Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
431 %package -n python3-rpm
432 Summary: Python 3 interface to RPM library
433 Summary(pl.UTF-8): Interfejs Pythona 3 do biblioteki RPM-a
434 Summary(pt_BR.UTF-8): Módulo Python 3 para aplicativos que manipulam pacotes RPM
435 Group: Development/Languages/Python
436 Requires: %{name} = %{epoch}:%{version}-%{release}
438 Obsoletes: python-rpm < 1:4.16.0
439 Obsoletes: rpm-python
441 %description -n python3-rpm
442 The python3-rpm package contains a module which permits applications
443 written in the Python 3 programming language to use the interface
444 supplied by RPM (RPM Package Manager) libraries.
446 This package should be installed if you want to develop Python 3
447 programs that will manipulate RPM packages and databases.
449 %description -n python3-rpm -l pl.UTF-8
450 Pakiet python3-rpm zawiera moduł, który pozwala aplikacjom napisanym w
451 Pythonie 3 na używanie interfejsu dostarczanego przez biblioteki
454 Pakiet ten powinien zostać zainstalowany, jeśli chcesz pisać w
455 Pythonie 3 programy manipulujące pakietami i bazami danych rpm.
457 %description -n python3-rpm -l pt_BR.UTF-8
458 O pacote python3-rpm contém um módulo que permite que aplicações
459 escritas em Python 3 utilizem a interface fornecida pelas bibliotecas
460 RPM (RPM Package Manager).
462 Esse pacote deve ser instalado se você quiser desenvolver programas em
463 Python 3 para manipular pacotes e bancos de dados RPM.
465 %package plugin-audit
466 Summary: Plugin for logging audit events on package operations
468 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
470 %description plugin-audit
471 Plugin for libaudit support
473 %package plugin-syslog
474 Summary: Plugin for syslog functionality
476 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
478 %description plugin-syslog
479 This plugin exports RPM actions to the system log.
481 %package plugin-systemd-inhibit
482 Summary: Plugin for systemd inhibit functionality
484 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
486 %description plugin-systemd-inhibit
487 This plugin blocks systemd from entering idle, sleep or shutdown while
488 an rpm transaction is running using the systemd-inhibit mechanism.
491 Summary: Plugin for IMA file signatures
493 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
495 %description plugin-ima
496 This plugin adds support for enforcing and verifying IMA file
497 signatures in an rpm.
499 %package plugin-prioreset
500 Summary: Plugin for resetting scriptlet priorities for SysV init
502 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
504 %description plugin-prioreset
505 This plugin is useful on legacy SysV init systems if you run rpm
506 transactions with nice/ionice priorities. Should not be used on
509 %package plugin-selinux
510 Summary: Plugin for SELinux functionality
512 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
513 Requires: libselinux >= 2.1.0
515 %description plugin-selinux
516 Plugin for SELinux functionality.
519 Summary: Package signing support
521 Requires: %{name}-lib = %{epoch}:%{version}-%{release}
524 This package contains support for digitally signing RPM packages.
527 Summary: RPM API documentation and guides
528 Summary(pl.UTF-8): Documentacja API RPM-a i przewodniki
533 Documentation for RPM API and guides in HTML format generated from rpm
536 %description apidocs -l pl.UTF-8
537 Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
538 źrodeł RPM-a przez doxygen.
541 %setup -q -n %{name}-%{version}%{?subver}
566 install %{SOURCE15} scripts/perl.prov.in
568 %{__mv} -f scripts/perl.req{,.in}
570 # generate Group translations to *.po
571 awk -f %{SOURCE6} %{SOURCE5}
573 install %{SOURCE16} tools/rpmdb_checkversion.c
574 install %{SOURCE17} tools/rpmdb_reset.c
576 %{__sed} -i -e '1s,/usr/bin/python,%{__python3},' scripts/pythondistdeps.py
585 # rpm checks for CPU type at runtime, but it looks better
587 -e 's|@host@|%{_target_cpu}-%{_target_vendor}-%{_target_os}|' \
588 -e 's|@host_cpu@|%{_target_cpu}|' \
589 -e 's|@host_os@|%{_target_os}|' \
593 WITH_PERL_VERSION=no \
594 __GST_INSPECT=%{_bindir}/gst-inspect-1.0 \
595 __GPG=%{_bindir}/gpg \
600 --disable-silent-rules \
607 %{?with_imaevm:--with-imaevm} \
612 --with-selinux=%{!?with_plugins:no}%{?with_plugins:yes} \
613 %{!?with_plugins:--disable-plugins} \
618 %{__cc} %{rpmcflags} tools/rpmdb_checkversion.c -o tools/rpmdb_checkversion -ldb
619 %{__cc} %{rpmcflags} tools/rpmdb_reset.c -o tools/rpmdb_reset -ldb
621 if tools/rpmdb_checkversion -V 2>&1 | grep "t match library version"; then
622 echo "Error linking rpmdb tools!"
625 if tools/rpmdb_reset -V 2>&1 | grep "t match library version"; then
626 echo "Error linking rpmdb tools!"
636 rm -rf $RPM_BUILD_ROOT
637 install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/{rpm,pki/rpm-gpg}} \
638 $RPM_BUILD_ROOT{/var/lib/{banner,rpm},/var/cache/hrmib}
640 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
643 pkgconfigdir=%{_pkgconfigdir} \
644 DESTDIR=$RPM_BUILD_ROOT
647 %ifnarch %{ix86} %{x8664} x32
648 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/athlon-linux/macros
649 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/geode-linux/macros
650 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i386-linux/macros
651 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i486-linux/macros
652 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i586-linux/macros
653 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i686-linux/macros
654 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/pentium3-linux/macros
655 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/pentium4-linux/macros
658 %ifnarch %{x8664} x32
659 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/amd64-linux/macros
660 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ia32e-linux/macros
661 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/x32-linux/macros
662 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/x86_64-linux/macros
666 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/m68k-linux/macros
667 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc32dy4-linux/macros
668 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc64*-linux/macros
669 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc8260-linux/macros
670 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc8560-linux/macros
671 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc-linux/macros
672 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc*series-linux/macros
676 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/aarch64-linux/macros
679 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/alpha*-linux/macros
680 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/arm*-linux/macros
681 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ia64-linux/macros
682 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/mips*-linux/macros
683 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/riscv64-linux/macros
684 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/s390*-linux/macros
685 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/sh*-linux/macros
686 rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/sparc*-linux/macros
688 %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/find-lang.sh
690 install -d $RPM_BUILD_ROOT%{_rpmlibdir}/pld
692 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
693 cp -p %{SOURCE9} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
694 cp -p %{SOURCE8} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
695 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rpm
697 cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/banner.sh
699 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros
700 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.lang
701 cp -p %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov
702 cp -p %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles
703 cp -p %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq
704 cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles
706 cp -p tools/rpmdb_checkversion $RPM_BUILD_ROOT%{_rpmlibdir}/
707 cp -p tools/rpmdb_reset $RPM_BUILD_ROOT%{_rpmlibdir}/
708 cp -p %{SOURCE18} $RPM_BUILD_ROOT%{_rpmlibdir}/dbupgrade.sh
711 %{__mv} $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
712 ln -sf /bin/rpm $RPM_BUILD_ROOT%{_bindir}/rpmquery
713 ln -sf /bin/rpm $RPM_BUILD_ROOT%{_bindir}/rpmverify
715 # move essential libs to /lib (libs that /bin/rpm links to)
716 for a in librpm.so librpmbuild.so librpmio.so librpmsign.so; do
717 mv -f $RPM_BUILD_ROOT%{_libdir}/${a}.* $RPM_BUILD_ROOT/%{_lib}
718 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/${a}.*.*.*) $RPM_BUILD_ROOT%{_libdir}/${a}
721 #./rpmdb --macros=macros --rcfile=rpmrc --dbpath=/home/users/baggins/devel/PLD/rpm/BUILD/rpm-4.15.1/x/ --initdb
723 # Make sure we have bdb set a default backend
724 grep -qE "db_backend[[:blank:]]+bdb" $RPM_BUILD_ROOT%{_rpmlibdir}/macros
727 # Remove anything that rpm make install might put there
728 %{__rm} -rf $RPM_BUILD_ROOT%{py3_sitedir}
734 %{__rm} $RPM_BUILD_ROOT%{_libdir}/rpm-plugins/*.la
736 # wrong location, not used anyway
737 %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log}
742 rm -rf $RPM_BUILD_ROOT
745 if [ -e /var/lib/rpm/Packages ] && \
746 ! %{_rpmlibdir}/rpmdb_checkversion -h /var/lib/rpm -d /var/lib/rpm; then
747 if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && \
748 /bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release}; then
750 echo "Backup of the rpm database has been created in /var/lib/rpm.rpmbackup-%{version}-%{release}"
754 echo 'If poldek aborts after migration with rpmdb error, this is expected behaviour,'
755 echo 'you should ignore it and restart poldek'
757 %{_rpmlibdir}/dbupgrade.sh
760 %triggerpostun -- %{name} < 4.4.9-44
761 %{_rpmlibdir}/hrmib-cache
763 %post lib -p /sbin/ldconfig
764 %postun lib -p /sbin/ldconfig
767 find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
769 %files -f %{name}.lang
770 %defattr(644,root,root,755)
771 %doc ChangeLog CREDITS README
773 %dir /etc/pki/rpm-gpg
774 /etc/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
776 %attr(755,root,root) /bin/rpm
777 %attr(755,root,root) %{_bindir}/rpmdb
778 %attr(755,root,root) %{_bindir}/rpmkeys
779 %attr(755,root,root) %{_bindir}/rpmquery
780 %attr(755,root,root) %{_bindir}/rpmverify
782 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros
783 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros.lang
785 %{_mandir}/man8/rpm.8*
786 %{_mandir}/man8/rpmdb.8*
787 %{_mandir}/man8/rpmkeys.8*
788 %{_mandir}/man8/rpm-misc.8*
789 %{?with_plugins:%{_mandir}/man8/rpm-plugins.8*}
790 %lang(fr) %{_mandir}/fr/man8/rpm.8*
791 %lang(ja) %{_mandir}/ja/man8/rpm.8*
792 %lang(ko) %{_mandir}/ko/man8/rpm.8*
793 %lang(pl) %{_mandir}/pl/man8/rpm.8*
794 %lang(ru) %{_mandir}/ru/man8/rpm.8*
795 %lang(sk) %{_mandir}/sk/man8/rpm.8*
799 # exported package NVRA (stamped with install tid)
800 # net-snmp hrSWInstalledName queries, bash-completions
801 %dir /var/cache/hrmib
803 %{_rpmlibdir}/rpmpopt*
806 %dir %{_rpmlibdir}/macros.d
807 %dir %{_rpmlibdir}/platform
808 %{_rpmlibdir}/platform/noarch-*
809 %ifarch %{ix86} %{x8664} x32
810 %{_rpmlibdir}/platform/athlon*
811 %{_rpmlibdir}/platform/geode*
812 %{_rpmlibdir}/platform/i?86*
813 %{_rpmlibdir}/platform/pentium*
816 %{_rpmlibdir}/platform/amd64*
817 %{_rpmlibdir}/platform/ia32e*
818 %{_rpmlibdir}/platform/x86_64*
819 %{_rpmlibdir}/platform/x32*
822 %{_rpmlibdir}/platform/alpha*
825 %{_rpmlibdir}/platform/aarch64*
828 %{_rpmlibdir}/platform/ia64*
830 %ifarch mips mipsel mips64 mips64el
831 %{_rpmlibdir}/platform/mips*
834 %{_rpmlibdir}/platform/ppc*
836 %ifarch sparc sparc64
837 %{_rpmlibdir}/platform/sparc*
840 %dir %{_rpmlibdir}/pld
842 %attr(755,root,root) %{_rpmlibdir}/hrmib-cache
844 %attr(755,root,root) %{_rpmlibdir}/dbupgrade.sh
845 %attr(755,root,root) %{_rpmlibdir}/rpmdb_checkversion
846 %attr(755,root,root) %{_rpmlibdir}/rpmdb_reset
847 %attr(755,root,root) %{_rpmlibdir}/rpmdb_dump
848 %attr(755,root,root) %{_rpmlibdir}/rpmdb_load
850 # valgrind suppression file for rpm
851 %{_rpmlibdir}/rpm.supp
854 %defattr(644,root,root,755)
855 %dir %{_sysconfdir}/rpm
856 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rpm
858 %attr(755,root,root) %{_bindir}/banner.sh
859 %attr(755,root,root) %{_rpmlibdir}/user_group.sh
863 %defattr(644,root,root,755)
864 %attr(755,root,root) /%{_lib}/librpm.so.9
865 %attr(755,root,root) /%{_lib}/librpm.so.%{sover}
866 %attr(755,root,root) /%{_lib}/librpmbuild.so.9
867 %attr(755,root,root) /%{_lib}/librpmbuild.so.%{sover}
868 %attr(755,root,root) /%{_lib}/librpmio.so.9
869 %attr(755,root,root) /%{_lib}/librpmio.so.%{sover}
870 %attr(755,root,root) /%{_lib}/librpmsign.so.9
871 %attr(755,root,root) /%{_lib}/librpmsign.so.%{sover}
872 %{?with_plugins:%dir %{_libdir}/rpm-plugins}
875 %defattr(644,root,root,755)
876 %attr(755,root,root) %{_libdir}/librpm.so
877 %attr(755,root,root) %{_libdir}/librpmbuild.so
878 %attr(755,root,root) %{_libdir}/librpmio.so
879 %attr(755,root,root) %{_libdir}/librpmsign.so
880 %{_libdir}/librpm*.la
882 %{_pkgconfigdir}/*.pc
885 %defattr(644,root,root,755)
886 %attr(755,root,root) %{_bindir}/rpm2archive
887 %attr(755,root,root) %{_bindir}/rpm2cpio
888 %attr(755,root,root) %{_bindir}/rpmgraph
889 %attr(755,root,root) %{_rpmlibdir}/rpm2cpio.sh
890 %attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh
891 %attr(755,root,root) %{_rpmlibdir}/tgpg
892 %attr(755,root,root) %{_rpmlibdir}/debugedit
893 %attr(755,root,root) %{_rpmlibdir}/rpmdeps
894 %{_mandir}/man8/rpm2archive.8*
895 %{_mandir}/man8/rpm2cpio.8*
896 %{_mandir}/man8/rpmdeps.8*
897 %{_mandir}/man8/rpmgraph.8*
898 %lang(ja) %{_mandir}/ja/man8/rpm2cpio.8*
899 %lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
900 %lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
901 %lang(ru) %{_mandir}/ru/man8/rpm2cpio.8*
902 %lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
903 %lang(ja) %{_mandir}/ja/man8/rpmgraph.8*
904 %lang(pl) %{_mandir}/pl/man8/rpmgraph.8*
907 %defattr(644,root,root,755)
908 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/noauto*
909 %attr(755,root,root) %{_rpmlibdir}/brp-*
910 %attr(755,root,root) %{_rpmlibdir}/check-files
911 %attr(755,root,root) %{_rpmlibdir}/install-build-tree
912 %attr(755,root,root) %{_rpmlibdir}/elfdeps
913 %attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh
914 # needs hacked pkg-config to return anything
915 %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh
916 %attr(755,root,root) %{_rpmlibdir}/mkinstalldirs
918 %attr(755,root,root) %{_rpmlibdir}/fontconfig.prov
919 # must be here for "Requires: rpm-*prov" to work
920 #%{_rpmlibdir}/macros.d/cmake
921 #%{_rpmlibdir}/macros.d/gstreamer
922 #%{_rpmlibdir}/macros.d/libtool
923 #%{_rpmlibdir}/macros.d/perl
924 #%{_rpmlibdir}/macros.d/pkgconfig
925 #%{_rpmlibdir}/macros.d/python
926 #%{_rpmlibdir}/macros.d/selinux
927 #%{_rpmlibdir}/macros.d/tcl
928 #%{_rpmlibdir}/macros.rpmbuild
930 %attr(755,root,root) %{_rpmlibdir}/check-buildroot
931 %attr(755,root,root) %{_rpmlibdir}/check-prereqs
932 %attr(755,root,root) %{_rpmlibdir}/check-rpaths
933 %attr(755,root,root) %{_rpmlibdir}/check-rpaths-worker
934 %attr(755,root,root) %{_rpmlibdir}/find-provides
935 %attr(755,root,root) %{_rpmlibdir}/find-requires
936 %attr(755,root,root) %{_rpmlibdir}/ocamldeps.sh
937 %attr(755,root,root) %{_rpmlibdir}/script.req
938 %attr(755,root,root) %{_rpmlibdir}/sepdebugcrcfix
940 %dir %{_rpmlibdir}/fileattrs
941 %{_rpmlibdir}/fileattrs/debuginfo.attr
942 %{_rpmlibdir}/fileattrs/desktop.attr
943 %{_rpmlibdir}/fileattrs/elf.attr
944 %{_rpmlibdir}/fileattrs/font.attr
945 %{_rpmlibdir}/fileattrs/libtool.attr
946 %{_rpmlibdir}/fileattrs/metainfo.attr
947 %{_rpmlibdir}/fileattrs/ocaml.attr
948 %{_rpmlibdir}/fileattrs/perl.attr
949 %{_rpmlibdir}/fileattrs/perllib.attr
950 %{_rpmlibdir}/fileattrs/pkgconfig.attr
951 %{_rpmlibdir}/fileattrs/python.attr
952 %{_rpmlibdir}/fileattrs/pythondist.attr
953 %{_rpmlibdir}/fileattrs/script.attr
955 %attr(755,root,root) %{_bindir}/gendiff
956 %attr(755,root,root) %{_bindir}/rpmbuild
957 %attr(755,root,root) %{_bindir}/rpmspec
959 %{_mandir}/man1/gendiff.1*
960 %lang(pl) %{_mandir}/pl/man1/gendiff.1*
961 %{_mandir}/man8/rpmbuild.8*
962 %lang(ja) %{_mandir}/ja/man8/rpmbuild.8*
963 %lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
964 %{_mandir}/man8/rpmspec.8*
967 %defattr(644,root,root,755)
968 %attr(755,root,root) %{_rpmlibdir}/perl.*
971 %defattr(644,root,root,755)
972 %attr(755,root,root) %{_rpmlibdir}/pythondistdeps.py
975 %files -n python3-rpm
976 %defattr(644,root,root,755)
977 %dir %{py3_sitedir}/rpm
978 %attr(755,root,root) %{py3_sitedir}/rpm/*.so
979 %{py3_sitedir}/rpm/*.py
980 %{py3_sitedir}/rpm-%{version}-py*.egg-info
981 %{py3_sitedir}/rpm/__pycache__
986 %defattr(644,root,root,755)
987 %attr(755,root,root) %{_libdir}/rpm-plugins/audit.so
988 %{_mandir}/man8/rpm-plugin-audit.8*
991 %defattr(644,root,root,755)
992 %attr(755,root,root) %{_libdir}/rpm-plugins/syslog.so
993 %{_mandir}/man8/rpm-plugin-syslog.8*
995 %files plugin-systemd-inhibit
996 %defattr(644,root,root,755)
997 %attr(755,root,root) %{_libdir}/rpm-plugins/systemd_inhibit.so
998 %{_mandir}/man8/rpm-plugin-systemd-inhibit.8*
1001 %defattr(644,root,root,755)
1002 %attr(755,root,root) %{_libdir}/rpm-plugins/ima.so
1003 %{_mandir}/man8/rpm-plugin-ima.8*
1005 %files plugin-prioreset
1006 %defattr(644,root,root,755)
1007 %attr(755,root,root) %{_libdir}/rpm-plugins/prioreset.so
1008 %{_mandir}/man8/rpm-plugin-prioreset.8*
1010 %files plugin-selinux
1011 %defattr(644,root,root,755)
1012 %attr(755,root,root) %{_libdir}/rpm-plugins/selinux.so
1013 %{_mandir}/man8/rpm-plugin-selinux.8*
1017 %defattr(644,root,root,755)
1018 %attr(755,root,root) %{_bindir}/rpmsign
1019 %{_mandir}/man8/rpmsign.8*
1023 %defattr(644,root,root,755)
1024 %doc doc/librpm/html/*