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