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