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