]> git.pld-linux.org Git - packages/rpm.git/blob - rpm.spec
Fix generation of gstreamer deps
[packages/rpm.git] / rpm.spec
1 #
2 # TODO:
3 # - make key infrastructure code fallback from keyutils to plain mode in case keyctl
4 #   returns -ENOSYS
5 # - add macros for some ppc, mipsel, alpha and sparc
6 #
7 # - when adopting, use 4.5 ticket for checklist: https://bugs.launchpad.net/pld-linux/+bug/262985
8 #
9 # Conditional build:
10 %bcond_with     static          # build static rpm+rpmi
11 %bcond_without  apidocs         # don't generate documentation with doxygen
12 %bcond_without  python          # don't build python bindings
13 %bcond_without  selinux         # build without selinux support
14 %bcond_without  suggest_tags    # build without Suggest tag (bootstrapping)
15 %bcond_without  neon            # build with HTTP/WebDAV support (neon library)
16 %bcond_without  db              # BerkeleyDB
17 %bcond_without  sqlite          # build with SQLite support
18 %bcond_with     sqlite_dbapi    # default database backend is sqlite
19 %bcond_without  system_lua      # use system lua
20 %bcond_with     keyutils        # build with keyutils support
21 # force_cc              - force using __cc other than "%{_target_cpu}-pld-linux-gcc"
22 # force_cxx             - force using __cxx other than "%{_target_cpu}-pld-linux-g++"
23 # force_cpp             - force using __cpp other than "%{_target_cpu}-pld-linux-gcc -E"
24 #
25 %if %{with sqlite_dbapi}
26 %define with_sqlite     1
27 %endif
28
29 %if %{without db} && %{without sqlite}
30 %{error:Need db or sqlite}
31 ERROR
32 %endif
33
34 %if %{with sqlite}
35 # Error: /lib64/librpmio-5.4.so: undefined symbol: sqlite3_enable_load_extension
36 %define         sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo ERROR)
37 %endif
38
39 # versions of required libraries
40 %define         reqdb_ver       5.3
41 %define         reqpopt_ver     1.15
42 %define         beecrypt_ver    2:4.1.2-4
43 %define         sover           5.4
44
45 Summary:        RPM Package Manager
46 Summary(de.UTF-8):      RPM Packet-Manager
47 Summary(es.UTF-8):      Gestor de paquetes RPM
48 Summary(pl.UTF-8):      Aplikacja do zarządzania pakietami RPM
49 Summary(pt_BR.UTF-8):   Gerenciador de pacotes RPM
50 Summary(ru.UTF-8):      Менеджер пакетов от RPM
51 Summary(uk.UTF-8):      Менеджер пакетів від RPM
52 Name:           rpm
53 Version:        5.4.10
54 Release:        12
55 License:        LGPL
56 Group:          Base
57 # http://rpm5.org/files/rpm/rpm-5.4/rpm-5.4.10-0.20120706.src.rpm
58 Source0:        %{name}-%{version}.tar.gz
59 # Source0-md5:  5d099161bdd3203265ab32ffad3360b5
60 Source100:      cpu-os-macros.tar.gz
61 # Source100-md5:        928034a5bdceb398881bc14b5f29973b
62 Source1:        %{name}.groups
63 Source2:        macros.pld.in
64 Source3:        %{name}-install-tree
65 Source4:        %{name}-find-spec-bcond
66 Source5:        %{name}-hrmib-cache
67 Source6:        %{name}-groups-po.awk
68 Source7:        %{name}-compress-doc
69 Source8:        %{name}-php-provides
70 Source9:        %{name}-php-requires
71 Source10:       %{name}.sysinfo
72 Source11:       perl.prov
73 Source12:       %{name}-user_group.sh
74 Source13:       %{name}.sysconfig
75 Source14:       %{name}-java-requires
76 # http://svn.pld-linux.org/banner.sh/
77 Source15:       banner.sh
78 Source16:       ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
79 # Source16-md5: 08b29584dd349aac9caa7610131a0a88
80 Source17:       %{name}-mimetypedeps
81 Source18:       macros.local
82 Source19:       rpm.noautocompressdoc
83 Source20:       rpm.noautoprov
84 Source21:       rpm.noautoprovfiles
85 Source22:       rpm.noautoreq
86 Source23:       rpm.noautoreqdep
87 Source24:       rpm.noautoreqfiles
88 Source25:       %{name}-php-requires.php
89 Source26:       rpmdb_checkversion.c
90 Patch0:         %{name}-branch.patch
91 Patch1:         %{name}-man_pl.patch
92 Patch2:         %{name}-popt-aliases.patch
93 Patch3:         %{name}-rpmpopt.patch
94 Patch4:         %{name}-perl-macros.patch
95 Patch5:         %{name}-perl-req-perlfile.patch
96 Patch6:         %{name}-scripts-closefds.patch
97 Patch7:         %{name}-php-macros.patch
98 Patch8:         %{name}-gettext-in-header.patch
99 Patch9:         %{name}-lua.patch
100 Patch10:        %{name}-php-deps.patch
101 Patch11:        %{name}-notsc.patch
102 Patch12:        %{name}-hack-norpmlibdep.patch
103 Patch13:        %{name}-epoch0.patch
104 Patch14:        %{name}-perl_req-INC_dirs.patch
105 Patch15:        %{name}-debuginfo.patch
106 Patch16:        vendor-pld.patch
107 Patch17:        %{name}-old-fileconflicts-behaviour.patch
108 Patch18:        %{name}-javadeps.patch
109 Patch19:        %{name}-truncate-cvslog.patch
110 Patch20:        %{name}-libtool-deps.patch
111 Patch21:        %{name}-mimetype.patch
112 Patch22:        %{name}-sparc64.patch
113 Patch23:        %{name}-gendiff.patch
114 Patch24:        openmp.patch
115 Patch25:        %{name}-URPM-build-fix.patch
116 Patch26:        %{name}-db5.3.patch
117 Patch27:        %{name}-helperEVR-noassert.patch
118 Patch28:        %{name}-unglobal.patch
119 Patch29:        %{name}-builddir-readlink.patch
120 Patch30:        %{name}-changelog_order_check_nonfatal.patch
121 Patch31:        %{name}-cleanbody.patch
122 Patch32:        %{name}-dirdeps-macro.patch
123 Patch33:        %{name}-installbeforeerase.patch
124 Patch34:        %{name}-libmagic-locale.patch
125 Patch35:        %{name}-namespace-compare.patch
126 Patch36:        %{name}-popt-coreutils.patch
127 Patch37:        %{name}-postun-nofail.patch
128 Patch38:        %{name}-silence-RPM_CHAR_TYPE.patch
129 Patch39:        %{name}-fix-missing-types-in-headers.patch
130 Patch40:        %{name}-fix--p-interpreter-and-empty-script.patch
131 Patch41:        %{name}-db_buffer_small.patch
132 Patch42:        %{name}-pattern_Release.patch
133 Patch43:        %{name}-fix-___build_pre-macro.patch
134 Patch44:        %{name}-missing-patch-file-fails-build.patch
135 Patch45:        %{name}-remove-misleading-missing-patch-message.patch
136 Patch46:        %{name}-file-magic-can-be-mixed-case.patch
137 Patch47:        %{name}-query-file-always-noisy.patch
138 Patch48:        %{name}-verify-ghosts-broken-logic.patch
139 Patch49:        %{name}-python-enable-compat-RPMSENSE.patch
140 Patch50:        %{name}-dont-treat-gstreamer-modules-as-font.patch
141
142 # Patches imported from Mandriva
143
144 # status: ready to merge, it's already been merged on HEAD, so commiting it to rpm-5_4
145 # would basically just mean backporting it..
146 Patch1000:      rpm-5.4.4-add-_specfile-macro.patch
147 # status: needs to be cleaned up and properly reviewed together with rest
148 # of the patches related to dependency generation
149 Patch1001:      rpm-5.4.9-avoid-dependencies-on-self.patch
150 # status: probably ready to merge
151 Patch1002:      rpm-5.4.4-pkgconfigdeps-check-path.patch
152 # status: probably okay to merge, but discuss on rpm-devel first
153 Patch1003:      rpm-5.4.4-glob-wildcards-for-loading-macro-files.patch
154 # status: needs to be discussed
155 Patch1004:      rpm-5.4.4-allow-installation-of-repackaged-rpms.patch
156 # status: ready to merge
157 Patch1005:      rpm-5.4.8-dont-show-suggests-with-requires.patch
158 # status: ready for merge
159 Patch1006:      rpm-5.4.9-strip-buildroot-away-from-duplicate-files-list.patch
160 # status: probably okay to merge, but discuss on rpm-devel first
161 Patch1007:      rpm-5.4.10-duplicate_files_terminate_build.patch
162 # status: same as above
163 Patch1008:      rpm-5.4.10-unpackaged_subdirs_terminate_build.patch
164 # mdvbz#64898
165 # status: uncertain, might be okay to merge, discuss on rpm-devel first
166 Patch1009:      rpm-5.4.4-rpmbuild-withoutclean.patch
167 # no sense in having an additional dependency on 'pkgconfig' on all packages that
168 # have a pkgconfig file, it's not needed for them to be made useful and anything
169 # actuallly using pkgconfig for this purpose will pull it in as a dependency anyways...
170 # status: might be okay to merge, but discuss on rpm-devel first
171 Patch1010:      rpm-5.4.4-drop-useless-auto-generated-pkgconfig-dependency.patch
172 # status: ready for merge
173 Patch1011:      rpm-5.4.4-fix-rpmconstant-to-always-use-LC_CTYPE-C-for-case-conversion.patch
174 # $RPM_BUILD_DIR isn't necessarily the same as $PWD, it's %%{_builddir}, not
175 # %%{_builddir}/%%{?buildsubdir}, messing up paths in debug packages created..
176 # status: needs to be discussed and investigated a bit better..
177 Patch1012:      rpm-5.4.4-pass-_builddir-properly-to-find-debuginfo.patch
178 # status: probably okay to merge, but discuss on rpm-devel first
179 Patch1013:      rpm-5.4.10-files-listed-twice-terminates-build.patch
180 # status: probably okay to merge
181 Patch1014:      rpm-5.4.9-ruby1.9-fixes.patch
182 # status: keep locally
183 Patch1015:      rpm-5.4.9-keep-loading-script-macros.patch
184 # status: same as for other dep gen patches
185 Patch1016:      rpm-5.4.9-update-rpmfc-when-removing-dependencies-on-self.patch
186 # status: idem
187 Patch1017:      rpm-5.4.9-rpmfc-extract-dependencies-for-all-files.patch
188 # status: ready for merge
189 Patch1018:      rpm-5.4.5-rubygems-add-missing-newline.patch
190 # status: probably okay to merge
191 Patch1019:      rpm-5.4.5-python-export-spec-macros.patch
192 # status: idem
193 Patch1020:      rpm-5.4.9-font-provides.patch
194 # stauus: idem
195 Patch1021:      rpm-5.4.7-kmod-dependencies.patch
196 # status: probably okay to merge, discuss on rpm-devel first
197 Patch1022:      rpm-5.4.5-skip-dependencies-for-character-devices.patch
198 # status: ready to merge
199 Patch1023:      rpm-5.4.5-rpmfc-use-strlen-not-sizeof.patch
200 # status: probably okay to merge
201 Patch1024:      rpm-5.4.5-rpmfc-apply-python-coloring-from-magic.patch
202 # status: ready to merge
203 Patch1025:      rpm-5.4.7-rpmfc-fix-invalid-free-if-not-_defaultdocdir-set.patch
204 # status: probably okay to merge
205 Patch1026:      rpm-5.4.10-dont-try-generate-rpmfc-dependencies-from-doc-files.patch
206 # status: ready
207 Patch1027:      rpm-5.4.7-fix-generation-of-ruby-abi-provides.patch
208 # crash reproducable with 'rpm -qa --triggers'
209 # status: ready
210 Patch1028:      rpm-5.4.7-hdrfmt-fix-unitialized-argv-element.patch
211 # status: same as for other dep gen patches
212 Patch1029:      rpm-5.4.7-dont-consider-trigger-dependencies-as-overlapping.patch
213 # status: ready
214 Patch1030:      rpm-5.4.7-fix-minor-memleaks.patch
215 # status: ready
216 Patch1031:      rpm-5.4.9-mire-fix-strings-lacking-null-terminator.patch
217 # status: ready
218 Patch1032:      rpm-5.4.9-rpmpython-fix-input.patch
219 # status: ready
220 Patch1033:      rpm-5.4.7-no-seqid_init-on-rdonly-database.patch
221 # status: probably ready for merging
222 Patch1034:      rpm-5.4.9-avoid-double-slash-in-path-for-dirname-filetrigger-matching.patch
223 # status: probably ready to merge, discuss on rpm-devel first
224 Patch1035:      rpm-5.4.9-fix-verify-segfault.patch
225 # status: ready and should be merged
226 Patch1036:      rpm-5.4.9-fix-typo-in-rpmtag-header.patch
227 # Due to rpmdav/neon being written in a different fashion than other rpmio clients,
228 # the inconsistent behaviour affects code elsewhere which expects consistent behaviour,
229 # with the result being that when unable to download files, neon will save error
230 # page as the target file.
231 # status: should go upstream, but uncertain about "correct" fix, ie. this is
232 # more of a workaround, while rewriting rpmdav code to behave consistently
233 # would be "the right thing to do". Yet I'm not fully able to grasp all of the
234 # code and don't want to spend more time just to get the API..
235 Patch1037:      rpm-5.4.10-fix-neon-saving-error-pages-as-target-file.patch
236 # As the transaction flags for ignoring arch & os are no longer used, there's
237 # currently no way to ignore arch & os of packages anymore. This patch adds
238 # support for doing this again by defining rpm variables and overriding
239 # --ignorearch & --ignoreos to set these.
240 # status: needs to be discussed upstream before thinking about merging
241 Patch1038:      rpm-5.4.10-support-ignore-arch-and-os-again.patch
242 # status: ready for merge
243 Patch1039:      rpm-5.4.4-fix-same-package-with-epoch-possible-to-upgrade.patch
244 # we want that patch too, a bit of builder infrastructure relies on NOSIGNATURES
245 Patch1040:      rpm-5.4.9-support-signatures-and-digest-disablers.patch
246
247 URL:            http://rpm5.org/
248 BuildRequires:  autoconf >= 2.60
249 BuildRequires:  automake >= 1.4
250 BuildRequires:  beecrypt-devel >= %{beecrypt_ver}
251 BuildRequires:  bzip2-devel >= 1.0.2-17
252 %{?with_db:BuildRequires:       db-devel >= %{reqdb_ver}}
253 BuildRequires:  elfutils-devel >= 0.108
254 #BuildRequires: gettext-autopoint >= 0.11.4-2
255 BuildRequires:  gettext-devel >= 0.11.4-2
256 %{?with_keyutils:BuildRequires: keyutils-devel}
257 BuildRequires:  libmagic-devel
258 %{?with_selinux:BuildRequires:  libselinux-devel >= 1.18}
259 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
260 BuildRequires:  libstdc++-devel
261 BuildRequires:  libtool >= 1:1.4.2-9
262 %if %{with neon}
263 BuildRequires:  libxml2-devel
264 BuildRequires:  neon-devel >= 0.25.5
265 %endif
266 BuildRequires:  ossp-uuid-devel
267 BuildRequires:  patch >= 2.2
268 BuildRequires:  popt-devel >= %{reqpopt_ver}
269 %{?with_system_lua:BuildRequires:       lua51-devel >= 5.1.2}
270 %{?with_python:BuildRequires:   python-devel >= 1:2.3}
271 BuildRequires:  python-modules >= 1:2.3
272 %{?with_python:BuildRequires:   rpm-pythonprov}
273 %{?with_sqlite:BuildRequires:   sqlite3-devel}
274 BuildRequires:  tcl
275 BuildRequires:  zlib-devel
276 BuildRequires:  xz-devel
277 %if %{with apidocs}
278 BuildRequires:  doxygen
279 BuildRequires:  ghostscript
280 BuildRequires:  graphviz
281 BuildRequires:  tetex-pdftex
282 %endif
283 %if %{with static}
284 # Require static library only for static build
285 BuildRequires:  beecrypt-static >= %{beecrypt_ver}
286 BuildRequires:  bzip2-static >= 1.0.2-17
287 %{?with_db:BuildRequires:       db-static >= %{reqdb_ver}}
288 BuildRequires:  elfutils-static
289 BuildRequires:  glibc-static >= 2.2.94
290 BuildRequires:  libmagic-static
291 %{?with_selinux:BuildRequires:  libselinux-static >= 1.18}
292 BuildRequires:  popt-static >= %{reqpopt_ver}
293 BuildRequires:  zlib-static
294 %endif
295 Requires:       %{name}-base = %{version}-%{release}
296 Requires:       %{name}-lib = %{version}-%{release}
297 Requires:       beecrypt >= %{beecrypt_ver}
298 Requires:       popt >= %{reqpopt_ver}
299 Provides:       rpm-db-ver = %{reqdb_ver}
300 Obsoletes:      rpm-getdeps
301 %{!?with_static:Obsoletes:      rpm-utils-static}
302 Conflicts:      glibc < 2.2.92
303 # db4.6 poldek needed
304 Conflicts:      poldek < 0.21-0.20070703.00.3
305 # segfaults with lzma 0.42.2
306 Conflicts:      lzma-libs < 4.999.3
307 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
308
309 %define         _binary_payload         w9.gzdio
310
311 # don't require very fresh rpm.macros to build
312 %define         __gettextize gettextize --copy --force --intl ; cp -f po/Makevars{.template,}
313 %define         find_lang sh ./scripts/find-lang.sh $RPM_BUILD_ROOT
314 %define         ix86    i386 i486 i586 i686 athlon pentium3 pentium4
315 %define         ppc     ppc ppc7400 ppc7450
316 %define         x8664   amd64 ia32e x86_64
317
318 # stabilize new build environment
319 %define         __newcc %{?force_cc}%{!?force_cc:%{_target_cpu}-pld-linux-gcc}
320 %define         __newcxx %{?force_cxx}%{!?force_cxx:%{_target_cpu}-pld-linux-g++}
321 %define         __newcpp %{?force_cpp}%{!?force_cpp:%{_target_cpu}-pld-linux-gcc -E}
322
323 %define         _rpmlibdir /usr/lib/rpm
324 %define         _noautocompressdoc      RPM-GPG-KEY
325
326 %define         specflags       -fno-strict-aliasing
327
328 %description
329 RPM is a powerful package manager, which can be used to build,
330 install, query, verify, update, and uninstall individual software
331 packages. A package consists of an archive of files, and package
332 information, including name, version, and description.
333
334 %description -l de.UTF-8
335 RPM ist ein kräftiger Packet-Manager, der verwendet sein kann zur
336 Installation, Anfrage, Verifizierung, Aktualisierung und
337 Uninstallation individueller Softwarepakete. Ein Paket besteht aus
338 einem Archiv Dateien und Paketinformation, inklusive Name, Version und
339 Beschreibung.
340
341 %description -l es.UTF-8
342 RPM es un poderoso administrador de paquetes, que puede ser usado para
343 construir, instalar, pesquisar, verificar, actualizar y desinstalar
344 paquetes individuales de software. Un paquete consiste en un
345 almacenaje de archivos, y información sobre el paquete, incluyendo
346 nombre, versión y descripción.
347
348 %description -l pl.UTF-8
349 RPM jest doskonałym programem zarządzającym pakietami. Umożliwia on
350 przebudowanie, instalację czy weryfikację dowolnego pakietu.
351 Informacje dotyczące każdego pakietu, takie jak jego opis, lista
352 plików wchodzących w skład pakietu, zależności od innych pakietów, są
353 przechowywane w bazie danych i można je uzyskać za pomocą opcji
354 odpytywania programu rpm.
355
356 %description -l pt_BR.UTF-8
357 RPM é um poderoso gerenciador de pacotes, que pode ser usado para
358 construir, instalar, pesquisar, verificar, atualizar e desinstalar
359 pacotes individuais de software. Um pacote consiste de um conjunto de
360 arquivos e informações adicionais, incluindo nome, versão e descrição
361 do pacote, permissões dos arquivos, etc.
362
363 %description -l ru.UTF-8
364 RPM - это мощный менеджер пакетов, который может быть использован для
365 создания, инсталляции, запросов (query), проверки, обновления и
366 удаления программных пакетов. Пакет состоит из файлового архива и
367 служебной информации, включающей название, версию, описание и другие
368 данные о пакете.
369
370 %description -l uk.UTF-8
371 RPM - це потужний менеджер пакетів, що може бути використаний для
372 створення, інсталяції, запитів (query), перевірки, поновлення та
373 видалення програмних пакетів. Пакет складається з файлового архіву та
374 службової інформації, що містить назву, версію, опис та іншу
375 інформацію про пакет.
376
377 %package base
378 Summary:        RPM base package - scripts used by rpm packages themselves
379 Summary(pl.UTF-8):      Podstawowy pakiet RPM - skrypty używane przez same pakiety rpm
380 Group:          Base
381 Requires:       filesystem
382 Obsoletes:      rpm-scripts
383 Obsoletes:      vserver-rpm
384
385 %description base
386 The RPM base package contains scripts used by rpm packages themselves.
387 These include:
388 - scripts for adding/removing groups and users needed for rpm
389   packages,
390 - banner.sh to display %%banner messages from rpm scriptlets.
391
392 %description base -l pl.UTF-8
393 Pakiet podstawowy RPM zwiera skrypty używane przez same pakiety rpm.
394 Zawiera on:
395 - skrypty dodające/usuwające grupy i użytkowników dla pakietów rpm,
396 - banner.sh do pokazywania komunikatów %%banner dla skryptletów rpm.
397
398 %package lib
399 Summary:        RPMs library
400 Summary(pl.UTF-8):      Biblioteki RPM-a
401 Group:          Libraries
402 Requires:       beecrypt >= %{beecrypt_ver}
403 %{?with_db:Requires:    db >= %{reqdb_ver}}
404 Requires:       libmagic >= 1.15-2
405 %{?with_selinux:Requires:       libselinux >= 1.18}
406 Requires:       popt >= %{reqpopt_ver}
407 %{?with_sqlite:Requires:        sqlite3 >= %{sqlite_build_version}}
408 Obsoletes:      rpm-libs
409 # avoid SEGV caused by mixed db versions
410 Conflicts:      poldek < 0.18.1-16
411
412 %description lib
413 RPMs library.
414
415 %description lib -l pl.UTF-8
416 Biblioteki RPM-a.
417
418 %package devel
419 Summary:        Header files for rpm libraries
420 Summary(de.UTF-8):      Header-Dateien für rpm Libraries
421 Summary(es.UTF-8):      Archivos de inclusión y bibliotecas para programas de manipulación de paquetes rpm
422 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek rpm
423 Summary(pt_BR.UTF-8):   Arquivos de inclusão e bibliotecas para programas de manipulação de pacotes RPM
424 Summary(ru.UTF-8):      Хедеры и библиотеки для программ, работающих с rpm-пакетами
425 Summary(uk.UTF-8):      Хедери та бібліотеки для програм, що працюють з пакетами rpm
426 Group:          Development/Libraries
427 Requires:       %{name}-lib = %{version}-%{release}
428 Requires:       beecrypt-devel >= %{beecrypt_ver}
429 Requires:       bzip2-devel
430 %{?with_db:Requires:    db-devel >= %{reqdb_ver}}
431 Requires:       elfutils-devel
432 %{?with_keyutils:Requires:      keyutils-devel}
433 Requires:       libmagic-devel
434 %{?with_selinux:Requires:       libselinux-devel}
435 Requires:       popt-devel >= %{reqpopt_ver}
436 Requires:       zlib-devel
437
438 %description devel
439 The RPM packaging system includes C libraries that make it easy to
440 manipulate RPM packages and databases. They are intended to ease the
441 creation of graphical package managers and other tools that need
442 intimate knowledge of RPM packages. This package contains header files
443 for these libraries.
444
445 %description devel -l de.UTF-8
446 Der RPM-Packensystem enthält eine C-Library, die macht es einfach
447 RPM-Pakete und Dateibanken zu manipulieren. Er eignet sich für
448 Vereinfachung des Schaffens grafischer Paket-Manager und anderer
449 Werkzeuge, die intime Kenntnis von RPM-Paketen brauchen.
450
451 %description devel -l es.UTF-8
452 El sistema de empaquetado RPM incluye una biblioteca C que vuelve
453 fácil la manipulación de paquetes y bases de datos RPM. Su objetivo es
454 facilitar la creación de administradores gráficos de paquetes y otras
455 herramientas que necesiten un conocimiento profundo de paquetes RPM.
456
457 %description devel -l pl.UTF-8
458 System RPM zawiera biblioteki C, które ułatwiają manipulowanie
459 pakietami RPM oraz bazami danych. W zamiarze ma to uprościć tworzenie
460 graficznych programów zarządzających pakietami oraz innych narzędzi,
461 które wymagają szczegółowej wiedzy na temat pakietów RPM. Ten pakiet
462 zawiera pliki nagłówkowe wspomnianych bibliotek.
463
464 %description devel -l pt_BR.UTF-8
465 O sistema de empacotamento RPM inclui uma biblioteca C que torna fácil
466 a manipulação de pacotes e bases de dados RPM. Seu objetivo é
467 facilitar a criação de gerenciadores gráficos de pacotes e outras
468 ferramentas que precisem de conhecimento profundo de pacotes RPM.
469
470 %description devel -l ru.UTF-8
471 Система управления пакетами RPM содержит библиотеку C, которая
472 упрощает манипуляцию пакетами RPM и соответствующими базами данных.
473 Эта библиотека предназначена для облегчения создания графических
474 пакетных менеджеров и других утилит, которым необходимо работать с
475 пакетами RPM.
476
477 %description devel -l uk.UTF-8
478 Система керування пакетами RPM містить бібліотеку C, котра спрощує
479 роботу з пакетами RPM та відповідними базами даних. Ця бібліотека
480 призначена для полегшення створення графічних пакетних менеджерів та
481 інших утиліт, що працюють з пакетами RPM.
482
483 %package static
484 Summary:        RPM static libraries
485 Summary(de.UTF-8):      RPMs statische Libraries
486 Summary(pl.UTF-8):      Biblioteki statyczne RPM-a
487 Summary(pt_BR.UTF-8):   Bibliotecas estáticas para o desenvolvimento de aplicações RPM
488 Summary(ru.UTF-8):      Статическая библиотека для программ, работающих с rpm-пакетами
489 Summary(uk.UTF-8):      Статична бібліотека для програм, що працюють з пакетами rpm
490 Group:          Development/Libraries
491 Requires:       %{name}-devel = %{version}-%{release}
492 Requires:       beecrypt-static >= %{beecrypt_ver}
493 Requires:       bzip2-static
494 %{?with_db:Requires:    db-static >= %{reqdb_ver}}
495 Requires:       elfutils-static
496 %{?with_keyutils:Requires:      keyutils-static}
497 Requires:       libmagic-static
498 Requires:       popt-static >= %{reqpopt_ver}
499 Requires:       zlib-static
500
501 %description static
502 RPM static libraries.
503
504 %description static -l de.UTF-8
505 RPMs statische Libraries.
506
507 %description static -l pl.UTF-8
508 Biblioteki statyczne RPM-a.
509
510 %description static -l pt_BR.UTF-8
511 Bibliotecas estáticas para desenvolvimento.
512
513 %description static -l ru.UTF-8
514 Система управления пакетами RPM содержит библиотеку C, которая
515 упрощает манипуляцию пакетами RPM и соответствующими базами данных.
516 Это статическая библиотека RPM.
517
518 %description static -l uk.UTF-8
519 Система керування пакетами RPM містить бібліотеку C, котра спрощує
520 роботу з пакетами RPM та відповідними базами даних. Це статична
521 бібліотека RPM.
522
523 %package utils
524 Summary:        Additional utilities for managing RPM packages and database
525 Summary(de.UTF-8):      Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
526 Summary(pl.UTF-8):      Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
527 Group:          Applications/File
528 Requires:       %{name} = %{version}-%{release}
529 Requires:       popt >= %{reqpopt_ver}
530 %if %{with suggest_tags}
531 Suggests:       bzip2
532 Suggests:       gzip
533 %endif
534 Conflicts:      filesystem-debuginfo < 3.0-16
535
536 %description utils
537 Additional utilities for managing RPM packages and database.
538
539 %description utils -l de.UTF-8
540 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
541
542 %description utils -l pl.UTF-8
543 Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
544
545 %package utils-perl
546 Summary:        Additional utilities for managing RPM packages and database
547 Summary(de.UTF-8):      Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
548 Summary(pl.UTF-8):      Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
549 Group:          Applications/File
550 Requires:       %{name}-utils = %{version}-%{release}
551 Requires:       popt >= %{reqpopt_ver}
552
553 %description utils-perl
554 Additional utilities for managing RPM packages and database.
555
556 %description utils-perl -l de.UTF-8
557 Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken.
558
559 %description utils-perl -l pl.UTF-8
560 Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami.
561
562 %package utils-static
563 Summary:        Static rpm utilities
564 Summary(pl.UTF-8):      Statyczne narzędzia rpm
565 Group:          Applications/System
566 Requires:       %{name} = %{version}-%{release}
567
568 %description utils-static
569 Static rpm utilities for repairing system in case something with
570 shared libraries used by rpm become broken. Currently it contains rpmi
571 binary, which can be used to install/upgrade/remove packages without
572 using shared libraries (well, in fact with exception of NSS modules).
573
574 %description utils-static -l pl.UTF-8
575 Statyczne narzędzia rpm do naprawy systemu w przypadku zepsucia czegoś
576 związanego z bibliotekami współdzielonymi używanymi przez rpm-a.
577 Aktualnie pakiet zawiera binarkę rpmi, którą można użyć do instalacji,
578 uaktualniania lub usuwania pakietów bez udziału bibliotek statycznych
579 (z wyjątkiem modułów NSS).
580
581 %package build
582 Summary:        Scripts for building binary RPM packages
583 Summary(de.UTF-8):      Scripts fürs Bauen binärer RPM-Pakete
584 Summary(pl.UTF-8):      Skrypty pomocnicze do budowania binarnych RPM-ów
585 Summary(pt_BR.UTF-8):   Scripts e programas executáveis usados para construir pacotes
586 Summary(ru.UTF-8):      Скрипты и утилиты, необходимые для сборки пакетов
587 Summary(uk.UTF-8):      Скрипти та утиліти, необхідні для побудови пакетів
588 Group:          Applications/File
589 Requires(pre):  findutils
590 Requires:       %{name}-build-macros >= 1.653
591 Requires:       %{name}-utils = %{version}-%{release}
592 Requires:       /bin/id
593 Requires:       awk
594 Requires:       bzip2
595 Requires:       chrpath >= 0.10-4
596 Requires:       cpio
597 Requires:       diffutils
598 Requires:       elfutils
599 Requires:       file >= 4.17
600 Requires:       fileutils
601 Requires:       findutils
602 %ifarch athlon
603 Requires:       gcc >= 3.0.3
604 %else
605 Requires:       gcc
606 %endif
607 Requires:       glibc-devel
608 Requires:       grep
609 Requires:       gzip
610 Requires:       make
611 Requires:       patch
612 Requires:       sed
613 Requires:       sh-utils
614 Requires:       tar
615 Requires:       textutils
616 Provides:       rpmbuild(monoautodeps)
617 Provides:       rpmbuild(noauto) = 3
618 %ifarch %{x8664}
619 Conflicts:      automake < 1:1.7.9-2
620 Conflicts:      libtool < 2:1.5-13
621 %endif
622
623 %description build
624 Scripts for building binary RPM packages.
625
626 %description build -l de.UTF-8
627 Scripts fürs Bauen binärer RPM-Pakete.
628
629 %description build -l pl.UTF-8
630 Skrypty pomocnicze do budowania binarnych RPM-ów.
631
632 %description build -l pt_BR.UTF-8
633 Este pacote contém scripts e programas executáveis que são usados para
634 construir pacotes usando o RPM.
635
636 %description build -l ru.UTF-8
637 Различные вспомогательные скрипты и исполняемые программы, которые
638 используются для сборки RPM'ов.
639
640 %description build -l uk.UTF-8
641 Різноманітні допоміжні скрипти та утиліти, які використовуються для
642 побудови RPM'ів.
643
644 %package javaprov
645 Summary:        Additional utilities for checking Java provides/requires in RPM packages
646 Summary(pl.UTF-8):      Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach RPM
647 Group:          Applications/File
648 Requires:       %{name} = %{version}-%{release}
649 Requires:       file
650 Requires:       findutils >= 1:4.2.26
651 Requires:       mktemp
652 Requires:       unzip
653
654 %description javaprov
655 Additional utilities for checking Java provides/requires in RPM
656 packages.
657
658 %description javaprov -l pl.UTF-8
659 Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach
660 RPM.
661
662 %package perlprov
663 Summary:        Additional utilities for checking Perl provides/requires in RPM packages
664 Summary(de.UTF-8):      Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen
665 Summary(pl.UTF-8):      Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM
666 Group:          Applications/File
667 Requires:       %{name} = %{version}-%{release}
668 Requires:       perl-devel
669 Requires:       perl-modules
670
671 %description perlprov
672 Additional utilities for checking Perl provides/requires in RPM
673 packages.
674
675 %description perlprov -l de.UTF-8
676 Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen.
677
678 %description perlprov -l pl.UTF-8
679 Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w
680 pakietach RPM.
681
682 %package pythonprov
683 Summary:        Python macros, which simplifies creation of RPM packages with Python software
684 Summary(pl.UTF-8):      Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Pythonie
685 Group:          Applications/File
686 Requires:       %{name} = %{version}-%{release}
687 Requires:       python
688 Requires:       python-modules
689 Requires:       python-distribute
690
691 %description pythonprov
692 Python macros, which simplifies creation of RPM packages with Python
693 software.
694
695 %description pythonprov -l pl.UTF-8
696 Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
697 Pythonie.
698
699 %package php-pearprov
700 Summary:        Additional utilities for checking PHP PEAR provides/requires in RPM packages
701 Summary(pl.UTF-8):      Dodatkowe narzędzia do sprawdzania zależności skryptów php w RPM
702 Group:          Applications/File
703 Requires:       %{name} = %{version}-%{release}
704 Requires:       sed >= 4.0
705
706 %description php-pearprov
707 Additional utilities for checking PHP PEAR provides/requires in RPM
708 packages.
709
710 %description php-pearprov -l pl.UTF-8
711 Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w
712 pakietach RPM.
713
714 %package -n python-rpm
715 Summary:        Python interface to RPM library
716 Summary(pl.UTF-8):      Pythonowy interfejs do biblioteki RPM-a
717 Summary(pt_BR.UTF-8):   Módulo Python para aplicativos que manipulam pacotes RPM
718 Group:          Development/Languages/Python
719 Requires:       %{name} = %{version}-%{release}
720 %pyrequires_eq  python
721 Obsoletes:      rpm-python
722
723 %description -n python-rpm
724 The rpm-python package contains a module which permits applications
725 written in the Python programming language to use the interface
726 supplied by RPM (RPM Package Manager) libraries.
727
728 This package should be installed if you want to develop Python
729 programs that will manipulate RPM packages and databases.
730
731 %description -n python-rpm -l pl.UTF-8
732 Pakiet rpm-python zawiera moduł, który pozwala aplikacjom napisanym w
733 Pythonie na używanie interfejsu dostarczanego przez biblioteki RPM-a.
734
735 Pakiet ten powinien zostać zainstalowany, jeśli chcesz pisać w
736 Pythonie programy manipulujące pakietami i bazami danych rpm.
737
738 %description -n python-rpm -l pt_BR.UTF-8
739 O pacote rpm-python contém um módulo que permite que aplicações
740 escritas em Python utilizem a interface fornecida pelas bibliotecas
741 RPM (RPM Package Manager).
742
743 Esse pacote deve ser instalado se você quiser desenvolver programas em
744 Python para manipular pacotes e bancos de dados RPM.
745
746 %package apidocs
747 Summary:        RPM API documentation and guides
748 Summary(pl.UTF-8):      Documentacja API RPM-a i przewodniki
749 Group:          Documentation
750
751 %description apidocs
752 Documentation for RPM API and guides in HTML format generated from rpm
753 sources by doxygen.
754
755 %description apidocs -l pl.UTF-8
756 Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
757 źrodeł RPM-a przez doxygen.
758
759 %prep
760 %setup -q -n %{name}-%{version}%{?subver} -a100
761 #patch0 -p1
762 %patch1 -p1
763 %patch2 -p1
764 %patch3 -p1
765 %patch4 -p1
766 %patch5 -p1
767 %patch6 -p1
768 %patch7 -p1
769 %patch8 -p1
770 %{?with_system_lua:%patch9 -p1}
771 %patch10 -p1
772 %ifnarch i386 i486
773 # enable TSC for capable archs
774 %patch11 -p1
775 %endif
776 %patch12 -p1
777 %patch13 -p1
778 %patch14 -p0
779 %patch15 -p1
780 %patch16 -p1
781 %patch17 -p1
782 %patch18 -p1
783 %patch19 -p1
784 %patch20 -p1
785 %patch21 -p1
786 %ifarch sparc64
787 %patch22 -p1
788 %endif
789 %patch23 -p1
790 %patch24 -p1
791 %patch25 -p1
792 %patch26 -p1
793 %patch27 -p1
794 %patch28 -p1
795 %patch29 -p1
796 %patch30 -p1
797 %patch31 -p1
798 %patch32 -p1
799 %patch33 -p1
800 %patch34 -p1
801 %patch35 -p1
802 %patch36 -p1
803 %patch37 -p1
804 %patch38 -p1
805 %patch39 -p1
806 %patch40 -p1
807 %patch41 -p1
808 %patch42 -p1
809 %patch43 -p1
810 %patch44 -p1
811 %patch45 -p1
812 %patch46 -p1
813 %patch47 -p1
814 %patch48 -p1
815 %patch49 -p1
816 %patch50 -p1
817
818 %patch1000 -p1
819 %patch1001 -p1
820 %patch1002 -p1
821 %patch1003 -p1
822 %patch1004 -p1
823 %patch1005 -p1
824 %patch1006 -p1
825 %patch1007 -p1
826 %patch1008 -p1
827 %patch1009 -p1
828 %patch1010 -p1
829 %patch1011 -p1
830 %patch1012 -p1
831 %patch1013 -p1
832 %patch1014 -p1
833 %patch1015 -p1
834 %patch1016 -p1
835 %patch1017 -p1
836 %patch1018 -p1
837 %patch1019 -p1
838 %patch1020 -p1
839 %patch1021 -p1
840 %patch1022 -p1
841 %patch1023 -p1
842 %patch1024 -p1
843 %patch1025 -p1
844 %patch1026 -p1
845 %patch1027 -p1
846 %patch1028 -p1
847 %patch1029 -p1
848 %patch1030 -p1
849 %patch1031 -p1
850 %patch1032 -p1
851 %patch1033 -p1
852 %patch1034 -p1
853 %patch1035 -p1
854 %patch1036 -p1
855 %patch1037 -p1
856 %patch1038 -p1
857 %patch1039 -p1
858 %patch1040 -p1
859
860 install %{SOURCE2} macros/pld.in
861 install %{SOURCE8} scripts/php.prov.in
862 install %{SOURCE9} scripts/php.req.in
863 install %{SOURCE11} scripts/perl.prov.in
864
865 %{__mv} -f scripts/perl.req{,.in}
866
867 # generate Group translations to *.po
868 awk -f %{SOURCE6} %{SOURCE1}
869
870 install %{SOURCE26} tools/rpmdb_checkversion.c
871
872 %build
873 %{__libtoolize}
874 #%{__autopoint}
875 %{__aclocal}
876 %{__autoheader}
877 %{__autoconf}
878 %{__automake}
879
880 # rpm checks for CPU type at runtime, but it looks better
881 sed -i \
882         -e 's|@host@|%{_target_cpu}-%{_target_vendor}-%{_target_os}|' \
883         -e 's|@host_cpu@|%{_target_cpu}|' \
884         -e 's|@host_os@|%{_target_os}|' \
885         macros/macros.in
886
887 %{?with_system_lua:CPPFLAGS="-I/usr/include/lua51 %{rpmcppflags}"}
888 # pass CC and CXX too in case of building with some older configure macro
889 %configure \
890         CC="%{__newcc}" \
891         CXX="%{__newcxx}" \
892         CPP="%{__newcpp}" \
893         WITH_PERL_VERSION=no \
894         --enable-shared \
895         --enable-static \
896         %{!?with_apidocs:--without-apidocs} \
897         %{?with_python:--with-python=%{py_ver} --with-python-lib-dir=%{py_sitedir}} \
898         %{!?with_python:--without-python} \
899         --with%{!?with_selinux:out}-selinux \
900         --with-libelf \
901         --with-zlib=external \
902         --with-bzip2=external \
903         --with-beecrypt=external \
904         --with-lzma=external \
905         --with-xz=external \
906         --with-neon=%{?with_neon:external}%{!?with_neon:no} \
907         --with-file=external \
908         --with-popt=external \
909         --with-db=%{?with_db:external}%{!?with_db:no} \
910         --with-sqlite=%{?with_sqlite:yes}%{!?with_sqlite:no} \
911         --with-dbapi=%{!?with_sqlite_dbapi:db}%{?with_sqlite_dbapi:sqlite} \
912         --with-lua=%{!?with_system_lua:internal}%{?with_system_lua:external} \
913         --with-pcre=external \
914         --with-keyutils=%{?with_keyutils:external}%{!?with_keyutils:no} \
915         --with-uuid=%{_libdir}:%{_includedir}/ossp-uuid \
916         --without-path-versioned \
917         --with-extra-path-macros='%{_sysconfdir}/rpm/macros.d/*.macros:%{_rpmlibdir}/macros.d/pld:%{_rpmlibdir}/macros.build:~/etc/.rpmmacros:~/.rpmmacros' \
918         --with-bugreport="http://bugs.pld-linux.org/" \
919         --with-vendor=pld
920
921 %{__make} -j1 \
922         CC="%{__cc}" \
923         CXX="%{__cxx}" \
924         CPP="%{__cpp}"
925
926 %{?with_apidocs:%{__make} apidocs}
927
928 %{__cc} %{rpmcflags} tools/rpmdb_checkversion.c -o tools/rpmdb_checkversion -ldb
929
930 %install
931 rm -rf $RPM_BUILD_ROOT
932 install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm} \
933         $RPM_BUILD_ROOT{/var/lib/banner,/var/cache/hrmib,/etc/pki/rpm-gpg}
934
935 install %{SOURCE16} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
936
937 %{__make} install \
938         pkgconfigdir=%{_pkgconfigdir} \
939         DESTDIR=$RPM_BUILD_ROOT
940
941 # install ARCH macros
942 install -d $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux
943 install cpu-os-macros/noarch-linux/macros $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux/macros
944
945 %ifarch %{ix86}
946 install -d $RPM_BUILD_ROOT%{_rpmlibdir}/{i386,i486,i586,i686,athlon,pentium3,pentium4}-linux
947 install cpu-os-macros/athlon-linux/macros   $RPM_BUILD_ROOT%{_rpmlibdir}/athlon-linux/macros
948 install cpu-os-macros/i386-linux/macros     $RPM_BUILD_ROOT%{_rpmlibdir}/i386-linux/macros
949 install cpu-os-macros/i486-linux/macros     $RPM_BUILD_ROOT%{_rpmlibdir}/i486-linux/macros
950 install cpu-os-macros/i586-linux/macros     $RPM_BUILD_ROOT%{_rpmlibdir}/i586-linux/macros
951 install cpu-os-macros/i686-linux/macros     $RPM_BUILD_ROOT%{_rpmlibdir}/i686-linux/macros
952 install cpu-os-macros/pentium3-linux/macros $RPM_BUILD_ROOT%{_rpmlibdir}/pentium3-linux/macros
953 install cpu-os-macros/pentium4-linux/macros $RPM_BUILD_ROOT%{_rpmlibdir}/pentium4-linux/macros
954 %endif
955
956 %ifarch %{x8664}
957 install -d $RPM_BUILD_ROOT%{_rpmlibdir}/{x86_64,ia32e,amd64}-linux
958 install cpu-os-macros/x86_64-linux/macros $RPM_BUILD_ROOT%{_rpmlibdir}/x86_64-linux/macros
959 install cpu-os-macros/ia32e-linux/macros  $RPM_BUILD_ROOT%{_rpmlibdir}/ia32e-linux/macros
960 install cpu-os-macros/amd64-linux/macros  $RPM_BUILD_ROOT%{_rpmlibdir}/amd64-linux/macros
961 %endif
962
963 %ifarch %{ppc}
964 install -d $RPM_BUILD_ROOT%{_rpmlibdir}/ppc-linux
965 install cpu-os-macros/ppc-linux/macros $RPM_BUILD_ROOT%{_rpmlibdir}/ppc-linux/macros
966 %endif
967
968 cat <<'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
969 # first platform file entry can't contain regexps
970 %{_target_cpu}-%{_target_vendor}-linux
971
972 # x86_64 things
973 %ifarch x86_64
974 x86_64-[^-]*-[Ll]inux(-gnu)?
975 amd64-[^-]*-[Ll]inux(-gnu)?
976 %endif
977 %ifarch amd64
978 amd64-[^-]*-[Ll]inux(-gnu)?
979 x86_64-[^-]*-[Ll]inux(-gnu)?
980 %endif
981 %ifarch ia32e
982 ia32e-[^-]*-[Ll]inux(-gnu)?
983 x86_64-[^-]*-[Ll]inux(-gnu)?
984 %endif
985
986 # x86 things
987 %ifarch athlon %{x8664}
988 athlon-[^-]*-[Ll]inux(-gnu)?
989 %endif
990 %ifarch pentium4 athlon %{x8664}
991 pentium4-[^-]*-[Ll]inux(-gnu)?
992 %endif
993 %ifarch pentium3 pentium4 athlon %{x8664}
994 pentium3-[^-]*-[Ll]inux(-gnu)?
995 %endif
996 %ifarch i686 pentium3 pentium4 athlon %{x8664}
997 i686-[^-]*-[Ll]inux(-gnu)?
998 %endif
999 %ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
1000 i586-[^-]*-[Ll]inux(-gnu)?
1001 %endif
1002 %ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
1003 i486-[^-]*-[Ll]inux(-gnu)?
1004 %endif
1005 %ifarch %{ix86} %{x8664}
1006 i386-[^-]*-[Ll]inux(-gnu)?
1007 %endif
1008
1009 %ifarch alpha
1010 alpha-[^-]*-[Ll]inux(-gnu)?
1011 %endif
1012
1013 %ifarch ia64
1014 ia64-[^-]*-[Ll]inux(-gnu)?
1015 %endif
1016
1017 %ifarch ppc64
1018 powerpc64-[^-]*-[Ll]inux(-gnu)?
1019 ppc64-[^-]*-[Ll]inux(-gnu)?
1020 %endif
1021 %ifarch %{ppc} ppc64
1022 powerpc-[^-]*-[Ll]inux(-gnu)?
1023 ppc-[^-]*-[Ll]inux(-gnu)?
1024 %endif
1025
1026 %ifarch s390x
1027 s390x-[^-]*-[Ll]inux(-gnu)?
1028 %endif
1029 %ifarch s390 s390x
1030 s390-[^-]*-[Ll]inux(-gnu)?
1031 %endif
1032
1033 %ifarch sparc64
1034 sparc64-[^-]*-[Ll]inux(-gnu)?
1035 sparcv8-[^-]*-[Ll]inux(-gnu)?
1036 sparcv9-[^-]*-[Ll]inux(-gnu)?
1037 %endif
1038 %ifarch sparcv9
1039 sparcv8-[^-]*-[Ll]inux(-gnu)?
1040 sparcv9-[^-]*-[Ll]inux(-gnu)?
1041 %endif
1042 %ifarch sparc sparcv9 sparc64
1043 sparc-[^-]*-[Ll]inux(-gnu)?
1044 %endif
1045
1046 # noarch
1047 noarch-[^-]*-.*
1048 EOF
1049
1050 rm $RPM_BUILD_ROOT%{_rpmlibdir}/vpkg-provides*
1051 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl
1052 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl
1053 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-lang.sh
1054
1055 # not installed since 4.4.8 (-tools-perl subpackage)
1056 install scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
1057
1058 install %{SOURCE1} doc/manual/groups
1059 install %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
1060 install %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
1061 install %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
1062 install %{SOURCE12} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
1063 install %{SOURCE14} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
1064 install scripts/find-php*       $RPM_BUILD_ROOT%{_rpmlibdir}
1065 install scripts/php.{prov,req}  $RPM_BUILD_ROOT%{_rpmlibdir}
1066 cp -p %{SOURCE25} $RPM_BUILD_ROOT%{_rpmlibdir}/php.req.php
1067 install %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/mimetypedeps.sh
1068 install %{SOURCE5} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
1069 install %{SOURCE13} $RPM_BUILD_ROOT/etc/sysconfig/rpm
1070
1071 install %{SOURCE15} $RPM_BUILD_ROOT%{_bindir}/banner.sh
1072
1073 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
1074
1075 install %{SOURCE18} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros
1076 install %{SOURCE19} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc
1077 install %{SOURCE20} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov
1078 install %{SOURCE21} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles
1079 install %{SOURCE22} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq
1080 install %{SOURCE23} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep
1081 install %{SOURCE24} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles
1082
1083 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Conflictname
1084 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Dirnames
1085 install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Filelinktos
1086 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Obsoletename
1087 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Providename
1088 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Requirename
1089
1090 install tools/rpmdb_checkversion $RPM_BUILD_ROOT%{_rpmlibdir}/bin
1091
1092 # create macro loading wrappers for backward compatibility
1093 for m in gstreamer java mono perl php python; do
1094         echo "%%{load:%{_rpmlibdir}/macros.d/$m}" >$RPM_BUILD_ROOT%{_rpmlibdir}/macros.$m
1095 done
1096
1097 # for rpm -e|-U --repackage
1098 install -d $RPM_BUILD_ROOT/var/{spool/repackage,lock/rpm}
1099 touch $RPM_BUILD_ROOT/var/lock/rpm/transaction
1100
1101 # move rpm to /bin
1102 mv $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
1103 # move essential libs to /lib (libs that /bin/rpm links to)
1104 for a in librpm-%{sover}.so librpmdb-%{sover}.so librpmio-%{sover}.so librpmbuild-%{sover}.so librpmmisc-%{sover}.so librpmconstant-%{sover}.so; do
1105         mv -f $RPM_BUILD_ROOT%{_libdir}/$a $RPM_BUILD_ROOT/%{_lib}
1106         ln -s /%{_lib}/$a $RPM_BUILD_ROOT%{_libdir}/$a
1107 done
1108
1109 # Bourne shell script vs ELF executable linked with rpm,rpmdb,rpmio
1110 mv $RPM_BUILD_ROOT{%{_rpmlibdir},%{_bindir}}/rpm2cpio
1111
1112 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
1113 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
1114
1115 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/rpm/*.{la,a,py}
1116
1117 # wrong location, not used anyway
1118 %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log,xinetd}
1119 # utils dropped in 4.4.8 -- their manuals
1120 %{__rm} $RPM_BUILD_ROOT%{_mandir}/*/man8/rpmgraph.8
1121 # utils dropped in 5.4 -- their manuals
1122 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rpmgrep.1
1123 # script obsoleted by /usr/lib/rpm/bin/dbconvert binary
1124 %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/dbconvert.sh
1125
1126 %find_lang %{name}
1127
1128 %{__rm} -rf manual
1129 cp -a doc/manual manual
1130 %{__rm} -f manual/Makefile*
1131
1132 %clean
1133 rm -rf $RPM_BUILD_ROOT
1134
1135 %pretrans
1136 # this needs to be a dir
1137 if [ -f %{_sysconfdir}/rpm/sysinfo ]; then
1138         umask 022
1139         mv -f %{_sysconfdir}/rpm/sysinfo{,.rpmsave}
1140         mkdir %{_sysconfdir}/rpm/sysinfo
1141 fi
1142
1143 %posttrans
1144 if [ -x %{_rpmlibdir}/bin/rpmdb_checkversion ] && \
1145                 ! %{_rpmlibdir}/bin/rpmdb_checkversion -h /var/lib/rpm -d /var/lib/rpm ; then
1146         if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && \
1147                         /bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release} ; then
1148                 echo
1149                 echo "Backup of the rpm database has been created in /var/lib/rpm.rpmbackup-%{version}-%{release}"
1150                 echo
1151         fi
1152         if [ -x %{_rpmlibdir}/bin/dbconvert ]; then
1153                 if ! %{_rpmlibdir}/bin/dbconvert --rebuilddb ; then
1154                         echo
1155                         echo "rpm database conversion failed!"
1156                         echo "You have to run  %{_rpmlibdir}/bin/dbconvert manually"
1157                         echo
1158                 fi
1159         fi
1160 fi
1161
1162 %triggerpostun -- %{name} < 4.4.9-44
1163 %{_rpmlibdir}/hrmib-cache
1164
1165 %post   lib -p /sbin/ldconfig
1166 %postun lib -p /sbin/ldconfig
1167
1168 %pretrans build
1169 find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
1170
1171 %files -f %{name}.lang
1172 %defattr(644,root,root,755)
1173 %doc CHANGES CREDITS README pubkeys/JBJ-GPG-KEY manual/*
1174
1175 %dir %{_sysconfdir}/pki/rpm-gpg
1176 %{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
1177
1178 %attr(755,root,root) /bin/rpm
1179
1180 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros
1181 %dir %{_sysconfdir}/rpm/sysinfo
1182 # these are ok to be replaced
1183 %config %verify(not md5 mtime size) %{_sysconfdir}/rpm/sysinfo/*
1184 %config %verify(not md5 mtime size) %{_sysconfdir}/rpm/platform
1185
1186 %{_mandir}/man8/rpm.8*
1187 %lang(fr) %{_mandir}/fr/man8/rpm.8*
1188 %lang(ja) %{_mandir}/ja/man8/rpm.8*
1189 %lang(ko) %{_mandir}/ko/man8/rpm.8*
1190 %lang(pl) %{_mandir}/pl/man8/rpm.8*
1191 %lang(ru) %{_mandir}/ru/man8/rpm.8*
1192 %lang(sk) %{_mandir}/sk/man8/rpm.8*
1193
1194 %dir /var/lib/rpm
1195 %dir /var/lib/rpm/log
1196 %dir /var/lib/rpm/tmp
1197 %config(noreplace) %verify(not md5 mtime size) /var/lib/rpm/DB_CONFIG
1198 %dir %attr(700,root,root) /var/spool/repackage
1199 %dir /var/lock/rpm
1200 /var/lock/rpm/transaction
1201
1202 # exported package NVRA (stamped with install tid)
1203 # net-snmp hrSWInstalledName queries, bash-completions
1204 %dir /var/cache/hrmib
1205
1206 %{_rpmlibdir}/qf
1207 %{_rpmlibdir}/rpmpopt*
1208 %{_rpmlibdir}/macros
1209 %dir %{_rpmlibdir}/macros.d
1210 %{_rpmlibdir}/macros.d/pld
1211 %{_rpmlibdir}/cpuinfo.yaml
1212
1213 %attr(755,root,root) %{_rpmlibdir}/hrmib-cache
1214
1215 %dir %{_rpmlibdir}/bin
1216 %attr(755,root,root) %{_rpmlibdir}/bin/dbconvert
1217 %attr(755,root,root) %{_rpmlibdir}/bin/rpmdb_checkversion
1218
1219 %files base
1220 %defattr(644,root,root,755)
1221 %dir %{_sysconfdir}/rpm
1222 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rpm
1223 %dir %{_rpmlibdir}
1224 %attr(755,root,root) %{_bindir}/banner.sh
1225 %attr(755,root,root) %{_bindir}/multiarch-dispatch
1226 %attr(755,root,root) %{_rpmlibdir}/user_group.sh
1227 %dir /var/lib/banner
1228
1229 %files lib
1230 %defattr(644,root,root,755)
1231 %attr(755,root,root) /%{_lib}/librpm-%{sover}.so
1232 %attr(755,root,root) /%{_lib}/librpmdb-%{sover}.so
1233 %attr(755,root,root) /%{_lib}/librpmio-%{sover}.so
1234 %attr(755,root,root) /%{_lib}/librpmbuild-%{sover}.so
1235 %attr(755,root,root) /%{_lib}/librpmmisc-%{sover}.so
1236 %attr(755,root,root) /%{_lib}/librpmconstant-%{sover}.so
1237
1238 %files devel
1239 %defattr(644,root,root,755)
1240 %attr(755,root,root) %{_libdir}/librpm.so
1241 %attr(755,root,root) %{_libdir}/librpm-%{sover}.so
1242 %attr(755,root,root) %{_libdir}/librpmbuild.so
1243 %attr(755,root,root) %{_libdir}/librpmbuild-%{sover}.so
1244 %attr(755,root,root) %{_libdir}/librpmconstant.so
1245 %attr(755,root,root) %{_libdir}/librpmconstant-%{sover}.so
1246 %attr(755,root,root) %{_libdir}/librpmdb.so
1247 %attr(755,root,root) %{_libdir}/librpmdb-%{sover}.so
1248 %attr(755,root,root) %{_libdir}/librpmio.so
1249 %attr(755,root,root) %{_libdir}/librpmio-%{sover}.so
1250 %attr(755,root,root) %{_libdir}/librpmmisc.so
1251 %attr(755,root,root) %{_libdir}/librpmmisc-%{sover}.so
1252 %{_libdir}/librpm*.la
1253 %{_includedir}/rpm
1254 %{_includedir}/multiarch-dispatch.h
1255 %{_pkgconfigdir}/*.pc
1256
1257 %files static
1258 %defattr(644,root,root,755)
1259 %{_libdir}/librpm*.a
1260
1261 %files utils
1262 %defattr(644,root,root,755)
1263 %attr(755,root,root) %{_bindir}/rpm2cpio
1264 %attr(755,root,root) %{_bindir}/rpmconstant
1265 %attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh
1266 %attr(755,root,root) %{_rpmlibdir}/rpmdb_loadcvt
1267 %attr(755,root,root) %{_rpmlibdir}/tgpg
1268 %attr(755,root,root) %{_rpmlibdir}/bin/chroot
1269 %attr(755,root,root) %{_rpmlibdir}/bin/cp
1270 %attr(755,root,root) %{_rpmlibdir}/bin/debugedit
1271 %attr(755,root,root) %{_rpmlibdir}/bin/find
1272 %attr(755,root,root) %{_rpmlibdir}/bin/mgo
1273 %attr(755,root,root) %{_rpmlibdir}/bin/mtree
1274 %attr(755,root,root) %{_rpmlibdir}/bin/rpmcache
1275 %attr(755,root,root) %{_rpmlibdir}/bin/rpmcmp
1276 %attr(755,root,root) %{_rpmlibdir}/bin/rpmdeps
1277 %attr(755,root,root) %{_rpmlibdir}/bin/rpmdigest
1278 %{?with_keyutils:%attr(755,root,root) %{_rpmlibdir}/bin/rpmkey}
1279 %attr(755,root,root) %{_rpmlibdir}/bin/rpmrepo
1280 %{_mandir}/man8/rpm2cpio.8*
1281 %{_mandir}/man8/rpmcache.8*
1282 %{_mandir}/man8/rpmconstant.8*
1283 %{_mandir}/man8/rpmdeps.8*
1284 %{_mandir}/man8/rpmmtree.8*
1285 %lang(ja) %{_mandir}/ja/man8/rpm2cpio.8*
1286 %lang(ja) %{_mandir}/ja/man8/rpmcache.8*
1287 %lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
1288 %lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
1289 %lang(pl) %{_mandir}/pl/man8/rpmcache.8*
1290 %lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
1291 %lang(ru) %{_mandir}/ru/man8/rpm2cpio.8*
1292
1293 %files utils-perl
1294 %defattr(644,root,root,755)
1295 %attr(755,root,root) %{_rpmlibdir}/rpmdiff*
1296
1297 %if %{with static}
1298 %files utils-static
1299 %defattr(644,root,root,755)
1300 %attr(755,root,root) %{_bindir}/rpm[ieu]
1301 %attr(755,root,root) %{_rpmlibdir}/rpm[ieu]
1302 %endif
1303
1304 %files build
1305 %defattr(644,root,root,755)
1306 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/noauto*
1307 %attr(755,root,root) %{_rpmlibdir}/brp-*
1308 %attr(755,root,root) %{_rpmlibdir}/check-files
1309 %attr(755,root,root) %{_rpmlibdir}/compress-doc
1310 %attr(755,root,root) %{_rpmlibdir}/cross-build
1311 %attr(755,root,root) %{_rpmlibdir}/find-spec-bcond
1312 %attr(755,root,root) %{_rpmlibdir}/getpo.sh
1313 %attr(755,root,root) %{_rpmlibdir}/install-build-tree
1314 %attr(755,root,root) %{_rpmlibdir}/u_pkg.sh
1315 %attr(755,root,root) %{_rpmlibdir}/executabledeps.sh
1316 %attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh
1317 %attr(755,root,root) %{_rpmlibdir}/mimetypedeps.sh
1318 # needs hacked pkg-config to return anything
1319 %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh
1320 %attr(755,root,root) %{_rpmlibdir}/bin/api-sanity-autotest.pl
1321 %attr(755,root,root) %{_rpmlibdir}/bin/api-sanity-checker.pl
1322 %attr(755,root,root) %{_rpmlibdir}/bin/install-sh
1323 %attr(755,root,root) %{_rpmlibdir}/bin/mkinstalldirs
1324 %attr(755,root,root) %{_rpmlibdir}/bin/pom2spec
1325 %attr(755,root,root) %{_rpmlibdir}/bin/rpmspecdump
1326 %attr(755,root,root) %{_rpmlibdir}/bin/sqlite3
1327 %attr(755,root,root) %{_rpmlibdir}/bin/wget
1328 %attr(755,root,root) %{_rpmlibdir}/vcheck
1329 %{_rpmlibdir}/noarch-*
1330 %ifarch %{ix86}
1331 %{_rpmlibdir}/i?86*
1332 %{_rpmlibdir}/pentium*
1333 %{_rpmlibdir}/athlon*
1334 %endif
1335 %ifarch alpha
1336 %{_rpmlibdir}/alpha*
1337 %endif
1338 %ifarch ia64
1339 %{_rpmlibdir}/ia64*
1340 %endif
1341 %ifarch mips mipsel mips64 mips64el
1342 %{_rpmlibdir}/mips*
1343 %endif
1344 %ifarch %{ppc}
1345 %{_rpmlibdir}/ppc*
1346 %endif
1347 %ifarch sparc sparc64
1348 %{_rpmlibdir}/sparc*
1349 %endif
1350 %ifarch %{x8664}
1351 %{_rpmlibdir}/amd64*
1352 %{_rpmlibdir}/ia32e*
1353 %{_rpmlibdir}/x86_64*
1354 %endif
1355 # not used yet ... these six depend on perl
1356 %attr(755,root,root) %{_rpmlibdir}/http.req
1357 # we always used scripts provided by mono-devel, maybe move them here
1358 #%attr(755,root,root) %{_rpmlibdir}/mono-find-provides
1359 #%attr(755,root,root) %{_rpmlibdir}/mono-find-requires
1360
1361 %attr(755,root,root) %{_rpmlibdir}/fontconfig.prov
1362 # must be here for "Requires: rpm-*prov" to work
1363 %{_rpmlibdir}/macros.d/cmake
1364 %{_rpmlibdir}/macros.d/gstreamer
1365 %{_rpmlibdir}/macros.d/java
1366 %{_rpmlibdir}/macros.d/kernel
1367 %{_rpmlibdir}/macros.d/libtool
1368 %{_rpmlibdir}/macros.d/mono
1369 %{_rpmlibdir}/macros.d/perl
1370 %{_rpmlibdir}/macros.d/php
1371 %{_rpmlibdir}/macros.d/pkgconfig
1372 %{_rpmlibdir}/macros.d/python
1373 %{_rpmlibdir}/macros.d/ruby
1374 %{_rpmlibdir}/macros.d/selinux
1375 %{_rpmlibdir}/macros.d/tcl
1376 %{_rpmlibdir}/macros.rpmbuild
1377 # compat wrappers
1378 %{_rpmlibdir}/macros.gstreamer
1379 %{_rpmlibdir}/macros.java
1380 %{_rpmlibdir}/macros.mono
1381 %{_rpmlibdir}/macros.perl
1382 %{_rpmlibdir}/macros.php
1383 %{_rpmlibdir}/macros.python
1384
1385 %attr(755,root,root) %{_rpmlibdir}/check-multiarch-files
1386 %attr(755,root,root) %{_rpmlibdir}/gem_helper.rb
1387 %attr(755,root,root) %{_rpmlibdir}/gstreamer.sh
1388 %attr(755,root,root) %{_rpmlibdir}/kmod-deps.sh
1389 %attr(755,root,root) %{_rpmlibdir}/mkmultiarch
1390 %attr(755,root,root) %{_rpmlibdir}/rubygems.rb
1391
1392 %attr(755,root,root) %{_bindir}/gendiff
1393 %attr(755,root,root) %{_bindir}/multiarch-platform
1394 %attr(755,root,root) %{_bindir}/rpmbuild
1395
1396 %dir %{_rpmlibdir}/helpers
1397 %attr(755,root,root) %{_rpmlibdir}/helpers/makeshlibs
1398
1399 %{_mandir}/man1/gendiff.1*
1400 %{_mandir}/man8/rpmbuild.8*
1401 %lang(ja) %{_mandir}/ja/man8/rpmbuild.8*
1402 %lang(pl) %{_mandir}/pl/man1/gendiff.1*
1403 %lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
1404
1405 %files javaprov
1406 %defattr(644,root,root,755)
1407 %attr(755,root,root) %{_rpmlibdir}/java-find-requires
1408 # needs jar (any jdk), jcf-dump (gcc-java) to work
1409 %attr(755,root,root) %{_rpmlibdir}/javadeps.sh
1410
1411 %files perlprov
1412 %defattr(644,root,root,755)
1413 %attr(755,root,root) %{_rpmlibdir}/perl.*
1414 %attr(755,root,root) %{_rpmlibdir}/osgideps.pl
1415 %attr(755,root,root) %{_rpmlibdir}/perldeps.pl
1416
1417 %files pythonprov
1418 %defattr(644,root,root,755)
1419 %attr(755,root,root) %{_rpmlibdir}/pythoneggs.py
1420 %attr(755,root,root) %{_rpmlibdir}/pythondeps.sh
1421
1422 %files php-pearprov
1423 %defattr(644,root,root,755)
1424 %attr(755,root,root) %{_rpmlibdir}/php*
1425 %attr(755,root,root) %{_rpmlibdir}/find-php*
1426
1427 %if %{with python}
1428 %files -n python-rpm
1429 %defattr(644,root,root,755)
1430 %dir %{py_sitedir}/rpm
1431 %attr(755,root,root) %{py_sitedir}/rpm/*.so
1432 %{py_sitedir}/rpm/*.py[co]
1433 %endif
1434
1435 %if %{with apidocs}
1436 %files apidocs
1437 %defattr(644,root,root,755)
1438 %doc apidocs
1439 %endif
This page took 0.2617 seconds and 4 git commands to generate.