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