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