]> git.pld-linux.org Git - packages/rpm.git/blame - rpm.spec
- updated to 5.0
[packages/rpm.git] / rpm.spec
CommitLineData
52c10eff 1#
2# TODO:
644d8958
JB
3# - python(abi) cap is not provided automatically because /usr/lib*/libpython2*.so.*
4# matches ELF first
a245b6ce 5# - repackaging when lzma is not installed (todo: fix digest signature of header)
351a0199
JB
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
25ac75ae 10# - TODO: add macros for some ppc, mipsel, alpha and sparc
10abbd40 11#
89427592 12# Conditional build:
01d7a578 13%bcond_with static # build static rpm+rpmi
4af66a2c
JB
14%bcond_with autoreqdep # autogenerate package name deps in addition to sonames/perl(X)
15%bcond_without python # don't build python bindings
16%bcond_without selinux # build without selinux support
0dc47449 17%bcond_without suggest_tags # build without Suggest tag (bootstrapping)
33be5db0 18%bcond_with neon # build with HTTP/WebDAV support (neon library)
858aa7d0 19%bcond_without db # BerkeleyDB
241257bf 20%bcond_with sqlite # build with SQLite support
858aa7d0 21%bcond_with sqlite_dbapi # default database backend is sqlite
89427592
JB
22# force_cc - force using __cc other than "%{_target_cpu}-pld-linux-gcc"
23# force_cxx - force using __cxx other than "%{_target_cpu}-pld-linux-g++"
24# force_cpp - force using __cpp other than "%{_target_cpu}-pld-linux-gcc -E"
858aa7d0
AM
25#
26%if %{with sqlite_dbapi}
27%define with_sqlite 1
28%endif
54bfdf99 29
858aa7d0 30%if %{without db} && %{without sqlite}
25ac75ae 31%{error:Need db or sqlite}
858aa7d0
AM
32ERROR
33%endif
34
35#
003a039e 36# versions of required libraries
cd3df89d 37%define reqdb_ver 4.6.18
644d8958 38%define reqpopt_ver 1.10.8
33be5db0 39%define beecrypt_ver 2:4.1.2-4
7a67fa3a 40%define find_lang_rev 1.25
241257bf 41%define sover 5.0
e5f02e49 42Summary: RPM Package Manager
4ea2ed33
ER
43Summary(de.UTF-8): RPM Packet-Manager
44Summary(es.UTF-8): Gestor de paquetes RPM
45Summary(pl.UTF-8): Aplikacja do zarządzania pakietami RPM
46Summary(pt_BR.UTF-8): Gerenciador de pacotes RPM
47Summary(ru.UTF-8): Менеджер пакетов от RPM
48Summary(uk.UTF-8): Менеджер пакетів від RPM
76214164 49Name: rpm
fa77ed17 50Version: 5.0.1
1453a533 51Release: 0.1
b0434f77 52License: LGPL
76214164 53Group: Base
1453a533 54Source0: http://rpm5.org/files/rpm/rpm-5.0/%{name}-%{version}.tar.gz
fa77ed17 55# Source0-md5: 4a19c36b9fd99aca2a96ee5408af4fe3
ff7bc1e6 56Source1: %{name}.groups
c2673e18 57Source2: %{name}.platform
ff7bc1e6 58Source3: %{name}-install-tree
80b8a1f9
JB
59Source4: %{name}-find-spec-bcond
60Source5: %{name}-find-lang
61Source6: %{name}-groups-po.awk
62Source7: %{name}-compress-doc
63Source8: %{name}-check-files
64Source9: %{name}-php-provides
65Source10: %{name}-php-requires
fbc0ff35 66Source11: %{name}.sysinfo
80b8a1f9 67Source12: perl.prov
d0370fe5 68Source13: %{name}-user_group.sh
69Source14: %{name}.sysconfig
1f625675
JB
70Source15: %{name}-macros.java
71Source16: %{name}-java-requires
a4b7ef27 72# http://svn.pld-linux.org/banner.sh/
1c2e2d8e 73Source17: banner.sh
cf198901 74Source18: %{name}-pld.macros
25ac75ae
AM
75
76Source100: %{name}-macros-athlon
77Source101: %{name}-macros-i386
78Source102: %{name}-macros-i486
79Source103: %{name}-macros-i586
80Source104: %{name}-macros-i686
81Source105: %{name}-macros-noarch
c8da1e4e
AM
82Source106: %{name}-macros-pentium3
83Source107: %{name}-macros-pentium4
84Source108: %{name}-macros-ppc
85Source109: %{name}-macros-x86_64
86Source110: %{name}-macros-ia32e
87Source111: %{name}-macros-amd64
25ac75ae 88
f14234e4 89Patch0: %{name}-pl.po.patch
2f0ee4ec 90Patch1: %{name}-man_pl.patch
b174986a 91Patch3: %{name}-rpmpopt.patch
3465efba 92Patch4: %{name}-perl-macros.patch
c1768ce2 93Patch5: %{name}-perl-req-perlfile.patch
f14234e4
JB
94Patch6: %{name}-noexpand.patch
95Patch7: %{name}-scripts-closefds.patch
7a3b1f24 96Patch8: %{name}-php-macros.patch
f14234e4
JB
97Patch9: %{name}-gettext-in-header.patch
98Patch10: %{name}-compress-doc.patch
7a3b1f24 99
f14234e4 100Patch14: %{name}-etc_dir.patch
f14234e4 101Patch16: %{name}-php-deps.patch
7a3b1f24 102
f14234e4 103Patch18: %{name}-perl_req.patch
7a3b1f24 104
644d8958 105Patch23: %{name}-pkgconfigdeps.patch
7a3b1f24 106
f14234e4
JB
107Patch26: %{name}-notsc.patch
108Patch27: %{name}-hack-norpmlibdep.patch
7a3b1f24 109
f14234e4
JB
110Patch31: %{name}-missing-prototypes.patch
111Patch32: %{name}-pld-autodep.patch
f14234e4
JB
112Patch34: %{name}-epoch0.patch
113Patch35: %{name}-perl_req-INC_dirs.patch
114Patch36: %{name}-debuginfo.patch
115Patch37: %{name}-doxygen_hack.patch
7a3b1f24 116
65f4f2e2 117Patch41: %{name}-reduce-stack-usage.patch
bb98669b 118Patch42: %{name}-old-fileconflicts-behaviour.patch
644d8958 119
5790b583 120Patch46: %{name}-mono.patch
8482995c 121Patch47: %{name}-javadeps.patch
fbc0ff35 122
80e9f34d 123Patch52: %{name}-morearchs.patch
644d8958 124
d6080f70 125Patch55: %{name}-truncate-cvslog.patch
644d8958 126
a245b6ce 127Patch58: %{name}-repackage-wo-lzma.patch
59a562c2 128Patch59: %{name}-libtool-deps.patch
7a3b1f24 129
7ffa7946 130Patch61: %{name}-sparc64.patch
955f2725 131URL: http://rpm5.org/
b60c74c3 132BuildRequires: autoconf >= 2.57
644d8958 133BuildRequires: automake >= 1.4
87ef0d95 134BuildRequires: beecrypt-devel >= %{beecrypt_ver}
33be5db0 135BuildRequires: bzip2-devel >= 1.0.2-17
858aa7d0 136%{?with_db:BuildRequires: db-devel >= %{reqdb_ver}}
33be5db0 137BuildRequires: elfutils-devel >= 0.108
edef21f2
JB
138%ifnarch sparc64
139# -fPIE/-pie
140BuildRequires: gcc >= 5:3.4
141%endif
b59d7b6c 142BuildRequires: gettext-devel >= 0.11.4-2
241257bf 143BuildRequires: libmagic-devel
8e159d42 144%{?with_selinux:BuildRequires: libselinux-devel >= 1.18}
84cdee7a
JB
145# needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
146BuildRequires: libstdc++-devel
b60c74c3 147BuildRequires: libtool >= 1:1.4.2-9
33be5db0 148%if %{with neon}
fe861705 149BuildRequires: libxml2-devel
83d6a3fe 150BuildRequires: neon-devel >= 0.25.5
33be5db0 151%endif
7973b351 152BuildRequires: patch >= 2.2
1d49ffbc 153BuildRequires: popt-devel >= %{reqpopt_ver}
849b65cd 154%{?with_python:BuildRequires: python-devel >= 1:2.5}
155BuildRequires: python-modules >= 1:2.5
3cfc33fc 156BuildRequires: rpm-perlprov
2a813afe 157%{?with_python:BuildRequires: rpm-pythonprov}
241257bf 158%{?with_sqlite:BuildRequires: sqlite3-devel}
874f4c9a 159BuildRequires: zlib-devel
a6e56ce4 160%if %{with static}
e6090a7b 161# Require static library only for static build
87ef0d95 162BuildRequires: beecrypt-static >= %{beecrypt_ver}
33be5db0 163BuildRequires: bzip2-static >= 1.0.2-17
858aa7d0 164%{?with_db:BuildRequires: db-static >= %{reqdb_ver}}
290c1c30 165BuildRequires: elfutils-static
10abbd40 166BuildRequires: glibc-static >= 2.2.94
241257bf 167BuildRequires: libmagic-static
8e159d42 168%{?with_selinux:BuildRequires: libselinux-static >= 1.18}
003a039e 169BuildRequires: popt-static >= %{reqpopt_ver}
1d49ffbc 170BuildRequires: zlib-static
7a9d72ce 171%endif
66edd895 172Requires: %{name}-base = %{version}-%{release}
b26a9709 173Requires: %{name}-lib = %{version}-%{release}
10abbd40
ER
174Requires: beecrypt >= %{beecrypt_ver}
175Requires: popt >= %{reqpopt_ver}
4adb7d05 176%{!?with_static:Obsoletes: rpm-utils-static}
874f4c9a 177Conflicts: glibc < 2.2.92
8ee1c72c
AM
178# db4.6 poldek needed
179Conflicts: poldek < 0.21-0.20070703.00.3
1d49ffbc 180BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
6d82b332 181
4adb7d05
JB
182%define _binary_payload w9.gzdio
183%define _noPayloadPrefix 1
6d82b332 184
4cd84746
JB
185# don't require very fresh rpm.macros to build
186%define __gettextize gettextize --copy --force --intl ; cp -f po/Makevars{.template,}
9f517079 187%define ix86 i386 i486 i586 i686 athlon pentium3 pentium4
80e9f34d 188%define ppc ppc ppc7400 ppc7450
9f517079 189%define x8664 amd64 ia32e x86_64
4cd84746 190
89427592 191# stabilize new build environment
f9ac32aa
AM
192%define __newcc %{?force_cc}%{!?force_cc:%{_target_cpu}-pld-linux-gcc}
193%define __newcxx %{?force_cxx}%{!?force_cxx:%{_target_cpu}-pld-linux-g++}
194%define __newcpp %{?force_cpp}%{!?force_cpp:%{_target_cpu}-pld-linux-gcc -E}
89427592 195
d755a548
JK
196%define _rpmlibdir /usr/lib/rpm
197
573e40e1
PS
198%define specflags -fno-strict-aliasing
199
ff7bc1e6 200%description
201RPM is a powerful package manager, which can be used to build,
202install, query, verify, update, and uninstall individual software
cf6faebc 203packages. A package consists of an archive of files, and package
fed73700 204information, including name, version, and description.
205
dd85fadc
JR
206%description -l de.UTF-8
207RPM ist ein kräftiger Packet-Manager, der verwendet sein kann zur
fed73700 208Installation, Anfrage, Verifizierung, Aktualisierung und
209Uninstallation individueller Softwarepakete. Ein Paket besteht aus
210einem Archiv Dateien und Paketinformation, inklusive Name, Version und
313a4d1a 211Beschreibung.
212
dd85fadc 213%description -l es.UTF-8
313a4d1a 214RPM es un poderoso administrador de paquetes, que puede ser usado para
215construir, instalar, pesquisar, verificar, actualizar y desinstalar
216paquetes individuales de software. Un paquete consiste en un
dd85fadc
JR
217almacenaje de archivos, y información sobre el paquete, incluyendo
218nombre, versión y descripción.
219
220%description -l pl.UTF-8
221RPM jest doskonałym programem zarządzającym pakietami. Umożliwia on
222przebudowanie, instalację czy weryfikację dowolnego pakietu.
223Informacje dotyczące każdego pakietu, takie jak jego opis, lista
224plików wchodzących w skład pakietu, zależności od innych pakietów, są
225przechowywane w bazie danych i można je uzyskać za pomocą opcji
313a4d1a 226odpytywania programu rpm.
227
dd85fadc
JR
228%description -l pt_BR.UTF-8
229RPM é um poderoso gerenciador de pacotes, que pode ser usado para
313a4d1a 230construir, instalar, pesquisar, verificar, atualizar e desinstalar
231pacotes individuais de software. Um pacote consiste de um conjunto de
dd85fadc
JR
232arquivos e informações adicionais, incluindo nome, versão e descrição
233do pacote, permissões dos arquivos, etc.
234
235%description -l ru.UTF-8
236RPM - это мощный менеджер пакетов, который может быть использован для
237создания, инсталляции, запросов (query), проверки, обновления и
238удаления программных пакетов. Пакет состоит из файлового архива и
239служебной информации, включающей название, версию, описание и другие
240данные о пакете.
241
242%description -l uk.UTF-8
243RPM - це потужний менеджер пакетів, що може бути використаний для
244створення, інсталяції, запитів (query), перевірки, поновлення та
245видалення програмних пакетів. Пакет складається з файлового архіву та
246службової інформації, що містить назву, версію, опис та іншу
247інформацію про пакет.
7c6dc55f 248
66edd895
JB
249%package base
250Summary: RPM base package - scripts used by rpm packages themselves
4ea2ed33 251Summary(pl.UTF-8): Podstawowy pakiet RPM - skrypty używane przez same pakiety rpm
66edd895 252Group: Base
1d9ca0c1 253Requires: filesystem
66edd895
JB
254Obsoletes: vserver-rpm
255
256%description base
257The RPM base package contains scripts used by rpm packages themselves.
258These include:
259- scripts for adding/removing groups and users needed for rpm
260 packages,
261- banner.sh to display %%banner messages from rpm scriptlets.
262
dd85fadc
JR
263%description base -l pl.UTF-8
264Pakiet podstawowy RPM zwiera skrypty używane przez same pakiety rpm.
66edd895 265Zawiera on:
dd85fadc
JR
266- skrypty dodające/usuwające grupy i użytkowników dla pakietów rpm,
267- banner.sh do pokazywania komunikatów %%banner dla skryptletów rpm.
66edd895 268
69131f1a
JB
269%package lib
270Summary: RPMs library
4ea2ed33 271Summary(pl.UTF-8): Biblioteki RPM-a
69131f1a 272Group: Libraries
33be5db0 273Requires: beecrypt >= %{beecrypt_ver}
858aa7d0 274%{?with_db:Requires: db >= %{reqdb_ver}}
33be5db0 275%{?with_selinux:Requires: libselinux >= 1.18}
241257bf 276Requires: libmagic >= 1.15-2
69131f1a 277Requires: popt >= %{reqpopt_ver}
33be5db0 278Obsoletes: rpm-libs
241257bf 279Obsoletes: rpm-apidocs
69131f1a
JB
280# avoid SEGV caused by mixed db versions
281Conflicts: poldek < 0.18.1-16
0dc47449 282%{?with_suggest_tags:Suggests: lzma}
69131f1a
JB
283
284%description lib
285RPMs library.
286
dd85fadc 287%description lib -l pl.UTF-8
69131f1a
JB
288Biblioteki RPM-a.
289
fed73700 290%package devel
3f2d796a 291Summary: Header files for rpm libraries
4ea2ed33
ER
292Summary(de.UTF-8): Header-Dateien für rpm Libraries
293Summary(es.UTF-8): Archivos de inclusión y bibliotecas para programas de manipulación de paquetes rpm
294Summary(pl.UTF-8): Pliki nagłówkowe bibliotek rpm
295Summary(pt_BR.UTF-8): Arquivos de inclusão e bibliotecas para programas de manipulação de pacotes RPM
296Summary(ru.UTF-8): Хедеры и библиотеки для программ, работающих с rpm-пакетами
297Summary(uk.UTF-8): Хедери та бібліотеки для програм, що працюють з пакетами rpm
89f92de0 298Group: Development/Libraries
153e5706 299Requires: %{name}-lib = %{version}-%{release}
87ef0d95 300Requires: beecrypt-devel >= %{beecrypt_ver}
fea3cb89 301Requires: bzip2-devel
858aa7d0 302%{?with_db:Requires: db-devel >= %{reqdb_ver}}
5c583f90 303Requires: elfutils-devel
241257bf 304Requires: libmagic-devel
10abbd40 305%{?with_selinux:Requires: libselinux-devel}
a998ac11 306Requires: popt-devel >= %{reqpopt_ver}
fea3cb89 307Requires: zlib-devel
cf6faebc 308
309%description devel
3f2d796a
JB
310The RPM packaging system includes C libraries that make it easy to
311manipulate RPM packages and databases. They are intended to ease the
cf6faebc 312creation of graphical package managers and other tools that need
3f2d796a
JB
313intimate knowledge of RPM packages. This package contains header files
314for these libraries.
fed73700 315
dd85fadc
JR
316%description devel -l de.UTF-8
317Der RPM-Packensystem enthält eine C-Library, die macht es einfach
318RPM-Pakete und Dateibanken zu manipulieren. Er eignet sich für
fed73700 319Vereinfachung des Schaffens grafischer Paket-Manager und anderer
313a4d1a 320Werkzeuge, die intime Kenntnis von RPM-Paketen brauchen.
321
dd85fadc 322%description devel -l es.UTF-8
313a4d1a 323El sistema de empaquetado RPM incluye una biblioteca C que vuelve
dd85fadc
JR
324fácil la manipulación de paquetes y bases de datos RPM. Su objetivo es
325facilitar la creación de administradores gráficos de paquetes y otras
20f89981 326herramientas que necesiten un conocimiento profundo de paquetes RPM.
9e42d68a 327
dd85fadc
JR
328%description devel -l pl.UTF-8
329System RPM zawiera biblioteki C, które ułatwiają manipulowanie
330pakietami RPM oraz bazami danych. W zamiarze ma to uprościć tworzenie
331graficznych programów zarządzających pakietami oraz innych narzędzi,
332które wymagają szczegółowej wiedzy na temat pakietów RPM. Ten pakiet
333zawiera pliki nagłówkowe wspomnianych bibliotek.
334
335%description devel -l pt_BR.UTF-8
336O sistema de empacotamento RPM inclui uma biblioteca C que torna fácil
337a manipulação de pacotes e bases de dados RPM. Seu objetivo é
338facilitar a criação de gerenciadores gráficos de pacotes e outras
edacdf8f 339ferramentas que precisem de conhecimento profundo de pacotes RPM.
340
dd85fadc
JR
341%description devel -l ru.UTF-8
342Система управления пакетами RPM содержит библиотеку C, которая
343упрощает манипуляцию пакетами RPM и соответствующими базами данных.
344Эта библиотека предназначена для облегчения создания графических
345пакетных менеджеров и других утилит, которым необходимо работать с
346пакетами RPM.
7c6dc55f 347
dd85fadc
JR
348%description devel -l uk.UTF-8
349Система керування пакетами RPM містить бібліотеку C, котра спрощує
350роботу з пакетами RPM та відповідними базами даних. Ця бібліотека
351призначена для полегшення створення графічних пакетних менеджерів та
352інших утиліт, що працюють з пакетами RPM.
7c6dc55f 353
fed73700 354%package static
9e42d68a 355Summary: RPM static libraries
4ea2ed33
ER
356Summary(de.UTF-8): RPMs statische Libraries
357Summary(pl.UTF-8): Biblioteki statyczne RPM-a
358Summary(pt_BR.UTF-8): Bibliotecas estáticas para o desenvolvimento de aplicações RPM
359Summary(ru.UTF-8): Статическая библиотека для программ, работающих с rpm-пакетами
360Summary(uk.UTF-8): Статична бібліотека для програм, що працюють з пакетами rpm
edacdf8f 361Group: Development/Libraries
153e5706 362Requires: %{name}-devel = %{version}-%{release}
87ef0d95 363Requires: beecrypt-static >= %{beecrypt_ver}
df76dbd9 364Requires: bzip2-static
858aa7d0 365%{?with_db:Requires: db-static >= %{reqdb_ver}}
ff03e01a 366Requires: elfutils-static
241257bf 367Requires: libmagic-static
a998ac11 368Requires: popt-static >= %{reqpopt_ver}
df76dbd9 369Requires: zlib-static
edacdf8f 370
371%description static
20f89981 372RPM static libraries.
fed73700 373
dd85fadc 374%description static -l de.UTF-8
20f89981 375RPMs statische Libraries.
9e42d68a 376
dd85fadc 377%description static -l pl.UTF-8
0a7ae9bc 378Biblioteki statyczne RPM-a.
313a4d1a 379
dd85fadc
JR
380%description static -l pt_BR.UTF-8
381Bibliotecas estáticas para desenvolvimento.
edacdf8f 382
dd85fadc
JR
383%description static -l ru.UTF-8
384Система управления пакетами RPM содержит библиотеку C, которая
385упрощает манипуляцию пакетами RPM и соответствующими базами данных.
386Это статическая библиотека RPM.
7c6dc55f 387
dd85fadc
JR
388%description static -l uk.UTF-8
389Система керування пакетами RPM містить бібліотеку C, котра спрощує
390роботу з пакетами RPM та відповідними базами даних. Це статична
391бібліотека RPM.
7c6dc55f 392
fed73700 393%package utils
8482995c 394Summary: Additional utilities for managing RPM packages and database
4ea2ed33
ER
395Summary(de.UTF-8): Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
396Summary(pl.UTF-8): Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
edacdf8f 397Group: Applications/File
153e5706 398Requires: %{name} = %{version}-%{release}
a998ac11 399Requires: popt >= %{reqpopt_ver}
edacdf8f 400
401%description utils
8482995c 402Additional utilities for managing RPM packages and database.
fed73700 403
dd85fadc
JR
404%description utils -l de.UTF-8
405Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
9e42d68a 406
dd85fadc
JR
407%description utils -l pl.UTF-8
408Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
fed73700 409
92b3f576 410%package utils-perl
8482995c 411Summary: Additional utilities for managing RPM packages and database
4ea2ed33
ER
412Summary(de.UTF-8): Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
413Summary(pl.UTF-8): Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
92b3f576 414Group: Applications/File
153e5706 415Requires: %{name}-utils = %{version}-%{release}
92b3f576 416Requires: popt >= %{reqpopt_ver}
417
418%description utils-perl
8482995c 419Additional utilities for managing RPM packages and database.
92b3f576 420
dd85fadc
JR
421%description utils-perl -l de.UTF-8
422Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
92b3f576 423
dd85fadc
JR
424%description utils-perl -l pl.UTF-8
425Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
92b3f576 426
a00926bc
JB
427%package utils-static
428Summary: Static rpm utilities
4ea2ed33 429Summary(pl.UTF-8): Statyczne narzędzia rpm
a00926bc 430Group: Applications/System
153e5706 431Requires: %{name} = %{version}-%{release}
a00926bc
JB
432
433%description utils-static
434Static rpm utilities for repairing system in case something with
435shared libraries used by rpm become broken. Currently it contains rpmi
436binary, which can be used to install/upgrade/remove packages without
437using shared libraries (well, in fact with exception of NSS modules).
438
dd85fadc
JR
439%description utils-static -l pl.UTF-8
440Statyczne narzędzia rpm do naprawy systemu w przypadku zepsucia czegoś
441związanego z bibliotekami współdzielonymi używanymi przez rpm-a.
442Aktualnie pakiet zawiera binarkę rpmi, którą można użyć do instalacji,
443uaktualniania lub usuwania pakietów bez udziału bibliotek statycznych
444(z wyjątkiem modułów NSS).
a00926bc 445
fed73700 446%package build
e191287c 447Summary: Scripts for building binary RPM packages
4ea2ed33
ER
448Summary(de.UTF-8): Scripts fürs Bauen binärer RPM-Pakete
449Summary(pl.UTF-8): Skrypty pomocnicze do budowania binarnych RPM-ów
450Summary(pt_BR.UTF-8): Scripts e programas executáveis usados para construir pacotes
451Summary(ru.UTF-8): Скрипты и утилиты, необходимые для сборки пакетов
452Summary(uk.UTF-8): Скрипти та утиліти, необхідні для побудови пакетів
e191287c 453Group: Applications/File
8f76a271 454Requires(pre): findutils
b0a177d4 455Requires: %{name}-build-macros >= 1.314
153e5706 456Requires: %{name}-utils = %{version}-%{release}
e191287c 457Requires: /bin/id
458Requires: awk
b6754a7e
PS
459# we need fixed binutils for -feliminate-dwarf2-dups
460Requires: binutils >= 3:2.17.50.0.3-2
cfa7898a 461Requires: bzip2
e950a6d7 462Requires: chrpath >= 0.10-4
b6547e10 463Requires: cpio
e191287c 464Requires: diffutils
195f647c 465Requires: elfutils
583135b4 466Requires: file >= 4.17
e191287c 467Requires: fileutils
468Requires: findutils
120d96b6 469Requires: gcc >= 5:3.4
e191287c 470Requires: glibc-devel
471Requires: grep
472Requires: gzip
e93003df 473Requires: lzma
e191287c 474Requires: make
475Requires: patch
e191287c 476Requires: sed
477Requires: sh-utils
478Requires: tar
479Requires: textutils
7a67fa3a 480Provides: rpmbuild(find_lang) = %{find_lang_rev}
ca3648b1 481Provides: rpmbuild(monoautodeps)
37ea389a 482Provides: rpmbuild(noauto) = 3
02d17bf9 483%ifarch %{x8664}
195f647c
JB
484Conflicts: automake < 1:1.7.9-2
485Conflicts: libtool < 2:1.5-13
486%endif
0096c5cd 487
e2025ad1 488%description build
58399c37 489Scripts for building binary RPM packages.
fed73700 490
dd85fadc
JR
491%description build -l de.UTF-8
492Scripts fürs Bauen binärer RPM-Pakete.
9e42d68a 493
dd85fadc
JR
494%description build -l pl.UTF-8
495Skrypty pomocnicze do budowania binarnych RPM-ów.
313a4d1a 496
dd85fadc
JR
497%description build -l pt_BR.UTF-8
498Este pacote contém scripts e programas executáveis que são usados para
cf6faebc 499construir pacotes usando o RPM.
e73478cd 500
dd85fadc
JR
501%description build -l ru.UTF-8
502Различные вспомогательные скрипты и исполняемые программы, которые
503используются для сборки RPM'ов.
7c6dc55f 504
dd85fadc
JR
505%description build -l uk.UTF-8
506Різноманітні допоміжні скрипти та утиліти, які використовуються для
507побудови RPM'ів.
7c6dc55f 508
8482995c
JB
509%package javaprov
510Summary: Additional utilities for checking Java provides/requires in RPM packages
511Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach RPM
512Group: Applications/File
513Requires: %{name} = %{version}-%{release}
514Requires: file
515Requires: findutils >= 1:4.2.26
516Requires: mktemp
517Requires: unzip
518
519%description javaprov
520Additional utilities for checking Java provides/requires in RPM
521packages.
522
523%description javaprov -l pl.UTF-8
524Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach
525RPM.
526
69131f1a 527%package perlprov
8482995c 528Summary: Additional utilities for checking Perl provides/requires in RPM packages
4ea2ed33 529Summary(de.UTF-8): Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen
8482995c 530Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM
69131f1a
JB
531Group: Applications/File
532Requires: %{name} = %{version}-%{release}
533Requires: perl-devel
534Requires: perl-modules
535
536%description perlprov
8482995c 537Additional utilities for checking Perl provides/requires in RPM
69131f1a
JB
538packages.
539
dd85fadc
JR
540%description perlprov -l de.UTF-8
541Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen.
69131f1a 542
dd85fadc 543%description perlprov -l pl.UTF-8
8482995c
JB
544Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w
545pakietach RPM.
69131f1a
JB
546
547%package pythonprov
8482995c
JB
548Summary: Python macros, which simplifies creation of RPM packages with Python software
549Summary(pl.UTF-8): Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Pythonie
69131f1a
JB
550Group: Applications/File
551Requires: %{name} = %{version}-%{release}
cd800b3c 552Requires: python
243c6264 553Requires: python-modules
69131f1a
JB
554
555%description pythonprov
8482995c 556Python macros, which simplifies creation of RPM packages with Python
69131f1a
JB
557software.
558
dd85fadc 559%description pythonprov -l pl.UTF-8
8482995c 560Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
69131f1a
JB
561Pythonie.
562
563%package php-pearprov
8482995c
JB
564Summary: Additional utilities for checking PHP PEAR provides/requires in RPM packages
565Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności skryptów php w RPM
69131f1a
JB
566Group: Applications/File
567Requires: %{name} = %{version}-%{release}
632f1b5c 568Requires: sed >= 4.0
69131f1a
JB
569
570%description php-pearprov
8482995c 571Additional utilities for checking PHP PEAR provides/requires in RPM
69131f1a
JB
572packages.
573
dd85fadc 574%description php-pearprov -l pl.UTF-8
8482995c
JB
575Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w
576pakietach RPM.
69131f1a
JB
577
578%package -n python-rpm
579Summary: Python interface to RPM library
4ea2ed33
ER
580Summary(pl.UTF-8): Pythonowy interfejs do biblioteki RPM-a
581Summary(pt_BR.UTF-8): Módulo Python para aplicativos que manipulam pacotes RPM
69131f1a
JB
582Group: Development/Languages/Python
583Requires: %{name} = %{version}-%{release}
584%pyrequires_eq python
585Obsoletes: rpm-python
586
587%description -n python-rpm
588The rpm-python package contains a module which permits applications
589written in the Python programming language to use the interface
590supplied by RPM (RPM Package Manager) libraries.
591
592This package should be installed if you want to develop Python
593programs that will manipulate RPM packages and databases.
594
dd85fadc
JR
595%description -n python-rpm -l pl.UTF-8
596Pakiet rpm-python zawiera moduł, który pozwala aplikacjom napisanym w
597Pythonie na używanie interfejsu dostarczanego przez biblioteki RPM-a.
69131f1a 598
dd85fadc
JR
599Pakiet ten powinien zostać zainstalowany, jeśli chcesz pisać w
600Pythonie programy manipulujące pakietami i bazami danych rpm.
69131f1a 601
dd85fadc
JR
602%description -n python-rpm -l pt_BR.UTF-8
603O pacote rpm-python contém um módulo que permite que aplicações
69131f1a
JB
604escritas em Python utilizem a interface fornecida pelas bibliotecas
605RPM (RPM Package Manager).
606
dd85fadc 607Esse pacote deve ser instalado se você quiser desenvolver programas em
69131f1a
JB
608Python para manipular pacotes e bancos de dados RPM.
609
e2025ad1 610%prep
1453a533 611%setup -q
241257bf
AM
612
613# APPLIED ALREADY?
614#%patch0 -p1
2f0ee4ec 615%patch1 -p1
ece43ea2 616%patch3 -p1
7a3b1f24
AM
617%patch4 -p1
618%patch5 -p1
f14234e4 619%patch6 -p1
c1768ce2 620%patch7 -p1
7a3b1f24 621%patch8 -p1
fefe9d30 622%patch9 -p1
ece43ea2 623%patch10 -p1
241257bf
AM
624# CHECK ME
625#%patch14 -p1
fefe9d30 626%patch16 -p1
7a3b1f24 627%patch18 -p1
8e989934 628echo '%%define __perl_provides %%{__perl} /usr/lib/rpm/perl.prov' > macros.perl
629echo '%%define __perl_requires %%{__perl} /usr/lib/rpm/perl.req' >> macros.perl
c2673e18 630echo '# obsoleted file' > macros.python
ac090b0f
ER
631echo '%%define __php_provides /usr/lib/rpm/php.prov' > macros.php
632echo '%%define __php_requires /usr/lib/rpm/php.req' >> macros.php
120d96b6 633echo '%%define __mono_provides /usr/lib/rpm/mono-find-provides' > macros.mono
634echo '%%define __mono_requires /usr/lib/rpm/mono-find-requires' >> macros.mono
80b8a1f9
JB
635install %{SOURCE5} scripts/find-lang.sh
636install %{SOURCE9} scripts/php.prov.in
637install %{SOURCE10} scripts/php.req.in
638install %{SOURCE12} scripts/perl.prov
c7def65c 639%patch23 -p1
169dcb39 640
a736a97d 641%ifarch i386 i486
0bf2c47b
AM
642# disable TSC
643%patch26 -p1
644%endif
24123ddd 645%patch27 -p1
241257bf 646# CHECK ME
241257bf 647#%patch31 -p1
ece43ea2 648%patch32 -p1
f14234e4 649%patch34 -p1
7a3b1f24 650%patch35 -p0
cf198901 651%patch36 -p1
e24da480 652%patch37 -p1
241257bf
AM
653# CHECK ME
654#%patch41 -p1
ece43ea2
AM
655%patch42 -p1
656# CHECK ME, PROBABLY WILL NEED TO HANLE IN OTHER WAY since rpmfcSCRIPT already handles mono
241257bf 657#%patch46 -p1
0c94edbb 658%patch47 -p1
241257bf 659# OLD COMMENTED OUT
a05b34dc 660#%patch52 -p1
d6080f70 661%patch55 -p1
a245b6ce 662%patch58 -p1
59a562c2 663%patch59 -p1
7ffa7946 664%ifarch sparc64
665%patch61 -p1
666%endif
d36cb682 667
7a3b1f24
AM
668cd scripts
669mv -f perl.req perl.req.in
670mv -f perl.prov perl.prov.in
671cd ..
633d1e9e 672
cd86db2e 673# generate Group translations to *.po
80b8a1f9 674awk -f %{SOURCE6} %{SOURCE1}
fefe9d30
JB
675
676# update macros paths
241257bf
AM
677#for f in doc{,/ja,/pl}/rpm.8 doc{,/ja,/pl}/rpmbuild.8 ; do
678# sed -e 's@lib/rpm/redhat@lib/rpm/pld@g' $f > ${f}.tmp
679# mv -f ${f}.tmp $f
680#done
0d76071c 681
87ef0d95 682%build
7a67fa3a
ER
683rev=$(awk '/^#.*Id:.*/{print $4}' scripts/find-lang.sh)
684if [ "$rev" != "%find_lang_rev" ]; then
685 : Update find_lang_rev define to $rev, and retry
686 exit 1
687fi
688
ea816ea6 689%{__libtoolize}
241257bf 690%{__autopoint}
ceaaacee 691%{__aclocal}
4cd84746 692%{__autoheader}
7a9d72ce 693%{__autoconf}
7a9d72ce 694%{__automake}
7a9d72ce 695
cd86db2e 696# config.guess doesn't handle athlon, so we have to change it by hand.
697# rpm checks for CPU type at runtime, but it looks better
241257bf 698#sed -i -e 's|@host@|%{_target_cpu}-%{_target_vendor}-linux-gnu|' -e 's|@host_cpu@|%{_target_cpu}|' macros.in
7a9d72ce 699
89427592 700# pass CC and CXX too in case of building with some older configure macro
01d7a578 701# disable perl-RPM2 build, we have it in separate spec
624f96ff 702%configure \
f9ac32aa
AM
703 CC="%{__newcc}" \
704 CXX="%{__newcxx}" \
705 CPP="%{__newcpp}" \
01d7a578 706 WITH_PERL_VERSION=no \
33be5db0 707 %{?with_autoreqdep:--enable-adding-packages-names-in-autogenerated-dependancies} \
cd86db2e 708 --enable-shared \
874f4c9a 709 --enable-static \
d0ac271b 710 %{?with_python:--with-python=%{py_ver} --with-python-lib-dir=%{py_libdir}} \
a6e56ce4 711 %{!?with_python:--without-python} \
241257bf
AM
712 --with%{!?with_selinux:out}-selinux \
713 --with-libelf \
714 --with-zlib=external \
715 --with-bzip2=external \
716 --with-beecrypt=external \
717 --with-neon=%{?with_neon:external}%{!?with_neon:no} \
718 --with-file=external \
719 --with-popt=external \
858aa7d0 720 --with-db=%{?with_db:external}%{!?with_db:no} \
241257bf 721 --with-sqlite=%{?with_sqlite:external}%{!?with_sqlite:no} \
858aa7d0 722 --with-dbapi=%{!?sqlite_dbapi:db}%{?sqlite_dbapi:sqlite} \
557fa0ca
AM
723 --with-lua=internal \
724 --with-pcre=no \
241257bf
AM
725 --with-keyutils=none \
726 --without-path-versioned \
25ac75ae 727 --with-path-macros='%{_rpmlibdir}/macros:%{_rpmlibdir}/macros.pld:%{_rpmlibdir}/macros.build:%{_rpmlibdir}/%%{_target}/macros:%{_sysconfdir}/macros.*:%{_sysconfdir}/macros:%{_sysconfdir}/%%{_target}/macros:~/etc/rpmmacros:~/etc/.rpmmacros:~/.rpmmacros' \
241257bf 728 --with-bugreport="http://bugs.pld-linux.org/"
cf6faebc 729
874f4c9a 730%{__make} \
f9ac32aa
AM
731 CC="%{__cc}" \
732 CXX="%{__cxx}" \
241257bf 733 CPP="%{__cpp}"
33be5db0 734
b064b8e6 735%install
ff7bc1e6 736rm -rf $RPM_BUILD_ROOT
241257bf 737install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm,/var/lib/banner}
76214164 738
a5e7fb84 739%{__make} install \
241257bf
AM
740 pkgconfigdir=%{_pkgconfigdir} \
741 DESTDIR=$RPM_BUILD_ROOT
718426e1 742
25ac75ae
AM
743# install ARCH macros
744install -d $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux
745install %{SOURCE105} $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux/macros
746
747%ifarch %{ix86}
748install -d $RPM_BUILD_ROOT%{_rpmlibdir}/{i386,i486,i586,i686,athlon,pentium3,pentium4}-linux
749install %{SOURCE100} $RPM_BUILD_ROOT%{_rpmlibdir}/athlon-linux/macros
750install %{SOURCE101} $RPM_BUILD_ROOT%{_rpmlibdir}/i386-linux/macros
751install %{SOURCE102} $RPM_BUILD_ROOT%{_rpmlibdir}/i486-linux/macros
752install %{SOURCE103} $RPM_BUILD_ROOT%{_rpmlibdir}/i586-linux/macros
753install %{SOURCE104} $RPM_BUILD_ROOT%{_rpmlibdir}/i686-linux/macros
c8da1e4e
AM
754install %{SOURCE106} $RPM_BUILD_ROOT%{_rpmlibdir}/pentium3-linux/macros
755install %{SOURCE107} $RPM_BUILD_ROOT%{_rpmlibdir}/pentium4-linux/macros
25ac75ae
AM
756%endif
757
758%ifarch %{x8664}
759install -d $RPM_BUILD_ROOT%{_rpmlibdir}/{x86_64,ia32e,amd64}-linux
c8da1e4e
AM
760install %{SOURCE109} $RPM_BUILD_ROOT%{_rpmlibdir}/x86_64-linux/macros
761install %{SOURCE110} $RPM_BUILD_ROOT%{_rpmlibdir}/ia32e-linux/macros
762install %{SOURCE111} $RPM_BUILD_ROOT%{_rpmlibdir}/amd64-linux/macros
25ac75ae
AM
763%endif
764
765%ifarch %{ppc}
766install -d $RPM_BUILD_ROOT%{_rpmlibdir}/ppc-linux
c8da1e4e 767install %{SOURCE108} $RPM_BUILD_ROOT%{_rpmlibdir}/ppc-linux/macros
25ac75ae
AM
768%endif
769
ca076ee5 770# first platform file entry can't contain regexps
441cea0a 771echo "%{_target_cpu}-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
caf453d4 772
2d8ae03e
AM
773# x86_64 things
774%ifarch x86_64
778f8f7c 775echo "amd64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
61d03761 776echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e
AM
777%endif
778
779%ifarch amd64
61d03761
AM
780echo "amd64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
781echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e
AM
782%endif
783
784%ifarch ia32e
61d03761
AM
785echo "ia32e-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
786echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e
AM
787%endif
788
789# x86 things
06bd38df 790%ifarch athlon %{x8664}
61d03761 791echo "athlon-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e 792%endif
06bd38df 793%ifarch pentium4 athlon %{x8664}
61d03761 794echo "pentium4-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e 795%endif
06bd38df 796%ifarch pentium3 pentium4 athlon %{x8664}
61d03761 797echo "pentium3-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e 798%endif
06bd38df 799%ifarch i686 pentium3 pentium4 athlon %{x8664}
61d03761 800echo "i686-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e 801%endif
06bd38df 802%ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
61d03761 803echo "i586-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e 804%endif
06bd38df 805%ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
61d03761 806echo "i486-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e 807%endif
06bd38df 808%ifarch %{ix86} %{x8664}
61d03761 809echo "i386-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e
AM
810%endif
811
812# ppc
813%ifarch ppc
61d03761 814echo "ppc-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
28c2e2af 815echo "powerpc-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
2d8ae03e
AM
816%endif
817
818# noarch
819echo "noarch-[^-]*-.*" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
820
137e2891 821%ifarch %{ppc}
a05b34dc 822#sed -e '/_target_platform/s/[%]{_target_cpu}/ppc/' \
823# -i $RPM_BUILD_ROOT%{_rpmlibdir}/ppc74[05]0-linux/macros
137e2891 824%endif
825
02919de5
JK
826rm $RPM_BUILD_ROOT%{_rpmlibdir}/vpkg-provides*
827rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl
828rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl
829
644d8958
JB
830# not installed since 4.4.8 (-tools-perl subpackage)
831install scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
832
d755a548
JK
833install macros.perl $RPM_BUILD_ROOT%{_rpmlibdir}/macros.perl
834install macros.python $RPM_BUILD_ROOT%{_rpmlibdir}/macros.python
835install macros.php $RPM_BUILD_ROOT%{_rpmlibdir}/macros.php
5790b583 836install macros.mono $RPM_BUILD_ROOT%{_rpmlibdir}/macros.mono
1f625675 837install %{SOURCE15} $RPM_BUILD_ROOT%{_rpmlibdir}/macros.java
cf198901 838install %{SOURCE18} $RPM_BUILD_ROOT%{_rpmlibdir}/macros.pld
7ba63f26 839
61f7e1b3 840install %{SOURCE1} doc/manual/groups
d755a548 841install %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
80b8a1f9
JB
842install %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
843install %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
844install %{SOURCE8} $RPM_BUILD_ROOT%{_rpmlibdir}/check-files
d0370fe5 845install %{SOURCE13} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
7d8492bb 846install %{SOURCE16} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
d755a548
JK
847install scripts/find-php* $RPM_BUILD_ROOT%{_rpmlibdir}
848install scripts/php.{prov,req} $RPM_BUILD_ROOT%{_rpmlibdir}
d0370fe5 849install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/rpm
e663e5ff 850
1c2e2d8e 851install %{SOURCE17} $RPM_BUILD_ROOT%{_bindir}/banner.sh
7c6dc55f 852
fbc0ff35
AM
853install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
854
e663e5ff
JB
855cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros <<EOF
856# customized rpm macros - global for host
857#
40c1ea77
AF
858#%%_install_langs pl_PL:en_US
859%%distribution PLD
541eacd3
JB
860#
861# remove or replace with file_contexts path if you want to use custom
862# SELinux file contexts policy instead of one stored in packages payload
31858397
JB
863%%_install_file_context_path %%{nil}
864%%_verify_file_context_path %%{nil}
627d5615
ER
865
866# If non-zero, all erasures will be automagically repackaged.
867#%%_repackage_all_erasures 1
09bb810c
AF
868EOF
869
3d9806c2 870cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles <<EOF
99a3012c 871# global list of files (regexps) which don't generate Provides
3d9806c2
JB
872EOF
873cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov <<EOF
99a3012c 874# global list of script capabilities (regexps) not to be used in Provides
3d9806c2
JB
875EOF
876cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles <<EOF
99a3012c 877# global list of files (regexps) which don't generate Requires
e93003df
ER
878^%{_examplesdir}/
879^%{_docdir}/
3d9806c2
JB
880EOF
881cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq <<EOF
99a3012c 882# global list of script capabilities (regexps) not to be used in Requires
3d9806c2
JB
883EOF
884cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep <<EOF
99a3012c 885# global list of capabilities (SONAME, perl(module), php(module) regexps)
3d9806c2 886# which don't generate dependencies on package NAMES
195f647c 887# -- OpenGL implementation
f694a4d9
JB
888^libGL.so.1
889^libGLU.so.1
195f647c
JB
890^libOSMesa.so
891# -- Glide
f694a4d9 892^libglide3.so.3
195f647c 893# -- mozilla
f694a4d9
JB
894^libgtkmozembed.so
895^libgtksuperwin.so
896^libxpcom.so
195f647c
JB
897# -- X11 implementation
898^libFS.so
899^libI810XvMC.so
900^libICE.so
901^libSM.so
902^libX11.so
903^libXRes.so
904^libXTrap.so
905^libXaw.so
8c3b25a7 906^libXcomposite.so
195f647c 907^libXcursor.so
8c3b25a7
JB
908^libXdamage.so
909^libXdmcp.so
910^libXevie.so
195f647c 911^libXext.so
8c3b25a7 912^libXfixes.so
195f647c
JB
913^libXfont.so
914^libXfontcache.so
915^libXft.so
916^libXi.so
917^libXinerama.so
918^libXmu.so
919^libXmuu.so
920^libXp.so
921^libXpm.so
922^libXrandr.so
923^libXrender.so
924^libXss.so
925^libXt.so
926^libXtst.so
927^libXv.so
928^libXvMC.so
929^libXxf86dga.so
930^libXxf86misc.so
931^libXxf86rush.so
932^libXxf86vm.so
37ea389a
JB
933^libdps.so
934^libdpstk.so
195f647c 935^libfontenc.so
37ea389a 936^libpsres.so
195f647c
JB
937^libxkbfile.so
938^libxkbui.so
eec3b202
JB
939# -- fam / gamin
940^libfam.so.0
3d9806c2 941EOF
a4852742
JB
942cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc <<EOF
943# global list of file masks not to be compressed in DOCDIR
944EOF
3d9806c2 945
f3fd387a 946# for rpm -e|-U --repackage
a11e0e27
AM
947install -d $RPM_BUILD_ROOT/var/{spool/repackage,lock/rpm}
948touch $RPM_BUILD_ROOT/var/lock/rpm/transaction
f3fd387a 949
241257bf
AM
950# mov rpm to /bin
951mv -f $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
c2673e18 952# move libs to /lib
241257bf 953for a in librpm-%{sover}.so librpmdb-%{sover}.so librpmio-%{sover}.so librpmbuild-%{sover}.so; do
50dc9ac0
JK
954 mv -f $RPM_BUILD_ROOT%{_libdir}/$a $RPM_BUILD_ROOT/%{_lib}
955 ln -s /%{_lib}/$a $RPM_BUILD_ROOT%{_libdir}/$a
c2673e18
AF
956done
957
fca52ae1 958# remove arch dependant macros which have no use on noarch
241257bf
AM
959#%{__sed} -i -e '
960#/{__spec_install_post_strip}/d
961#/{__spec_install_post_chrpath}/d
962#/{__spec_install_post_compress_modules}/d
963#' $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux/macros
fca52ae1 964
6f18cdb7
AF
965%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
966%py_comp $RPM_BUILD_ROOT%{py_sitedir}
967
241257bf 968rm $RPM_BUILD_ROOT%{py_sitedir}/rpm/*.{la,a,py}
01d7a578 969
01d7a578 970# wrong location, not used anyway
241257bf 971rm $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log,xinetd}
644d8958 972# manuals for utils dropped in 4.4.8 (?)
241257bf 973#rm $RPM_BUILD_ROOT%{_mandir}/{,*/}/man8/{rpmcache,rpmgraph}.8
01d7a578 974
90b03dd6 975%find_lang %{name}
cf6faebc 976
c2673e18 977rm -rf manual
a998ac11
AF
978cp -a doc/manual manual
979rm -f manual/Makefile*
874f4c9a 980
13eb5ebf 981%clean
d7df46b8 982rm -rf $RPM_BUILD_ROOT
76214164 983
ceaaacee
JB
984%post lib -p /sbin/ldconfig
985%postun lib -p /sbin/ldconfig
76214164 986
8f76a271 987%pre build
d755a548 988find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
8f76a271 989
3684d90f
JB
990%files -f %{name}.lang
991%defattr(644,root,root,755)
241257bf 992%doc CHANGES CREDITS README pubkeys/JBJ-GPG-KEY manual/*
3684d90f 993
7a9d72ce 994%attr(755,root,root) /bin/rpm
35a6f2f9
JB
995#%attr(755,root,root) %{_bindir}/rpmdb
996#%attr(755,root,root) %{_bindir}/rpmquery
997#%attr(755,root,root) %{_bindir}/rpmsign
998#%attr(755,root,root) %{_bindir}/rpmverify
e73478cd 999
1000%dir %{_sysconfdir}/rpm
66edd895 1001%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros
caf453d4
AM
1002# these are ok to be replaced
1003%config %verify(not md5 mtime size) %{_sysconfdir}/rpm/sysinfo
1004%config %verify(not md5 mtime size) %{_sysconfdir}/rpm/platform
1005
e73478cd 1006
09bb810c 1007%{_mandir}/man8/rpm.8*
feb1f12e 1008%lang(fr) %{_mandir}/fr/man8/rpm.8*
e2025ad1 1009%lang(ja) %{_mandir}/ja/man8/rpm.8*
1162bdc1 1010%lang(ko) %{_mandir}/ko/man8/rpm.8*
ff7bc1e6 1011%lang(pl) %{_mandir}/pl/man8/rpm.8*
cf6faebc 1012%lang(ru) %{_mandir}/ru/man8/rpm.8*
740f105d 1013%lang(sk) %{_mandir}/sk/man8/rpm.8*
76214164 1014
e2025ad1 1015%dir /var/lib/rpm
f3fd387a 1016%dir %attr(700,root,root) /var/spool/repackage
a11e0e27
AM
1017%dir /var/lock/rpm
1018/var/lock/rpm/transaction
4acac5de 1019
4acac5de 1020#%attr(755,root,root) %{_rpmlibdir}/rpmd
4adb7d05 1021#%{!?with_static:%attr(755,root,root) %{_rpmlibdir}/rpm[eiu]}
4acac5de
JB
1022#%attr(755,root,root) %{_rpmlibdir}/rpmk
1023#%attr(755,root,root) %{_rpmlibdir}/rpm[qv]
e2025ad1 1024
d755a548
JK
1025%{_rpmlibdir}/rpmpopt*
1026%{_rpmlibdir}/macros
cf198901 1027%{_rpmlibdir}/macros.pld
3684d90f 1028
66edd895
JB
1029%files base
1030%defattr(644,root,root,755)
1031%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rpm
1032%dir %{_rpmlibdir}
1033%attr(755,root,root) %{_bindir}/banner.sh
1034%attr(755,root,root) %{_rpmlibdir}/user_group.sh
1035%dir /var/lib/banner
1036
874f4c9a
MM
1037%files lib
1038%defattr(644,root,root,755)
50dc9ac0 1039%attr(755,root,root) /%{_lib}/librpm*-*.so
874f4c9a
MM
1040%attr(755,root,root) %{_libdir}/librpm*-*.so
1041
69131f1a
JB
1042%files devel
1043%defattr(644,root,root,755)
1044%{_includedir}/rpm
1045%{_libdir}/librpm*.la
241257bf 1046%{_pkgconfigdir}/*.pc
69131f1a
JB
1047%attr(755,root,root) %{_libdir}/librpm.so
1048%attr(755,root,root) %{_libdir}/librpm-%{sover}.so
02510ee8
AM
1049%attr(755,root,root) %{_libdir}/librpmconstant.so
1050%attr(755,root,root) %{_libdir}/librpmconstant-%{sover}.so
69131f1a
JB
1051%attr(755,root,root) %{_libdir}/librpmio.so
1052%attr(755,root,root) %{_libdir}/librpmio-%{sover}.so
02510ee8
AM
1053%attr(755,root,root) %{_libdir}/librpmmisc.so
1054%attr(755,root,root) %{_libdir}/librpmmisc-%{sover}.so
69131f1a
JB
1055%attr(755,root,root) %{_libdir}/librpmdb.so
1056%attr(755,root,root) %{_libdir}/librpmdb-%{sover}.so
1057%attr(755,root,root) %{_libdir}/librpmbuild.so
1058
1059%files static
1060%defattr(644,root,root,755)
1061%{_libdir}/librpm*.a
1062
1063%files utils
1064%defattr(644,root,root,755)
241257bf 1065%attr(755,root,root) %{_bindir}/rpmconstant
69131f1a 1066%attr(755,root,root) %{_bindir}/rpm2cpio
241257bf
AM
1067%attr(755,root,root) %{_rpmlibdir}/rpmcache
1068%attr(755,root,root) %{_rpmlibdir}/rpmcmp
1069%attr(755,root,root) %{_rpmlibdir}/rpmdeps
1070%attr(755,root,root) %{_rpmlibdir}/debugedit
1071%attr(755,root,root) %{_rpmlibdir}/rpmdigest
69131f1a 1072%attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh
69131f1a
JB
1073%attr(755,root,root) %{_rpmlibdir}/tgpg
1074%attr(755,root,root) %{_rpmlibdir}/rpmdb_loadcvt
1075%{_mandir}/man8/rpm2cpio.8*
1076%{_mandir}/man8/rpmdeps.8*
644d8958
JB
1077#%{_mandir}/man8/rpmcache.8*
1078#%{_mandir}/man8/rpmgraph.8*
69131f1a 1079%lang(ja) %{_mandir}/ja/man8/rpm2cpio.8*
644d8958
JB
1080#%lang(ja) %{_mandir}/ja/man8/rpmcache.8*
1081#%lang(ja) %{_mandir}/ja/man8/rpmgraph.8*
69131f1a
JB
1082%lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
1083%lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
1084%lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
644d8958
JB
1085#%lang(pl) %{_mandir}/pl/man8/rpmcache.8*
1086#%lang(pl) %{_mandir}/pl/man8/rpmgraph.8*
69131f1a
JB
1087%lang(ru) %{_mandir}/ru/man8/rpm2cpio.8*
1088
1089%files utils-perl
1090%defattr(644,root,root,755)
1091%attr(755,root,root) %{_rpmlibdir}/rpmdiff*
69131f1a
JB
1092
1093%if %{with static}
1094%files utils-static
1095%defattr(644,root,root,755)
1096%attr(755,root,root) %{_bindir}/rpm[ieu]
1097%attr(755,root,root) %{_rpmlibdir}/rpm[ieu]
1098%endif
1099
3684d90f 1100%files build
a45ae6d8 1101%defattr(644,root,root,755)
66edd895 1102%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/noauto*
01d7a578
JB
1103%attr(755,root,root) %{_rpmlibdir}/brp-*
1104%attr(755,root,root) %{_rpmlibdir}/check-files
374b40ea 1105# %attr(755,root,root) %{_rpmlibdir}/check-prereqs
d755a548 1106%attr(755,root,root) %{_rpmlibdir}/compress-doc
241257bf 1107#%attr(755,root,root) %{_rpmlibdir}/config.*
d755a548 1108%attr(755,root,root) %{_rpmlibdir}/cross-build
d755a548
JK
1109%attr(755,root,root) %{_rpmlibdir}/find-spec-bcond
1110%attr(755,root,root) %{_rpmlibdir}/find-lang.sh
d755a548
JK
1111%attr(755,root,root) %{_rpmlibdir}/getpo.sh
1112%attr(755,root,root) %{_rpmlibdir}/install-build-tree
01d7a578 1113%attr(755,root,root) %{_rpmlibdir}/mkinstalldirs
d755a548 1114%attr(755,root,root) %{_rpmlibdir}/u_pkg.sh
01d7a578 1115%attr(755,root,root) %{_rpmlibdir}/executabledeps.sh
01d7a578
JB
1116%attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh
1117# needs hacked pkg-config to return anything
1118%attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh
241257bf
AM
1119#%attr(755,root,root) %{_rpmlibdir}/rpmb
1120#%attr(755,root,root) %{_rpmlibdir}/rpmt
d755a548 1121%{_rpmlibdir}/noarch-*
e9fe9fc5 1122%ifarch %{ix86}
d755a548 1123%{_rpmlibdir}/i?86*
e9fe9fc5 1124%{_rpmlibdir}/pentium*
d755a548
JK
1125%{_rpmlibdir}/athlon*
1126%endif
ad628734
JB
1127%ifarch alpha
1128%{_rpmlibdir}/alpha*
1129%endif
ad628734
JB
1130%ifarch ia64
1131%{_rpmlibdir}/ia64*
8f76a271 1132%endif
410dd742 1133%ifarch mips mipsel mips64 mips64el
1134%{_rpmlibdir}/mips*
1135%endif
80e9f34d 1136%ifarch %{ppc}
410dd742 1137%{_rpmlibdir}/ppc*
1138%endif
1139%ifarch sparc sparc64
1140%{_rpmlibdir}/sparc*
1141%endif
9f517079 1142%ifarch %{x8664}
206b32be
JB
1143%{_rpmlibdir}/amd64*
1144%{_rpmlibdir}/ia32e*
cedf1bfa
PS
1145%{_rpmlibdir}/x86_64*
1146%endif
410dd742 1147# must be here for "Requires: rpm-*prov" to work
7d8492bb 1148%{_rpmlibdir}/macros.java
5790b583 1149%{_rpmlibdir}/macros.mono
410dd742 1150%{_rpmlibdir}/macros.perl
1151%{_rpmlibdir}/macros.php
1152# not used yet ... these six depend on perl
1153#%attr(755,root,root) %{_rpmlibdir}/http.req
591cc005
JB
1154#%attr(755,root,root) %{_rpmlibdir}/magic.prov
1155#%attr(755,root,root) %{_rpmlibdir}/magic.req
1156#%{_rpmlibdir}/sql.prov
1157#%{_rpmlibdir}/sql.req
1158#%{_rpmlibdir}/tcl.req
7a9d72ce 1159
874f4c9a
MM
1160%attr(755,root,root) %{_bindir}/gendiff
1161%attr(755,root,root) %{_bindir}/rpmbuild
1162
a00926bc 1163%{_mandir}/man1/gendiff.1*
874f4c9a 1164%{_mandir}/man8/rpmbuild.8*
fefe9d30
JB
1165%lang(ja) %{_mandir}/ja/man8/rpmbuild.8*
1166%lang(pl) %{_mandir}/pl/man1/gendiff.1*
1167%lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
f3fe287f 1168
7d8492bb
JB
1169%files javaprov
1170%defattr(644,root,root,755)
1171%attr(755,root,root) %{_rpmlibdir}/java-find-requires
1172# needs jar (any jdk), jcf-dump (gcc-java) to work
1173%attr(755,root,root) %{_rpmlibdir}/javadeps.sh
1174
89334051
AF
1175%files perlprov
1176%defattr(644,root,root,755)
d755a548
JK
1177%attr(755,root,root) %{_rpmlibdir}/perl.*
1178#%attr(755,root,root) %{_rpmlibdir}/perldeps.pl
1179#%attr(755,root,root) %{_rpmlibdir}/find-perl-*
02919de5
JK
1180#%attr(755,root,root) %{_rpmlibdir}/find-*.perl
1181#%attr(755,root,root) %{_rpmlibdir}/find-prov.pl
1182#%attr(755,root,root) %{_rpmlibdir}/find-req.pl
374b40ea 1183#%attr(755,root,root) %{_rpmlibdir}/get_magic.pl
9805fd6d 1184
80d3b868 1185%files pythonprov
d8fcb9b0 1186%defattr(644,root,root,755)
d755a548 1187%{_rpmlibdir}/macros.python
25d296e1 1188%attr(755,root,root) %{_rpmlibdir}/pythondeps.sh
09bb810c 1189
d36cb682
PG
1190%files php-pearprov
1191%defattr(644,root,root,755)
d755a548
JK
1192%attr(755,root,root) %{_rpmlibdir}/php*
1193%attr(755,root,root) %{_rpmlibdir}/find-php*
d36cb682 1194
50dc9ac0 1195%if %{with python}
cf6faebc 1196%files -n python-rpm
42a0025c 1197%defattr(644,root,root,755)
b33910fe 1198%dir %{py_sitedir}/rpm
6f18cdb7 1199%attr(755,root,root) %{py_sitedir}/rpm/*.so
8c99b39a 1200%{py_sitedir}/rpm/*.py[co]
50dc9ac0 1201%endif
This page took 0.473995 seconds and 4 git commands to generate.