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