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