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