]> TLD Linux GIT Repositories - packages/rpm.git/blob - rpm.spec
- backported rubyprov package from PLD rpm 5.x
[packages/rpm.git] / rpm.spec
1 # TODO:
2 # pluto_> btw. /usr/lib/rpm/find-debuginfo.sh needs fix. it extract debuginfo also from kernel modules.
3 # pluto_> there's a filelist=$(find $RPM_BUILD_ROOT ! -path "$RPM_BUILD_ROOT/usr/lib/debug/*.debug" -type f
4 # pluto_> and we need to add ! -path /lib/modules/...
5 # - python(abi) cap is not provided automatically because /usr/lib*/libpython2*.so.*
6 #   matches ELF first
7 # - repackaging when lzma is not installed (todo: fix digest signature of header)
8 #   rpmbuild computes digest when writing package to temporary file, then adds a few
9 #   tags (incl. digest) and writes whole package to destination file;
10 #   repackaging uses unchanged "immutable header" image from original rpm, also
11 #   preserving payload format and compressor from original rpm, _not_ current settings
12 #   /usr/bin/install: cannot stat `./it.gmo': No such file or directory
13 #   /usr/bin/install: cannot stat `./sr@Latn.gmo': No such file or directory
14 # - maybe? http://rpm.org/gitweb?p=rpm.git;a=commitdiff;h=cfcd1f9bd98d5d0fc46a84931984efec3b9d47e2
15 # - fix linking, rpm is beeing linked against installed rpmio
16 #
17 # Conditional build:
18 %bcond_with     static          # build static rpm+rpmi
19 %bcond_with     apidocs         # don't generate documentation with doxygen
20 %bcond_with     internal_db     # internal db (db 4.5.20)
21 %bcond_with     autoreqdep      # autogenerate package name deps in addition to sonames/perl(X)
22 %bcond_without  nptl            # internal db: don't use process-shared POSIX mutexes (NPTL provides full interface)
23 %bcond_without  python          # don't build python bindings
24 %bcond_without  selinux         # build without selinux support
25 %bcond_without  system_libmagic # don't use system libmagic
26 %bcond_without  suggest_tags    # build without Suggest tag (bootstrapping)
27 %bcond_with     neon            # build with HTTP/WebDAV support (neon library). NOTE: neon libs are in /usr!
28
29 # versions of required libraries
30 %define reqdb_pkg       db4.7
31 %define reqdb_ver       4.7.25
32 %define reqpopt_ver     1.10.8
33 %define beecrypt_ver    2:4.1.2-4
34 %define sover           4.5
35
36 Summary:        RPM Package Manager
37 Summary(de.UTF-8):      RPM Packet-Manager
38 Summary(es.UTF-8):      Gestor de paquetes RPM
39 Summary(pl.UTF-8):      Aplikacja do zarządzania pakietami RPM
40 Summary(pt_BR.UTF-8):   Gerenciador de pacotes RPM
41 Summary(ru.UTF-8):      Менеджер пакетов от RPM
42 Summary(uk.UTF-8):      Менеджер пакетів від RPM
43 Name:           rpm
44 Version:        4.5
45 Release:        81
46 License:        LGPL
47 Group:          Base
48 Source0:        %{name}-%{version}.tar.gz
49 # Source0-md5:  4e69ab971f682c87625dc0f65d9e16bc
50 Source1:        %{name}.groups
51 Source2:        %{name}.platform
52 Source3:        %{name}-install-tree
53 Source4:        %{name}-find-spec-bcond
54 Source5:        %{name}-hrmib-cache
55 Source6:        %{name}-groups-po.awk
56 Source7:        %{name}-compress-doc
57 Source10:       %{name}-php-provides
58 Source11:       %{name}-php-requires
59 Source12:       %{name}.sysinfo
60 Source13:       perl.prov
61 Source14:       %{name}-user_group.sh
62 Source15:       %{name}.sysconfig
63 Source16:       %{name}-macros.java
64 Source17:       %{name}-java-requires
65 # http://svn.pld-linux.org/banner.sh/
66 Source18:       banner.sh
67 Source19:       %{name}-macros.gstreamer
68 Source20:       macros.php
69 Source21:       %{name}-php-requires.php
70 Source22:       rubygems.rb
71 Source23:       gem_helper.rb
72 Patch1000:      %{name}-new-debuginfo.patch
73 #Patch0:        %{name}-pl.po.patch
74 Patch1:         %{name}-rpmrc.patch
75 Patch2:         %{name}-arch.patch
76 Patch3:         %{name}-rpmpopt.patch
77 Patch4:         %{name}-perl-macros.patch
78 Patch6:         %{name}-noexpand.patch
79 Patch7:         %{name}-scripts-closefds.patch
80 Patch8:         %{name}-db.patch
81 Patch9:         %{name}-gettext-in-header.patch
82 Patch10:        %{name}-compress-doc.patch
83 Patch11:        %{name}-rpm5-patchset-8074.patch
84 Patch12:        %{name}-system_libs.patch
85 Patch13:        %{name}-unglobal.patch
86 Patch14:        %{name}-etc_dir.patch
87 Patch15:        %{name}-system_libs-more.patch
88 Patch16:        %{name}-libmagic-locale.patch
89 Patch17:        %{name}-ldconfig-always.patch
90 Patch20:        %{name}-macros-ti.patch
91 Patch21:        %{name}-perl_req-skip_multiline.patch
92 Patch22:        %{name}-provides-dont-obsolete.patch
93 Patch23:        %{name}-pkgconfigdeps.patch
94 Patch24:        %{name}-po.patch
95 Patch25:        %{name}-link.patch
96 Patch26:        %{name}-notsc.patch
97 Patch27:        %{name}-hack-norpmlibdep.patch
98 Patch28:        %{name}-makefile-no_myLDADD_deps.patch
99 Patch29:        %{name}-perl_req-use_base.patch
100 Patch31:        %{name}-missing-prototypes.patch
101 Patch32:        %{name}-pld-autodep.patch
102 Patch33:        %{name}-arch-x86_64.patch
103 Patch34:        %{name}-epoch0.patch
104 Patch35:        %{name}-disable-features-ti.patch
105 Patch36:        %{name}-debuginfo.patch
106 Patch37:        %{name}-doxygen_hack.patch
107 Patch39:        %{name}-popt-coreutils.patch
108 Patch40:        %{name}-helperEVR-noassert.patch
109 Patch42:        %{name}-old-fileconflicts-behaviour.patch
110 Patch43:        %{name}-rpm5-patchset-8637.patch
111 Patch44:        %{name}-no-neon.patch
112 Patch45:        %{name}-no-sqlite.patch
113 Patch48:        %{name}-nopie.patch
114 Patch50:        %{name}-macros.patch
115 Patch51:        %{name}-cleanlibdirs.patch
116 Patch52:        %{name}-morearchs.patch
117 Patch53:        %{name}-chroot-hack.patch
118 Patch55:        %{name}-truncate-cvslog.patch
119 Patch56:        %{name}-rpm5-patchset-8413.patch
120 Patch57:        %{name}-as_needed-fix.patch
121 Patch58:        %{name}-repackage-wo-lzma.patch
122 Patch59:        %{name}-libtool-deps.patch
123 Patch61:        %{name}-lzma-mem.patch
124 Patch62:        %{name}-lzma-size_t.patch
125 Patch63:        %{name}-tar_as_secondary_source.patch
126 Patch64:        %{name}-man_pl.patch
127 Patch65:        %{name}-lzma-tukaani.patch
128 Patch66:        %{name}-v3-support.patch
129 Patch67:        %{name}-cleanbody.patch
130 Patch69:        %{name}-popt-aliases.patch
131 # reverse arrows patch
132 Patch70:        %{name}-rpm5-patchset-10061.patch
133 Patch71:        %{name}-installbeforeerase.patch
134 Patch72:        %{name}-postun-nofail.patch
135 Patch73:        %{name}-namespace-probe.patch
136 Patch74:        %{name}-noversiondir.patch
137 Patch75:        %{name}-rpmte-segv.patch
138 Patch76:        %{name}-pydebuginfo.patch
139 Patch77:        %{name}-dirdeps-macro.patch
140 Patch78:        %{name}-db3-configure.patch
141 Patch79:        %{name}-macros-cpp.patch
142 Patch80:        %{name}-link-selinux.patch
143 Patch81:        %{name}-db-configure.patch
144 Patch82:        %{name}-perl-makefile.patch
145 Patch83:        %{name}-nosmpflags.patch
146 Patch84:        %{name}-hirmib-ts.patch
147 Patch85:        %{name}-perl_req-heredocs_pod.patch
148 Patch86:        %{name}-rpmv3-support.patch
149 Patch87:        %{name}-mono.patch
150 Patch88:        %{name}-poptexecpath.patch
151 Patch89:        %{name}-lzma-compress-level.patch
152 Patch90:        %{name}-gstreamer.patch
153 Patch91:        %{name}-gendiff.patch
154 Patch92:        %{name}-set-failed-on-reopen.patch
155 Patch93:        %{name}-debugedit-workaround.patch
156 Patch94:        %{name}-shescape-memfault.patch
157 Patch95:        %{name}-gid-uucp.patch
158 Patch96:        %{name}-disable-hkp.patch
159 Patch97:        %{name}-sigpad.patch
160 Patch98:        %{name}-debugdir.patch
161 Patch99:        %{name}-pkgconfig.patch
162 Patch100:       %{name}-rpm5-debugedit.patch
163 Patch101:       %{name}-builddir-readlink.patch
164 Patch102:       pythondeps-speedup.patch
165 Patch103:       %{name}-lua-exit-chroot-correctly.patch
166 Patch104:       %{name}-glob.patch
167 Patch105:       %{name}-am.patch
168 Patch106:       %{name}-automake_1.12.patch
169 Patch107:       %{name}-debugedit-dwarf4.patch
170 Patch108:       %{name}-changelog_order_check_nonfatal.patch
171 Patch109:       %{name}-installplatform.patch
172 Patch110:       %{name}-xz.patch
173 Patch111:       %{name}-shrink.patch
174 Patch112:       %{name}-rubyprov.patch
175 Patch113:       notrans.patch
176 URL:            http://rpm5.org/
177 BuildRequires:  autoconf >= 2.57
178 BuildRequires:  automake >= 1.4
179 BuildRequires:  beecrypt-devel >= %{beecrypt_ver}
180 BuildRequires:  bzip2-devel >= 1.0.2-17
181 %{!?with_internal_db:BuildRequires:     %{reqdb_pkg}-devel >= %{reqdb_ver}}
182 BuildRequires:  elfutils-devel >= 0.108
183 BuildRequires:  gettext-devel >= 0.11.4-2
184 BuildRequires:  keyutils-devel
185 %{?with_system_libmagic:BuildRequires:  libmagic-devel}
186 %{?with_selinux:BuildRequires:  libselinux-devel >= 1.18}
187 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
188 BuildRequires:  libstdc++-devel
189 BuildRequires:  libtool >= 1:1.4.2-9
190 %if %{with neon}
191 BuildRequires:  libxml2-devel
192 BuildRequires:  neon-devel >= 0.25.5
193 %endif
194 BuildRequires:  ossp-uuid-devel >= 1.6.2-8
195 BuildRequires:  patch >= 2.2
196 BuildRequires:  popt-devel >= %{reqpopt_ver}
197 %{?with_python:BuildRequires:   python-devel >= 1:2.3}
198 BuildRequires:  python-modules >= 1:2.3
199 BuildRequires:  rpm-perlprov
200 %{?with_python:BuildRequires:   rpm-pythonprov}
201 BuildRequires:  rpmbuild(macros) >= 1.351
202 BuildRequires:  tar >= 1:1.15.1
203 BuildRequires:  zlib-devel >= 1.2.3.3
204 %if %{with apidocs}
205 BuildRequires:  doxygen
206 BuildRequires:  ghostscript
207 BuildRequires:  graphviz
208 BuildRequires:  tetex-pdftex
209 %endif
210 %if %{with static}
211 # Require static library only for static build
212 BuildRequires:  beecrypt-static >= %{beecrypt_ver}
213 BuildRequires:  bzip2-static >= 1.0.2-17
214 %{!?with_internal_db:BuildRequires:     %{reqdb_pkg}-static >= %{reqdb_ver}}
215 BuildRequires:  elfutils-static
216 BuildRequires:  glibc-static >= 2.2.94
217 %{?with_system_libmagic:BuildRequires:  libmagic-static}
218 %{?with_selinux:BuildRequires:  libselinux-static >= 1.18}
219 BuildRequires:  ossp-uuid-static >= 1.6.2-8
220 BuildRequires:  popt-static >= %{reqpopt_ver}
221 BuildRequires:  zlib-static >= 1.2.3.3
222 %endif
223 Requires:       %{name}-base = %{version}-%{release}
224 Requires:       %{name}-lib = %{version}-%{release}
225 Requires:       beecrypt >= %{beecrypt_ver}
226 Requires:       popt >= %{reqpopt_ver}
227 Provides:       rpm-db-ver = %{reqdb_ver}
228 Obsoletes:      rpm-getdeps
229 %{!?with_static:Obsoletes:      rpm-utils-static}
230 Obsoletes:      tmpwatch-rpmrepackage
231 Conflicts:      glibc < 2.2.92
232 Conflicts:      poldek < 0.21-0.20070703.00.11
233 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
234
235 %define         _binary_payload         w9.gzdio
236 %define         _noPayloadPrefix        1
237
238 # don't require very fresh rpm.macros to build
239 %define         __gettextize gettextize --copy --force --no-changelog; [ -f po/Makevars ] || cp -f po/Makevars{.template,}
240 %define         find_lang sh ./scripts/find-lang.sh $RPM_BUILD_ROOT
241 %define         ix86    i386 i486 i586 i686 athlon pentium3 pentium4
242 %define         ppc     ppc ppc7400 ppc7450
243 %define         x8664   amd64 ia32e x86_64
244
245 # stabilize new build environment
246 %define         __newcc %{?force_cc}%{!?force_cc:%{_target_cpu}-tld-linux-gcc}
247 %define         __newcxx %{?force_cxx}%{!?force_cxx:%{_target_cpu}-tld-linux-g++}
248 %define         __newcpp %{?force_cpp}%{!?force_cpp:%{_target_cpu}-tld-linux-gcc -E}
249
250 %define         _rpmlibdir /usr/lib/rpm
251
252 %define         specflags       -fno-strict-aliasing
253
254 %description
255 RPM is a powerful package manager, which can be used to build,
256 install, query, verify, update, and uninstall individual software
257 packages. A package consists of an archive of files, and package
258 information, including name, version, and description.
259
260 %description -l de.UTF-8
261 RPM ist ein kräftiger Packet-Manager, der verwendet sein kann zur
262 Installation, Anfrage, Verifizierung, Aktualisierung und
263 Uninstallation individueller Softwarepakete. Ein Paket besteht aus
264 einem Archiv Dateien und Paketinformation, inklusive Name, Version und
265 Beschreibung.
266
267 %description -l es.UTF-8
268 RPM es un poderoso administrador de paquetes, que puede ser usado para
269 construir, instalar, pesquisar, verificar, actualizar y desinstalar
270 paquetes individuales de software. Un paquete consiste en un
271 almacenaje de archivos, y información sobre el paquete, incluyendo
272 nombre, versión y descripción.
273
274 %description -l pl.UTF-8
275 RPM jest doskonałym programem zarządzającym pakietami. Umożliwia on
276 przebudowanie, instalację czy weryfikację dowolnego pakietu.
277 Informacje dotyczące każdego pakietu, takie jak jego opis, lista
278 plików wchodzących w skład pakietu, zależności od innych pakietów, są
279 przechowywane w bazie danych i można je uzyskać za pomocą opcji
280 odpytywania programu rpm.
281
282 %description -l pt_BR.UTF-8
283 RPM é um poderoso gerenciador de pacotes, que pode ser usado para
284 construir, instalar, pesquisar, verificar, atualizar e desinstalar
285 pacotes individuais de software. Um pacote consiste de um conjunto de
286 arquivos e informações adicionais, incluindo nome, versão e descrição
287 do pacote, permissões dos arquivos, etc.
288
289 %description -l ru.UTF-8
290 RPM - это мощный менеджер пакетов, который может быть использован для
291 создания, инсталляции, запросов (query), проверки, обновления и
292 удаления программных пакетов. Пакет состоит из файлового архива и
293 служебной информации, включающей название, версию, описание и другие
294 данные о пакете.
295
296 %description -l uk.UTF-8
297 RPM - це потужний менеджер пакетів, що може бути використаний для
298 створення, інсталяції, запитів (query), перевірки, поновлення та
299 видалення програмних пакетів. Пакет складається з файлового архіву та
300 службової інформації, що містить назву, версію, опис та іншу
301 інформацію про пакет.
302
303 %package base
304 Summary:        RPM base package - scripts used by rpm packages themselves
305 Summary(pl.UTF-8):      Podstawowy pakiet RPM - skrypty używane przez same pakiety rpm
306 Group:          Base
307 Requires:       filesystem
308 Obsoletes:      rpm-scripts
309 Obsoletes:      vserver-rpm
310
311 %description base
312 The RPM base package contains scripts used by rpm packages themselves.
313 These include:
314 - scripts for adding/removing groups and users needed for rpm
315   packages,
316 - banner.sh to display %%banner messages from rpm scriptlets.
317
318 %description base -l pl.UTF-8
319 Pakiet podstawowy RPM zwiera skrypty używane przez same pakiety rpm.
320 Zawiera on:
321 - skrypty dodające/usuwające grupy i użytkowników dla pakietów rpm,
322 - banner.sh do pokazywania komunikatów %%banner dla skryptletów rpm.
323
324 %package lib
325 Summary:        RPMs library
326 Summary(pl.UTF-8):      Biblioteki RPM-a
327 Group:          Libraries
328 Requires:       beecrypt >= %{beecrypt_ver}
329 %{!?with_internal_db:Requires:  %{reqdb_pkg} >= %{reqdb_ver}}
330 %{?with_system_libmagic:Requires:       libmagic >= 1.15-2}
331 %{?with_selinux:Requires:       libselinux >= 1.18}
332 Requires:       ossp-uuid >= 1.6.2-4
333 Requires:       popt >= %{reqpopt_ver}
334 %{?with_internal_db:%{?with_nptl:Requires:      uname(release) >= 2.6.0}}
335 Requires:       zlib >= 1.2.3.3
336 %{?with_suggest_tags:Suggests:  xz}
337 Obsoletes:      rpm-libs
338 # avoid installing with incompatible (non-tukaani) lzma
339 # avoid incompatible (-M0 not supported) lzma
340 Conflicts:      lzma < 1:4.999.5-0.alpha.2
341 # avoid SEGV caused by mixed db versions
342 Conflicts:      poldek < 0.18.1-16
343
344 %description lib
345 RPMs library.
346
347 %description lib -l pl.UTF-8
348 Biblioteki RPM-a.
349
350 %package devel
351 Summary:        Header files for rpm libraries
352 Summary(de.UTF-8):      Header-Dateien für rpm Libraries
353 Summary(es.UTF-8):      Archivos de inclusión y bibliotecas para programas de manipulación de paquetes rpm
354 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek rpm
355 Summary(pt_BR.UTF-8):   Arquivos de inclusão e bibliotecas para programas de manipulação de pacotes RPM
356 Summary(ru.UTF-8):      Хедеры и библиотеки для программ, работающих с rpm-пакетами
357 Summary(uk.UTF-8):      Хедери та бібліотеки для програм, що працюють з пакетами rpm
358 Group:          Development/Libraries
359 Requires:       %{name}-lib = %{version}-%{release}
360 Requires:       beecrypt-devel >= %{beecrypt_ver}
361 Requires:       bzip2-devel
362 %{!?with_internal_db:Requires:  %{reqdb_pkg}-devel >= %{reqdb_ver}}
363 Requires:       elfutils-devel
364 Requires:       keyutils-devel
365 %{?with_system_libmagic:Requires:       libmagic-devel}
366 %{?with_selinux:Requires:       libselinux-devel}
367 Requires:       ossp-uuid-devel >= 1.6.2-6
368 Requires:       popt-devel >= %{reqpopt_ver}
369 Requires:       zlib-devel >= 1.2.3.3
370
371 %description devel
372 The RPM packaging system includes C libraries that make it easy to
373 manipulate RPM packages and databases. They are intended to ease the
374 creation of graphical package managers and other tools that need
375 intimate knowledge of RPM packages. This package contains header files
376 for these libraries.
377
378 %description devel -l de.UTF-8
379 Der RPM-Packensystem enthält eine C-Library, die macht es einfach
380 RPM-Pakete und Dateibanken zu manipulieren. Er eignet sich für
381 Vereinfachung des Schaffens grafischer Paket-Manager und anderer
382 Werkzeuge, die intime Kenntnis von RPM-Paketen brauchen.
383
384 %description devel -l es.UTF-8
385 El sistema de empaquetado RPM incluye una biblioteca C que vuelve
386 fácil la manipulación de paquetes y bases de datos RPM. Su objetivo es
387 facilitar la creación de administradores gráficos de paquetes y otras
388 herramientas que necesiten un conocimiento profundo de paquetes RPM.
389
390 %description devel -l pl.UTF-8
391 System RPM zawiera biblioteki C, które ułatwiają manipulowanie
392 pakietami RPM oraz bazami danych. W zamiarze ma to uprościć tworzenie
393 graficznych programów zarządzających pakietami oraz innych narzędzi,
394 które wymagają szczegółowej wiedzy na temat pakietów RPM. Ten pakiet
395 zawiera pliki nagłówkowe wspomnianych bibliotek.
396
397 %description devel -l pt_BR.UTF-8
398 O sistema de empacotamento RPM inclui uma biblioteca C que torna fácil
399 a manipulação de pacotes e bases de dados RPM. Seu objetivo é
400 facilitar a criação de gerenciadores gráficos de pacotes e outras
401 ferramentas que precisem de conhecimento profundo de pacotes RPM.
402
403 %description devel -l ru.UTF-8
404 Система управления пакетами RPM содержит библиотеку C, которая
405 упрощает манипуляцию пакетами RPM и соответствующими базами данных.
406 Эта библиотека предназначена для облегчения создания графических
407 пакетных менеджеров и других утилит, которым необходимо работать с
408 пакетами RPM.
409
410 %description devel -l uk.UTF-8
411 Система керування пакетами RPM містить бібліотеку C, котра спрощує
412 роботу з пакетами RPM та відповідними базами даних. Ця бібліотека
413 призначена для полегшення створення графічних пакетних менеджерів та
414 інших утиліт, що працюють з пакетами RPM.
415
416 %package static
417 Summary:        RPM static libraries
418 Summary(de.UTF-8):      RPMs statische Libraries
419 Summary(pl.UTF-8):      Biblioteki statyczne RPM-a
420 Summary(pt_BR.UTF-8):   Bibliotecas estáticas para o desenvolvimento de aplicações RPM
421 Summary(ru.UTF-8):      Статическая библиотека для программ, работающих с rpm-пакетами
422 Summary(uk.UTF-8):      Статична бібліотека для програм, що працюють з пакетами rpm
423 Group:          Development/Libraries
424 Requires:       %{name}-devel = %{version}-%{release}
425 Requires:       beecrypt-static >= %{beecrypt_ver}
426 Requires:       bzip2-static
427 %{!?with_internal_db:Requires:  %{reqdb_pkg}-static >= %{reqdb_ver}}
428 Requires:       elfutils-static
429 Requires:       keyutils-static
430 %{?with_system_libmagic:Requires:       libmagic-static}
431 Requires:       popt-static >= %{reqpopt_ver}
432 Requires:       zlib-static >= 1.2.3.3
433
434 %description static
435 RPM static libraries.
436
437 %description static -l de.UTF-8
438 RPMs statische Libraries.
439
440 %description static -l pl.UTF-8
441 Biblioteki statyczne RPM-a.
442
443 %description static -l pt_BR.UTF-8
444 Bibliotecas estáticas para desenvolvimento.
445
446 %description static -l ru.UTF-8
447 Система управления пакетами RPM содержит библиотеку C, которая
448 упрощает манипуляцию пакетами RPM и соответствующими базами данных.
449 Это статическая библиотека RPM.
450
451 %description static -l uk.UTF-8
452 Система керування пакетами RPM містить бібліотеку C, котра спрощує
453 роботу з пакетами RPM та відповідними базами даних. Це статична
454 бібліотека RPM.
455
456 %package utils
457 Summary:        Additional utilities for managing RPM packages and database
458 Summary(de.UTF-8):      Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
459 Summary(pl.UTF-8):      Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
460 Group:          Applications/File
461 Requires:       %{name} = %{version}-%{release}
462 Requires:       popt >= %{reqpopt_ver}
463 Conflicts:      filesystem-debuginfo < 3.0-16
464
465 %description utils
466 Additional utilities for managing RPM packages and database.
467
468 %description utils -l de.UTF-8
469 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
470
471 %description utils -l pl.UTF-8
472 Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
473
474 %package utils-perl
475 Summary:        Additional utilities for managing RPM packages and database
476 Summary(de.UTF-8):      Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
477 Summary(pl.UTF-8):      Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
478 Group:          Applications/File
479 Requires:       %{name}-utils = %{version}-%{release}
480 Requires:       popt >= %{reqpopt_ver}
481
482 %description utils-perl
483 Additional utilities for managing RPM packages and database.
484
485 %description utils-perl -l de.UTF-8
486 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
487
488 %description utils-perl -l pl.UTF-8
489 Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
490
491 %package utils-static
492 Summary:        Static rpm utilities
493 Summary(pl.UTF-8):      Statyczne narzędzia rpm
494 Group:          Applications/System
495 Requires:       %{name} = %{version}-%{release}
496
497 %description utils-static
498 Static rpm utilities for repairing system in case something with
499 shared libraries used by rpm become broken. Currently it contains rpmi
500 binary, which can be used to install/upgrade/remove packages without
501 using shared libraries (well, in fact with exception of NSS modules).
502
503 %description utils-static -l pl.UTF-8
504 Statyczne narzędzia rpm do naprawy systemu w przypadku zepsucia czegoś
505 związanego z bibliotekami współdzielonymi używanymi przez rpm-a.
506 Aktualnie pakiet zawiera binarkę rpmi, którą można użyć do instalacji,
507 uaktualniania lub usuwania pakietów bez udziału bibliotek statycznych
508 (z wyjątkiem modułów NSS).
509
510 %package build
511 Summary:        Scripts for building binary RPM packages
512 Summary(de.UTF-8):      Scripts fürs Bauen binärer RPM-Pakete
513 Summary(pl.UTF-8):      Skrypty pomocnicze do budowania binarnych RPM-ów
514 Summary(pt_BR.UTF-8):   Scripts e programas executáveis usados para construir pacotes
515 Summary(ru.UTF-8):      Скрипты и утилиты, необходимые для сборки пакетов
516 Summary(uk.UTF-8):      Скрипти та утиліти, необхідні для побудови пакетів
517 Group:          Applications/File
518 Requires(pretrans):     findutils
519 Requires:       %{name}-build-macros >= 1.656
520 Requires:       %{name}-utils = %{version}-%{release}
521 Requires:       /bin/id
522 Requires:       awk
523 Requires:       bzip2
524 Requires:       chrpath >= 0.10-4
525 Requires:       cpio
526 Requires:       diffutils
527 Requires:       elfutils
528 Requires:       file >= 4.17
529 Requires:       fileutils
530 Requires:       findutils
531 # rpmrc patch adds flags specific to gcc >= 4.7
532 Requires:       gcc >= 6:4.7.0
533 Requires:       glibc-devel
534 Requires:       grep
535 Requires:       gzip
536 Requires:       make
537 Requires:       patch
538 Requires:       sed
539 Requires:       sh-utils
540 Requires:       tar
541 Requires:       textutils
542 Requires:       xz
543 Provides:       rpmbuild(monoautodeps)
544 Provides:       rpmbuild(noauto) = 3
545 %ifarch %{x8664}
546 Conflicts:      automake < 1:1.7.9-2
547 Conflicts:      libtool < 2:1.5-13
548 %endif
549
550 %description build
551 Scripts for building binary RPM packages.
552
553 %description build -l de.UTF-8
554 Scripts fürs Bauen binärer RPM-Pakete.
555
556 %description build -l pl.UTF-8
557 Skrypty pomocnicze do budowania binarnych RPM-ów.
558
559 %description build -l pt_BR.UTF-8
560 Este pacote contém scripts e programas executáveis que são usados para
561 construir pacotes usando o RPM.
562
563 %description build -l ru.UTF-8
564 Различные вспомогательные скрипты и исполняемые программы, которые
565 используются для сборки RPM'ов.
566
567 %description build -l uk.UTF-8
568 Різноманітні допоміжні скрипти та утиліти, які використовуються для
569 побудови RPM'ів.
570
571 %package javaprov
572 Summary:        Additional utilities for checking Java provides/requires in RPM packages
573 Summary(pl.UTF-8):      Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach RPM
574 Group:          Applications/File
575 Requires:       %{name} = %{version}-%{release}
576 Requires:       file
577 Requires:       findutils >= 1:4.2.26
578 Requires:       mktemp
579 Requires:       unzip
580
581 %description javaprov
582 Additional utilities for checking Java provides/requires in RPM
583 packages.
584
585 %description javaprov -l pl.UTF-8
586 Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach
587 RPM.
588
589 %package perlprov
590 Summary:        Additional utilities for checking Perl provides/requires in RPM packages
591 Summary(de.UTF-8):      Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen
592 Summary(pl.UTF-8):      Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM
593 Group:          Applications/File
594 Requires:       %{name} = %{version}-%{release}
595 Requires:       perl-devel
596 Requires:       perl-modules
597
598 %description perlprov
599 Additional utilities for checking Perl provides/requires in RPM
600 packages.
601
602 %description perlprov -l de.UTF-8
603 Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen.
604
605 %description perlprov -l pl.UTF-8
606 Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w
607 pakietach RPM.
608
609 %package pythonprov
610 Summary:        Python macros, which simplifies creation of RPM packages with Python software
611 Summary(pl.UTF-8):      Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Pythonie
612 Group:          Applications/File
613 Requires:       %{name} = %{version}-%{release}
614 Requires:       python
615 Requires:       python-modules
616
617 %description pythonprov
618 Python macros, which simplifies creation of RPM packages with Python
619 software.
620
621 %description pythonprov -l pl.UTF-8
622 Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
623 Pythonie.
624
625 %package php-pearprov
626 Summary:        Additional utilities for checking PHP PEAR provides/requires in RPM packages
627 Summary(pl.UTF-8):      Dodatkowe narzędzia do sprawdzania zależności skryptów php w RPM
628 Group:          Applications/File
629 Requires:       %{name} = %{version}-%{release}
630 Requires:       sed >= 4.0
631
632 %description php-pearprov
633 Additional utilities for checking PHP PEAR provides/requires in RPM
634 packages.
635
636 %description php-pearprov -l pl.UTF-8
637 Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w
638 pakietach RPM.
639
640 %package rubyprov
641 Summary:        Ruby tools, which simplify creation of RPM packages with Ruby software
642 Summary(pl.UTF-8):      Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Ruby
643 Group:          Applications/File
644 Requires:       %{name} = %{version}-%{release}
645 Requires:       ruby
646 Requires:       ruby-modules
647 Requires:       ruby-rubygems
648
649 %description rubyprov
650 Ruby tools, which simplifies creation of RPM packages with Ruby
651 software.
652
653 %description rubyprov -l pl.UTF-8
654 Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
655 Ruby.
656
657 %package -n python-rpm
658 Summary:        Python interface to RPM library
659 Summary(pl.UTF-8):      Pythonowy interfejs do biblioteki RPM-a
660 Summary(pt_BR.UTF-8):   Módulo Python para aplicativos que manipulam pacotes RPM
661 Group:          Development/Languages/Python
662 Requires:       %{name} = %{version}-%{release}
663 %pyrequires_eq  python
664 Obsoletes:      rpm-python
665
666 %description -n python-rpm
667 The rpm-python package contains a module which permits applications
668 written in the Python programming language to use the interface
669 supplied by RPM (RPM Package Manager) libraries.
670
671 This package should be installed if you want to develop Python
672 programs that will manipulate RPM packages and databases.
673
674 %description -n python-rpm -l pl.UTF-8
675 Pakiet rpm-python zawiera moduł, który pozwala aplikacjom napisanym w
676 Pythonie na używanie interfejsu dostarczanego przez biblioteki RPM-a.
677
678 Pakiet ten powinien zostać zainstalowany, jeśli chcesz pisać w
679 Pythonie programy manipulujące pakietami i bazami danych rpm.
680
681 %description -n python-rpm -l pt_BR.UTF-8
682 O pacote rpm-python contém um módulo que permite que aplicações
683 escritas em Python utilizem a interface fornecida pelas bibliotecas
684 RPM (RPM Package Manager).
685
686 Esse pacote deve ser instalado se você quiser desenvolver programas em
687 Python para manipular pacotes e bancos de dados RPM.
688
689 %package apidocs
690 Summary:        RPM API documentation and guides
691 Summary(pl.UTF-8):      Documentacja API RPM-a i przewodniki
692 Group:          Documentation
693
694 %description apidocs
695 Documentation for RPM API and guides in HTML format generated from rpm
696 sources by doxygen.
697
698 %description apidocs -l pl.UTF-8
699 Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
700 źrodeł RPM-a przez doxygen.
701
702 %prep
703 %setup -q
704 cp -p %{SOURCE15} .
705 %patch1000 -p1
706 #%patch0 -p1
707 %patch2 -p1
708 %patch1 -p1
709 %patch3 -p1
710 %patch4 -p1
711 %patch6 -p1
712 %patch7 -p1
713 %patch8 -p1
714 %patch9 -p1
715 %patch10 -p1
716 %patch11 -p1 -R
717 %patch12 -p1
718 %patch13 -p1
719 %patch14 -p1
720 %patch16 -p1
721 %patch17 -p1
722 sed -e 's/^/@tld@/' %{SOURCE2} >>platform.in
723 echo '%%define  __perl_provides %%{__perl} /usr/lib/rpm/perl.prov' > macros.perl
724 echo '%%define  __perl_requires %%{__perl} /usr/lib/rpm/perl.req' >> macros.perl
725 echo '# obsoleted file' > macros.python
726 cp -p %{SOURCE20} macros.php
727 echo '%%define  __mono_provides /usr/lib/rpm/mono-find-provides' > macros.mono
728 echo '%%define  __mono_requires /usr/lib/rpm/mono-find-requires' >> macros.mono
729 install %{SOURCE10} scripts/php.prov
730 install %{SOURCE11} scripts/php.req
731 install %{SOURCE13} scripts/perl.prov
732 %patch21 -p1
733 %patch22 -p1
734 %patch23 -p1
735 %patch24 -p1
736 %patch25 -p1
737 %patch26 -p1
738 %patch27 -p1
739 %patch28 -p1
740 %patch29 -p1
741 %patch31 -p1
742 %patch32 -p1
743 %patch33 -p1
744 %patch34 -p1
745 %patch36 -p1
746 %patch37 -p1
747 %patch39 -p1
748 %patch40 -p1
749 %patch42 -p1
750 %patch43 -p1
751 %patch82 -p1
752 %{!?with_neon:%patch44 -p1}
753 %patch45 -p1
754 %patch48 -p1
755 %patch50 -p1
756 %patch20 -p1
757 %patch35 -p1
758 %patch51 -p1
759 #%patch52 -p1
760 %patch55 -p1
761 %patch56 -p1
762 %patch57 -p1
763 %patch58 -p1
764 %patch59 -p1
765 %patch61 -p1
766 %patch62 -p1
767 %patch63 -p1
768 %patch64 -p1
769 %patch65 -p1
770 %patch66 -p1
771 %patch67 -p1
772 %patch69 -p1
773 %patch71 -p1
774 %patch72 -p1
775 %patch73 -p1
776 %patch74 -p1
777 %patch75 -p0
778 # having .py sources in -debuginfo needs more testing
779 #%patch76 -p1
780 %patch77 -p0
781 %patch79 -p1
782 %patch80 -p1
783 %patch83 -p1
784 %patch84 -p1
785 %patch85 -p1
786 %patch86 -p1
787 %patch70 -p0
788 %patch87 -p1
789 %patch88 -p1
790 %patch89 -p1
791 %patch90 -p1
792 %patch91 -p1
793 %patch92 -p1
794 %patch93 -p1
795 %patch94 -p1
796 %patch95 -p1
797 %patch96 -p1
798 %patch97 -p1
799 %patch98 -p1
800 %patch99 -p1
801 %patch53 -p1
802 %patch100 -p1
803 %patch101 -p1
804 %patch102 -p1
805 %patch103 -p1
806 %patch104 -p1
807 %patch105 -p1
808 %patch106 -p1
809 %patch107 -p1
810 %patch108 -p1
811 %patch109 -p1
812 %patch110 -p1
813 %patch111 -p1
814 %patch112 -p1
815 %patch113 -p1
816
817 mv -f po/{sr,sr@Latn}.po
818 rm -rf sqlite zlib popt
819
820 %if %{with internal_db}
821 %if %{without nptl}
822 sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' db/dist/aclocal/mutex.ac
823 %endif
824 %patch78 -p1
825 %patch81 -p1
826 %else
827 %patch15 -p1
828 rm -rf db3 db rpmdb/db.h
829 %endif
830
831 cp -p %{SOURCE22} scripts/rubygems.rb
832 cp -p %{SOURCE23} scripts/gem_helper.rb
833
834 # generate Group translations to *.po
835 awk -f %{SOURCE6} %{SOURCE1}
836
837 # update macros paths
838 for f in doc{,/ja,/pl}/rpm.8 doc{,/ja,/pl}/rpmbuild.8 ; do
839         sed -e 's@lib/rpm/redhat@lib/rpm/tld@g' $f > ${f}.tmp
840         mv -f ${f}.tmp $f
841 done
842
843 %build
844 %if %{with system_libmagic}
845 rm -rf file
846 %else
847 cd file
848 %{__libtoolize}
849 %{__aclocal}
850 %{__autoheader}
851 %{__autoconf}
852 %{__automake}
853 cd ..
854 %endif
855
856 %{__libtoolize}
857 %{__gettextize}
858 %{__aclocal}
859 %{__autoheader}
860 %{__autoconf}
861 %{__automake}
862 %if %{with internal_db}
863 cd db3
864 echo -e 'AC_CONFIG_AUX_DIR(.)\nAC_PROG_LIBTOOL'> configure.ac
865 %{__libtoolize}
866 rm -f configure.ac
867 cd ../db
868 cp -f /usr/share/aclocal/libtool.m4 dist/aclocal/libtool.ac
869 cp -f /usr/share/automake/config.sub dist
870 if [ -f /usr/share/libtool/config/ltmain.sh ]; then
871         cp -f /usr/share/libtool/config/ltmain.sh dist
872 else
873         cp -f /usr/share/libtool/ltmain.sh dist
874 fi
875 cd ..
876 %endif
877
878 # rpm checks for CPU type at runtime, but it looks better
879 sed -i \
880         -e 's|@host@|%{_target_cpu}-%{_target_vendor}-%{_target_os}|' \
881         -e 's|@host_cpu@|%{_target_cpu}|' \
882         -e 's|@host_os@|%{_target_os}|' \
883         macros.in
884
885 # pass CC and CXX too in case of building with some older configure macro
886 # disable perl-RPM2 build, we have it in separate spec
887 CPPFLAGS="%{rpmcppflags} -I/usr/include/ossp-uuid -I/usr/include/%{reqdb_pkg}"
888 %configure \
889         CC="%{__newcc}" \
890         CXX="%{__newcxx}" \
891         CPP="%{__newcpp}" \
892         WITH_PERL_VERSION=no \
893         %{?with_autoreqdep:--enable-adding-packages-names-in-autogenerated-dependancies} \
894         --enable-shared \
895         --enable-static \
896         %{!?with_apidocs:--without-apidocs} \
897         %{?with_python:--with-python=%{py_ver}} \
898         %{!?with_python:--without-python} \
899         %{!?with_selinux:--without-selinux} \
900         %{?with_internal_db:--%{?with_nptl:en}%{!?with_nptl:dis}able-posixmutexes} \
901         --without-db
902
903 %{__make} \
904         CC="%{__cc}" \
905         CXX="%{__cxx}" \
906         CPP="%{__cpp}" \
907         libdb_la=%{_libdir}/libdb-%(echo %{reqdb_pkg} | sed -e 's/^db//').la \
908         pylibdir=%{py_libdir} \
909         myLDFLAGS="%{rpmldflags}" \
910         staticLDFLAGS=%{?with_static:-all-static}
911
912 %install
913 rm -rf $RPM_BUILD_ROOT
914 install -d $RPM_BUILD_ROOT{/%{_lib},/etc/{sysconfig,tmpwatch},%{_sysconfdir}/rpm,/var/lib/banner,/var/cache/hrmib}
915
916 %{__make} install \
917         DESTDIR=$RPM_BUILD_ROOT \
918         staticLDFLAGS=%{?with_static:-all-static} \
919         pylibdir=%{py_libdir}
920
921 cat <<'EOF' > $RPM_BUILD_ROOT/etc/tmpwatch/rpm.conf
922 # Cleanup 90-days old repackage files.
923 /var/spool/repackage 2160
924 EOF
925
926 cat <<'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
927 # first platform file entry can't contain regexps
928 %{_target_cpu}-%{_target_vendor}-linux
929
930 %ifarch x86_64
931 # x86_64 things
932 amd64-[^-]*-[Ll]inux(-gnu)?
933 x86_64-[^-]*-[Ll]inux(-gnu)?
934 %endif
935 %ifarch amd64
936 amd64-[^-]*-[Ll]inux(-gnu)?
937 x86_64-[^-]*-[Ll]inux(-gnu)?
938 %endif
939 %ifarch ia32e
940 ia32e-[^-]*-[Ll]inux(-gnu)?
941 x86_64-[^-]*-[Ll]inux(-gnu)?
942 %endif
943
944 %ifarch athlon %{x8664}
945 # x86 things
946 athlon-[^-]*-[Ll]inux(-gnu)?
947 %endif
948 %ifarch pentium4 athlon %{x8664}
949 pentium4-[^-]*-[Ll]inux(-gnu)?
950 %endif
951 %ifarch pentium3 pentium4 athlon %{x8664}
952 pentium3-[^-]*-[Ll]inux(-gnu)?
953 %endif
954 %ifarch i686 pentium3 pentium4 athlon %{x8664}
955 i686-[^-]*-[Ll]inux(-gnu)?
956 %endif
957 %ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
958 i586-[^-]*-[Ll]inux(-gnu)?
959 %endif
960 %ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
961 i486-[^-]*-[Ll]inux(-gnu)?
962 %endif
963 %ifarch %{ix86} %{x8664}
964 i386-[^-]*-[Ll]inux(-gnu)?
965 %endif
966
967 %ifarch alpha
968 alpha-[^-]*-[Ll]inux(-gnu)?
969 %endif
970
971 %ifarch ia64
972 ia64-[^-]*-[Ll]inux(-gnu)?
973 %endif
974
975 %ifarch ppc64
976 powerpc64-[^-]*-[Ll]inux(-gnu)?
977 ppc64-[^-]*-[Ll]inux(-gnu)?
978 %endif
979 %ifarch ppc ppc64
980 powerpc-[^-]*-[Ll]inux(-gnu)?
981 ppc-[^-]*-[Ll]inux(-gnu)?
982 %endif
983
984 %ifarch s390x
985 s390x-[^-]*-[Ll]inux(-gnu)?
986 %endif
987 %ifarch s390 s390x
988 s390-[^-]*-[Ll]inux(-gnu)?
989 %endif
990
991 %ifarch sparc64
992 sparc64-[^-]*-[Ll]inux(-gnu)?
993 %endif
994 %ifarch sparcv9 sparc64
995 sparcv9-[^-]*-[Ll]inux(-gnu)?
996 %endif
997 %ifarch sparc sparcv9 sparc64
998 sparc-[^-]*-[Ll]inux(-gnu)?
999 %endif
1000 %ifarch armv6l
1001 armv6l-[^-]*-[Ll]inux(-gnu)?
1002 %endif
1003 %ifarch armv5tel
1004 armv5tel-[^-]*-[Ll]inux(-gnu)?
1005 %endif
1006 %ifarch armv4t armv5tel
1007 armv4t-[^-]*-[Ll]inux(-gnu)?
1008 %endif
1009 %ifarch armv3t armv4t armv5tel
1010 armv3t-[^-]*-[Ll]inux(-gnu)?
1011 %endif
1012 %ifarch armv5teb
1013 armv5teb-[^-]*-[Ll]inux(-gnu)?
1014 %endif
1015 %ifarch armv4b armv5teb
1016 armv4b-[^-]*-[Ll]inux(-gnu)?
1017 %endif
1018
1019 # noarch
1020 noarch-[^-]*-.*
1021 EOF
1022
1023 rm $RPM_BUILD_ROOT%{_rpmlibdir}/vpkg-provides*
1024 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl
1025 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl
1026 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-lang.sh
1027
1028 # not installed since 4.4.8 (-tools-perl subpackage)
1029 install -p scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
1030
1031 cp -a macros.perl       $RPM_BUILD_ROOT%{_rpmlibdir}/macros.perl
1032 cp -a macros.python     $RPM_BUILD_ROOT%{_rpmlibdir}/macros.python
1033 cp -a macros.php        $RPM_BUILD_ROOT%{_rpmlibdir}/macros.php
1034 cp -a macros.mono       $RPM_BUILD_ROOT%{_rpmlibdir}/macros.mono
1035 cp -a %{SOURCE16}       $RPM_BUILD_ROOT%{_rpmlibdir}/macros.java
1036 cp -a %{SOURCE19}       $RPM_BUILD_ROOT%{_rpmlibdir}/macros.gstreamer
1037
1038 install -p %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
1039 install -p %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
1040 install -p %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
1041 install -p %{SOURCE14} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
1042 install -p %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
1043 install -p scripts/php.{prov,req}       $RPM_BUILD_ROOT%{_rpmlibdir}
1044 cp -p %{SOURCE21} $RPM_BUILD_ROOT%{_rpmlibdir}/php.req.php
1045 install -p %{SOURCE5} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
1046 install -p %{SOURCE18} $RPM_BUILD_ROOT%{_bindir}/banner.sh
1047 cp -p %{name}.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/rpm
1048
1049 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
1050 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Conflictname
1051 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Dirnames
1052 cp -a %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Filelinktos
1053 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Obsoletename
1054 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Providename
1055 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Requirename
1056
1057 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros <<EOF
1058 # customized rpm macros - global for host
1059 #
1060 %%distribution TLD
1061 #
1062 # remove or replace with file_contexts path if you want to use custom
1063 # SELinux file contexts policy instead of one stored in packages payload
1064 %%_install_file_context_path    %%{nil}
1065 %%_verify_file_context_path     %%{nil}
1066
1067 # If non-zero, all erasures will be automagically repackaged.
1068 #%%_repackage_all_erasures      0
1069
1070 # If non-zero, create debuginfo packages
1071 #%%_enable_debug_packages       0
1072
1073 # Boolean (i.e. 1 == "yes", 0 == "no") that controls whether files
1074 # marked as %doc should be installed.
1075 #%%_excludedocs   1
1076
1077 # For static /dev not to update perms if upgraded and tmpfs mounted
1078 #%%_netsharedpath /dev/shm
1079 EOF
1080
1081 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.lang <<EOF
1082 # Customized rpm macros - global for host
1083 #       A colon separated list of desired locales to be installed;
1084 #       "all" means install all locale specific files.
1085 #
1086 #%%_install_langs pl_PL:en_US
1087 EOF
1088
1089 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles <<EOF
1090 # global list of files (regexps) which don't generate Provides
1091 EOF
1092 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov <<EOF
1093 # global list of script capabilities (regexps) not to be used in Provides
1094 EOF
1095 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles <<EOF
1096 # global list of files (regexps) which don't generate Requires
1097 ^%{_examplesdir}/
1098 ^%{_docdir}/
1099 EOF
1100 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq <<EOF
1101 # global list of script capabilities (regexps) not to be used in Requires
1102 EOF
1103 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep <<EOF
1104 # global list of capabilities (SONAME, perl(module), php(module) regexps)
1105 # which don't generate dependencies on package NAMES
1106 # -- OpenGL implementation
1107 ^libGL.so.1
1108 ^libGLU.so.1
1109 ^libOSMesa.so
1110 # -- Glide
1111 ^libglide3.so.3
1112 # -- mozilla
1113 ^libgtkmozembed.so
1114 ^libgtksuperwin.so
1115 ^libxpcom.so
1116 # -- X11 implementation
1117 ^libFS.so
1118 ^libI810XvMC.so
1119 ^libICE.so
1120 ^libSM.so
1121 ^libX11.so
1122 ^libXRes.so
1123 ^libXTrap.so
1124 ^libXaw.so
1125 ^libXcomposite.so
1126 ^libXcursor.so
1127 ^libXdamage.so
1128 ^libXdmcp.so
1129 ^libXevie.so
1130 ^libXext.so
1131 ^libXfixes.so
1132 ^libXfont.so
1133 ^libXfontcache.so
1134 ^libXft.so
1135 ^libXi.so
1136 ^libXinerama.so
1137 ^libXmu.so
1138 ^libXmuu.so
1139 ^libXp.so
1140 ^libXpm.so
1141 ^libXrandr.so
1142 ^libXrender.so
1143 ^libXss.so
1144 ^libXt.so
1145 ^libXtst.so
1146 ^libXv.so
1147 ^libXvMC.so
1148 ^libXxf86dga.so
1149 ^libXxf86misc.so
1150 ^libXxf86rush.so
1151 ^libXxf86vm.so
1152 ^libdps.so
1153 ^libdpstk.so
1154 ^libfontenc.so
1155 ^libpsres.so
1156 ^libxkbfile.so
1157 ^libxkbui.so
1158 # -- fam / gamin
1159 ^libfam.so.0
1160 # -- mdns-bonjour: mDNSResponder-libs / avahi-compat-libdns_sd
1161 ^libdns_sd.so.1
1162 EOF
1163 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc <<EOF
1164 # global list of file masks not to be compressed in DOCDIR
1165 EOF
1166
1167 # for rpm -e|-U --repackage
1168 install -d $RPM_BUILD_ROOT/var/{spool/repackage,lock/rpm}
1169 touch $RPM_BUILD_ROOT/var/lock/rpm/transaction
1170
1171 # move rpm to /bin
1172 install -d $RPM_BUILD_ROOT/bin
1173 mv $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
1174 # move essential libs to /lib (libs that /bin/rpm links to)
1175 for a in librpm-%{sover}.so librpmdb-%{sover}.so librpmio-%{sover}.so ; do
1176         mv -f $RPM_BUILD_ROOT%{_libdir}/$a $RPM_BUILD_ROOT/%{_lib}
1177         ln -s /%{_lib}/$a $RPM_BUILD_ROOT%{_libdir}/$a
1178 done
1179
1180 # remove arch dependant macros which have no use on noarch
1181 %{__sed} -i -e '
1182 /{__spec_install_post_strip}/d
1183 /{__spec_install_post_chrpath}/d
1184 /{__spec_install_post_compress_modules}/d
1185 ' $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux/macros
1186
1187 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
1188 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
1189
1190 rm -f $RPM_BUILD_ROOT%{py_sitedir}/rpm/*.{la,a,py}
1191
1192 # (currently) not used or supported in PLD
1193 %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/{http.req,perldeps.pl}
1194 # wrong location, not used anyway
1195 %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log,xinetd}
1196
1197 # unpackaged in 4.4.9, reasons unknown
1198 %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/symclash.{sh,py}
1199 %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
1200 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/RPM.pm
1201 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/RPM/.packlist
1202 %{__rm} -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/RPM/RPM.bs
1203 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/RPM/RPM.so
1204 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man3/RPM.3pm
1205 %{__rm} $RPM_BUILD_ROOT%{_mandir}/{,ja,pl}/man8/rpm{cache,graph}.8
1206
1207 %find_lang %{name}
1208
1209 rm -rf manual
1210 cp -a doc/manual manual
1211 cp -a %{SOURCE1} manual/groups
1212 rm -f manual/Makefile*
1213
1214 %clean
1215 rm -rf $RPM_BUILD_ROOT
1216
1217 %triggerpostun lib -- %{name}-lib < %{version}
1218 echo >&2 "rpm-lib upgrade: Removing /var/lib/rpm/__db* from older rpmdb version"
1219 rm -f /var/lib/rpm/__db*
1220 if [ -d /vservers ]; then
1221         echo >&2 "rpm-lib upgrade: Removing vservers apps/pkgmgmt/base/rpm/state/__* from older rpmdb version"
1222         rm -f /etc/vservers/*/apps/pkgmgmt/base/rpm/state/__*
1223 fi
1224 echo >&2 "You should rebuild your rpmdb: rpm --rebuilddb to avoid random rpmdb errors"
1225
1226 %triggerpostun lib -- db4.5 < %{reqdb_ver}
1227 echo >&2 "db4.5 upgrade: Removing /var/lib/rpm/__db* from older rpmdb version"
1228 rm -f /var/lib/rpm/__db*
1229 if [ -d /vservers ]; then
1230         echo >&2 "db4.5 upgrade: Removing vservers apps/pkgmgmt/base/rpm/state/__* from older rpmdb version"
1231         rm -f /etc/vservers/*/apps/pkgmgmt/base/rpm/state/__*
1232 fi
1233 echo >&2 "You should rebuild your rpmdb: rpm --rebuilddb to avoid random rpmdb errors"
1234
1235 %triggerpostun -- %{name} < 4.4.9-44
1236 %{_rpmlibdir}/hrmib-cache
1237
1238 %post   lib -p /sbin/ldconfig
1239 %postun lib -p /sbin/ldconfig
1240
1241 %pretrans build
1242 find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
1243
1244 %files -f %{name}.lang
1245 %defattr(644,root,root,755)
1246 %doc CHANGES CREDITS README manual/*
1247
1248 %attr(755,root,root) /bin/rpm
1249
1250 %config(noreplace) %verify(not md5 mtime size) /etc/tmpwatch/rpm.conf
1251 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros
1252 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros.lang
1253 %dir %{_sysconfdir}/rpm/sysinfo
1254 # these are ok to be replaced
1255 %config %verify(not md5 mtime size) %{_sysconfdir}/rpm/sysinfo/*
1256 %config %verify(not md5 mtime size) %{_sysconfdir}/rpm/platform
1257
1258
1259 %{_mandir}/man8/rpm.8*
1260 %lang(fr) %{_mandir}/fr/man8/rpm.8*
1261 %lang(ja) %{_mandir}/ja/man8/rpm.8*
1262 %lang(ko) %{_mandir}/ko/man8/rpm.8*
1263 %lang(pl) %{_mandir}/pl/man8/rpm.8*
1264 %lang(ru) %{_mandir}/ru/man8/rpm.8*
1265 %lang(sk) %{_mandir}/sk/man8/rpm.8*
1266
1267 %dir /var/lib/rpm
1268 %dir %attr(700,root,root) /var/spool/repackage
1269 %dir /var/lock/rpm
1270 /var/lock/rpm/transaction
1271
1272 # exported package NVRA (stamped with install tid)
1273 # net-snmp hrSWInstalledName queries, bash-completions
1274 %dir /var/cache/hrmib
1275
1276 #%attr(755,root,root) %{_rpmlibdir}/rpmd
1277 #%{!?with_static:%attr(755,root,root) %{_rpmlibdir}/rpm[eiu]}
1278 #%attr(755,root,root) %{_rpmlibdir}/rpmk
1279 #%attr(755,root,root) %{_rpmlibdir}/rpm[qv]
1280
1281 %{_rpmlibdir}/rpmpopt*
1282 %{_rpmlibdir}/macros
1283
1284 %attr(755,root,root) %{_rpmlibdir}/hrmib-cache
1285
1286 %files base
1287 %defattr(644,root,root,755)
1288 %dir %{_sysconfdir}/rpm
1289 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rpm
1290 %dir %{_rpmlibdir}
1291 %attr(755,root,root) %{_bindir}/banner.sh
1292 %attr(755,root,root) %{_rpmlibdir}/user_group.sh
1293 %dir /var/lib/banner
1294
1295 %files lib
1296 %defattr(644,root,root,755)
1297 %attr(755,root,root) /%{_lib}/librpm-%{sover}.so
1298 %attr(755,root,root) /%{_lib}/librpmdb-%{sover}.so
1299 %attr(755,root,root) /%{_lib}/librpmio-%{sover}.so
1300 %attr(755,root,root) %{_libdir}/librpmbuild-%{sover}.so
1301
1302 %files devel
1303 %defattr(644,root,root,755)
1304 %attr(755,root,root) %{_libdir}/librpm.so
1305 %attr(755,root,root) %{_libdir}/librpm-%{sover}.so
1306 %attr(755,root,root) %{_libdir}/librpmio.so
1307 %attr(755,root,root) %{_libdir}/librpmio-%{sover}.so
1308 %attr(755,root,root) %{_libdir}/librpmdb.so
1309 %attr(755,root,root) %{_libdir}/librpmdb-%{sover}.so
1310 %attr(755,root,root) %{_libdir}/librpmbuild.so
1311 %{_libdir}/librpm.la
1312 %{_libdir}/librpmbuild.la
1313 %{_libdir}/librpmdb.la
1314 %{_libdir}/librpmio.la
1315 %{_includedir}/rpm
1316 %{_pkgconfigdir}/rpm.pc
1317
1318 %files static
1319 %defattr(644,root,root,755)
1320 %{_libdir}/librpm.a
1321 %{_libdir}/librpmbuild.a
1322 %{_libdir}/librpmdb.a
1323 %{_libdir}/librpmio.a
1324
1325 %files utils
1326 %defattr(644,root,root,755)
1327 %attr(755,root,root) %{_bindir}/rpm2cpio
1328 %attr(755,root,root) %{_bindir}/rpmdigest
1329 %attr(755,root,root) %{_bindir}/rpmmtree
1330 %attr(755,root,root) %{_bindir}/rpmrepo
1331 %{!?with_system_libmagic:%attr(755,root,root) %{_bindir}/rpmfile}
1332 %attr(755,root,root) %{_rpmlibdir}/debugedit
1333 %attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh
1334 %attr(755,root,root) %{_rpmlibdir}/rpmdb_loadcvt
1335 %attr(755,root,root) %{_rpmlibdir}/rpmdeps
1336 %attr(755,root,root) %{_rpmlibdir}/tgpg
1337 %{_mandir}/man8/rpm2cpio.8*
1338 %{_mandir}/man8/rpmdeps.8*
1339 %lang(ja) %{_mandir}/ja/man8/rpm2cpio.8*
1340 %lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
1341 %lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
1342 %lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
1343 %lang(ru) %{_mandir}/ru/man8/rpm2cpio.8*
1344
1345 %files utils-perl
1346 %defattr(644,root,root,755)
1347 %attr(755,root,root) %{_rpmlibdir}/rpmdiff*
1348
1349 %if %{with static}
1350 %files utils-static
1351 %defattr(644,root,root,755)
1352 %attr(755,root,root) %{_bindir}/rpm[ieu]
1353 %attr(755,root,root) %{_rpmlibdir}/rpm[ieu]
1354 %endif
1355
1356 %files build
1357 %defattr(644,root,root,755)
1358 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/noauto*
1359 %attr(755,root,root) %{_rpmlibdir}/brp-*
1360 %attr(755,root,root) %{_rpmlibdir}/check-files
1361 # %attr(755,root,root) %{_rpmlibdir}/check-prereqs
1362 %attr(755,root,root) %{_rpmlibdir}/compress-doc
1363 %attr(755,root,root) %{_rpmlibdir}/cross-build
1364 %attr(755,root,root) %{_rpmlibdir}/find-spec-bcond
1365 %attr(755,root,root) %{_rpmlibdir}/getpo.sh
1366 %attr(755,root,root) %{_rpmlibdir}/install-build-tree
1367 #%attr(755,root,root) %{_rpmlibdir}/config.*
1368 #%attr(755,root,root) %{_rpmlibdir}/mkinstalldirs
1369 %attr(755,root,root) %{_rpmlibdir}/u_pkg.sh
1370 %attr(755,root,root) %{_rpmlibdir}/executabledeps.sh
1371 %attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh
1372 %attr(755,root,root) %{_rpmlibdir}/mimetypedeps.sh
1373 # needs hacked pkg-config to return anything
1374 %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh
1375 #%attr(755,root,root) %{_rpmlibdir}/rpmb
1376 #%attr(755,root,root) %{_rpmlibdir}/rpmt
1377 %{_rpmlibdir}/noarch-*
1378 %ifarch %{ix86}
1379 %{_rpmlibdir}/i?86*
1380 %{_rpmlibdir}/pentium*
1381 %{_rpmlibdir}/athlon*
1382 %endif
1383 %ifarch alpha
1384 %{_rpmlibdir}/alpha*
1385 %endif
1386 %ifarch ia64
1387 %{_rpmlibdir}/ia64*
1388 %endif
1389 %ifarch mips mipsel mips64 mips64el
1390 %{_rpmlibdir}/mips*
1391 %endif
1392 %ifarch %{ppc}
1393 %{_rpmlibdir}/ppc*
1394 %endif
1395 %ifarch sparc sparcv9 sparc64
1396 %{_rpmlibdir}/sparc*
1397 %endif
1398 %ifarch %{x8664}
1399 %{_rpmlibdir}/amd64*
1400 %{_rpmlibdir}/ia32e*
1401 %{_rpmlibdir}/x86_64*
1402 %endif
1403 %ifarch armv6l armv5tel armv4t armv3t armv5teb armv4b
1404 %{_rpmlibdir}/arm*
1405 %endif
1406 # must be here for "Requires: rpm-*prov" to work
1407 %{_rpmlibdir}/macros.gstreamer
1408 %{_rpmlibdir}/macros.java
1409 %{_rpmlibdir}/macros.mono
1410 %{_rpmlibdir}/macros.perl
1411 %{_rpmlibdir}/macros.php
1412 # not used yet ... these six depend on perl
1413 #%attr(755,root,root) %{_rpmlibdir}/http.req
1414 #%attr(755,root,root) %{_rpmlibdir}/magic.prov
1415 #%attr(755,root,root) %{_rpmlibdir}/magic.req
1416 #%{_rpmlibdir}/sql.prov
1417 #%{_rpmlibdir}/sql.req
1418 #%{_rpmlibdir}/tcl.req
1419
1420 %attr(755,root,root) %{_bindir}/gendiff
1421 %attr(755,root,root) %{_bindir}/rpmbuild
1422
1423 %{_mandir}/man1/gendiff.1*
1424 %{_mandir}/man8/rpmbuild.8*
1425 %lang(ja) %{_mandir}/ja/man8/rpmbuild.8*
1426 %lang(pl) %{_mandir}/pl/man1/gendiff.1*
1427 %lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
1428
1429 %files javaprov
1430 %defattr(644,root,root,755)
1431 %attr(755,root,root) %{_rpmlibdir}/java-find-requires
1432 # needs jar (any jdk), jcf-dump (gcc-java) to work
1433 %attr(755,root,root) %{_rpmlibdir}/javadeps.sh
1434
1435 %files perlprov
1436 %defattr(644,root,root,755)
1437 %attr(755,root,root) %{_rpmlibdir}/perl.*
1438 #%attr(755,root,root) %{_rpmlibdir}/perldeps.pl
1439 #%attr(755,root,root) %{_rpmlibdir}/find-perl-*
1440 #%attr(755,root,root) %{_rpmlibdir}/find-*.perl
1441 #%attr(755,root,root) %{_rpmlibdir}/find-prov.pl
1442 #%attr(755,root,root) %{_rpmlibdir}/find-req.pl
1443 #%attr(755,root,root) %{_rpmlibdir}/get_magic.pl
1444
1445 %files pythonprov
1446 %defattr(644,root,root,755)
1447 %{_rpmlibdir}/macros.python
1448 %attr(755,root,root) %{_rpmlibdir}/pythondeps.sh
1449
1450 %files php-pearprov
1451 %defattr(644,root,root,755)
1452 %attr(755,root,root) %{_rpmlibdir}/php*
1453
1454 %files rubyprov
1455 %defattr(644,root,root,755)
1456 %attr(755,root,root) %{_rpmlibdir}/gem_helper.rb
1457 %attr(755,root,root) %{_rpmlibdir}/rubygems.rb
1458
1459 %if %{with python}
1460 %files -n python-rpm
1461 %defattr(644,root,root,755)
1462 %dir %{py_sitedir}/rpm
1463 %attr(755,root,root) %{py_sitedir}/rpm/*.so
1464 %{py_sitedir}/rpm/*.py[co]
1465 %endif
1466
1467 %if %{with apidocs}
1468 %files apidocs
1469 %defattr(644,root,root,755)
1470 %doc apidocs
1471 %endif