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