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