]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
- dropped obsolete comment
[packages/rpm.git] / rpm.spec
index ee7b0198658e090b21e6a7fa630c4844b14114f2..62c8f9b620e2fc3847767eb5e4fae6dabb10842c 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -1,16 +1,27 @@
 #
 # TODO:
+# - check if we want shell autodeps: Requires: executable(ln) executable(mv)
+# - %{_arch} = i686 not as used to be i386:
+#   5.0.2: rpm -E '%_target_base_arch %_arch'
+#          i386 i686
+#   4.4.9: rpm -E '%_target_base_arch %_arch'
+#          i386 i386
 # - python(abi) cap is not provided automatically because /usr/lib*/libpython2*.so.*
 #   matches ELF first
-# - repackaging when lzma is not installed (todo: fix digest signature of header)
-#   rpmbuild computes digest when writing package to temporary file, then adds a few
-#   tags (incl. digest) and writes whole package to destination file;
-#   repackaging uses unchanged "immutable header" image from original rpm, also
-#   preserving payload format and compressor from original rpm, _not_ current settings
 # - TODO: add macros for some ppc, mipsel, alpha and sparc
+# - uppackaged list:
+#   /usr/lib/rpm/http.req
+#   /usr/lib/rpm/install-sh
+#   /usr/lib/rpm/mono-find-provides
+#   /usr/lib/rpm/mono-find-requires
+#   /usr/lib/rpm/osgideps.pl
+#   /usr/lib/rpm/perldeps.pl
+#   /usr/lib/rpm/vcheck
+#   /usr/share/man/man8/rpmconstant.8
 #
 # Conditional build:
 %bcond_with    static          # build static rpm+rpmi
+%bcond_without apidocs         # don't generate documentation with doxygen
 %bcond_with    autoreqdep      # autogenerate package name deps in addition to sonames/perl(X)
 %bcond_without python          # don't build python bindings
 %bcond_without selinux         # build without selinux support
@@ -19,6 +30,7 @@
 %bcond_without db              # BerkeleyDB
 %bcond_with    sqlite          # build with SQLite support
 %bcond_with    sqlite_dbapi    # default database backend is sqlite
+%bcond_without system_lua              # use system lua
 # force_cc             - force using __cc other than "%{_target_cpu}-pld-linux-gcc"
 # force_cxx            - force using __cxx other than "%{_target_cpu}-pld-linux-g++"
 # force_cpp            - force using __cpp other than "%{_target_cpu}-pld-linux-gcc -E"
 ERROR
 %endif
 
-#
 # versions of required libraries
-%define        reqdb_ver       4.6.18
-%define        reqpopt_ver     1.10.8
-%define        beecrypt_ver    2:4.1.2-4
-%define        sover   5.0
+%define                reqdb_ver       4.7.25
+%define                reqpopt_ver     1.10.8
+%define                beecrypt_ver    2:4.1.2-4
+%define                sover   5.0
+
 Summary:       RPM Package Manager
 Summary(de.UTF-8):     RPM Packet-Manager
 Summary(es.UTF-8):     Gestor de paquetes RPM
@@ -46,17 +58,17 @@ Summary(pt_BR.UTF-8):       Gerenciador de pacotes RPM
 Summary(ru.UTF-8):     Менеджер пакетов от RPM
 Summary(uk.UTF-8):     Менеджер пакетів від RPM
 Name:          rpm
-Version:       5.0.0
-Release:       0.1
-License:       GPL
+Version:       5.1.4
+Release:       0.5
+License:       LGPL
 Group:         Base
-Source0:       http://rpm5.org/files/rpm/rpm-5.0/%{name}-%{version}.tar.gz
-# Source0-md5: 4866053828c7258213f5711f3ca1dcd5
+Source0:       http://rpm5.org/files/rpm/rpm-5.1/%{name}-%{version}.tar.gz
+# Source0-md5: 9a04c22ce1dffc81a7e43d39b002aaa1
 Source1:       %{name}.groups
 Source2:       %{name}.platform
 Source3:       %{name}-install-tree
 Source4:       %{name}-find-spec-bcond
-Source5:       %{name}-find-lang
+Source5:       %{name}-hrmib-cache
 Source6:       %{name}-groups-po.awk
 Source7:       %{name}-compress-doc
 Source8:       %{name}-check-files
@@ -71,7 +83,9 @@ Source16:     %{name}-java-requires
 # http://svn.pld-linux.org/banner.sh/
 Source17:      banner.sh
 Source18:      %{name}-pld.macros
-
+Source19:      ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
+# Source19-md5:  08b29584dd349aac9caa7610131a0a88
+Source20:      %{name}-mimetypedeps
 Source100:     %{name}-macros-athlon
 Source101:     %{name}-macros-i386
 Source102:     %{name}-macros-i486
@@ -85,8 +99,9 @@ Source109:    %{name}-macros-x86_64
 Source110:     %{name}-macros-ia32e
 Source111:     %{name}-macros-amd64
 
-Patch0:                %{name}-pl.po.patch
+Patch0:                %{name}-branch.patch
 Patch1:                %{name}-man_pl.patch
+Patch2:                %{name}-popt-aliases.patch
 Patch3:                %{name}-rpmpopt.patch
 Patch4:                %{name}-perl-macros.patch
 Patch5:                %{name}-perl-req-perlfile.patch
@@ -95,25 +110,24 @@ Patch7:            %{name}-scripts-closefds.patch
 Patch8:                %{name}-php-macros.patch
 Patch9:                %{name}-gettext-in-header.patch
 Patch10:       %{name}-compress-doc.patch
+Patch11:       %{name}-lua.patch
 
 Patch14:       %{name}-etc_dir.patch
 Patch16:       %{name}-php-deps.patch
-
-Patch18:       %{name}-perl_req.patch
+Patch17:       %{name}-macros.patch
+Patch18:       %{name}-macros-th.patch
 
 Patch23:       %{name}-pkgconfigdeps.patch
 
 Patch26:       %{name}-notsc.patch
 Patch27:       %{name}-hack-norpmlibdep.patch
 
-Patch31:       %{name}-missing-prototypes.patch
 Patch32:       %{name}-pld-autodep.patch
 Patch34:       %{name}-epoch0.patch
 Patch35:       %{name}-perl_req-INC_dirs.patch
 Patch36:       %{name}-debuginfo.patch
 Patch37:       %{name}-doxygen_hack.patch
 
-Patch41:       %{name}-reduce-stack-usage.patch
 Patch42:       %{name}-old-fileconflicts-behaviour.patch
 
 Patch46:       %{name}-mono.patch
@@ -123,22 +137,19 @@ Patch52:  %{name}-morearchs.patch
 
 Patch55:       %{name}-truncate-cvslog.patch
 
-Patch58:       %{name}-repackage-wo-lzma.patch
 Patch59:       %{name}-libtool-deps.patch
-
+Patch60:       %{name}-mimetype.patch
 Patch61:       %{name}-sparc64.patch
 URL:           http://rpm5.org/
-BuildRequires: autoconf >= 2.57
+BuildRequires: autoconf >= 2.60
 BuildRequires: automake >= 1.4
 BuildRequires: beecrypt-devel >= %{beecrypt_ver}
 BuildRequires: bzip2-devel >= 1.0.2-17
 %{?with_db:BuildRequires:      db-devel >= %{reqdb_ver}}
 BuildRequires: elfutils-devel >= 0.108
-%ifnarch sparc64
-# -fPIE/-pie
-BuildRequires: gcc >= 5:3.4
-%endif
+BuildRequires: gettext-autopoint >= 0.11.4-2
 BuildRequires: gettext-devel >= 0.11.4-2
+BuildRequires: lzma-devel >= 4.999.3
 BuildRequires: libmagic-devel
 %{?with_selinux:BuildRequires: libselinux-devel >= 1.18}
 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
@@ -150,12 +161,19 @@ BuildRequires:    neon-devel >= 0.25.5
 %endif
 BuildRequires: patch >= 2.2
 BuildRequires: popt-devel >= %{reqpopt_ver}
-%{?with_python:BuildRequires:  python-devel >= 1:2.5}
-BuildRequires: python-modules >= 1:2.5
+%{?with_system_lua:BuildRequires:      lua51-devel >= 5.1.2}
+%{?with_python:BuildRequires:  python-devel >= 1:2.3}
+BuildRequires: python-modules >= 1:2.3
 BuildRequires: rpm-perlprov
 %{?with_python:BuildRequires:  rpm-pythonprov}
 %{?with_sqlite:BuildRequires:  sqlite3-devel}
 BuildRequires: zlib-devel
+%if %{with apidocs}
+BuildRequires: doxygen
+BuildRequires: ghostscript
+BuildRequires: graphviz
+BuildRequires: tetex-pdftex
+%endif
 %if %{with static}
 # Require static library only for static build
 BuildRequires: beecrypt-static >= %{beecrypt_ver}
@@ -172,10 +190,14 @@ Requires: %{name}-base = %{version}-%{release}
 Requires:      %{name}-lib = %{version}-%{release}
 Requires:      beecrypt >= %{beecrypt_ver}
 Requires:      popt >= %{reqpopt_ver}
+Provides:      rpm-db-ver = %{reqdb_ver}
+Obsoletes:     rpm-getdeps
 %{!?with_static:Obsoletes:     rpm-utils-static}
 Conflicts:     glibc < 2.2.92
 # db4.6 poldek needed
 Conflicts:     poldek < 0.21-0.20070703.00.3
+# segfaults with lzma 0.42.2
+Conflicts:     lzma-libs < 4.999.3
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _binary_payload         w9.gzdio
@@ -183,6 +205,7 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # don't require very fresh rpm.macros to build
 %define                __gettextize gettextize --copy --force --intl ; cp -f po/Makevars{.template,}
+%define                find_lang sh ./scripts/find-lang.sh $RPM_BUILD_ROOT
 %define                ix86    i386 i486 i586 i686 athlon pentium3 pentium4
 %define                ppc     ppc ppc7400 ppc7450
 %define                x8664   amd64 ia32e x86_64
@@ -193,6 +216,7 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                __newcpp %{?force_cpp}%{!?force_cpp:%{_target_cpu}-pld-linux-gcc -E}
 
 %define                _rpmlibdir /usr/lib/rpm
+%define                _noautocompressdoc      RPM-GPG-KEY
 
 %define                specflags       -fno-strict-aliasing
 
@@ -250,6 +274,7 @@ Summary:    RPM base package - scripts used by rpm packages themselves
 Summary(pl.UTF-8):     Podstawowy pakiet RPM - skrypty używane przez same pakiety rpm
 Group:         Base
 Requires:      filesystem
+Obsoletes:     rpm-scripts
 Obsoletes:     vserver-rpm
 
 %description base
@@ -271,14 +296,12 @@ Summary(pl.UTF-8):        Biblioteki RPM-a
 Group:         Libraries
 Requires:      beecrypt >= %{beecrypt_ver}
 %{?with_db:Requires:   db >= %{reqdb_ver}}
-%{?with_selinux:Requires:      libselinux >= 1.18}
 Requires:      libmagic >= 1.15-2
+%{?with_selinux:Requires:      libselinux >= 1.18}
 Requires:      popt >= %{reqpopt_ver}
 Obsoletes:     rpm-libs
-Obsoletes:     rpm-apidocs
 # avoid SEGV caused by mixed db versions
 Conflicts:     poldek < 0.18.1-16
-%{?with_suggest_tags:Suggests: lzma}
 
 %description lib
 RPMs library.
@@ -396,6 +419,11 @@ Summary(pl.UTF-8): Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
 Group:         Applications/File
 Requires:      %{name} = %{version}-%{release}
 Requires:      popt >= %{reqpopt_ver}
+%if %{with suggest_tags}
+Suggests:      bzip2
+Suggests:      gzip
+%endif
+Conflicts:     filesystem-debuginfo < 3.0-16
 
 %description utils
 Additional utilities for managing RPM packages and database.
@@ -451,12 +479,10 @@ Summary(ru.UTF-8):        Скрипты и утилиты, необходимые дл
 Summary(uk.UTF-8):     Скрипти та утиліти, необхідні для побудови пакетів
 Group:         Applications/File
 Requires(pre): findutils
-Requires:      %{name}-build-macros >= 1.314
+Requires:      %{name}-build-macros >= 1.433-2
 Requires:      %{name}-utils = %{version}-%{release}
 Requires:      /bin/id
 Requires:      awk
-# we need fixed binutils for -feliminate-dwarf2-dups
-Requires:      binutils >= 3:2.17.50.0.3-2
 Requires:      bzip2
 Requires:      chrpath >= 0.10-4
 Requires:      cpio
@@ -465,18 +491,20 @@ Requires: elfutils
 Requires:      file >= 4.17
 Requires:      fileutils
 Requires:      findutils
-Requires:      gcc >= 5:3.4
+%ifarch athlon
+Requires:      gcc >= 3.0.3
+%else
+Requires:      gcc
+%endif
 Requires:      glibc-devel
 Requires:      grep
 Requires:      gzip
-Requires:      lzma
 Requires:      make
 Requires:      patch
 Requires:      sed
 Requires:      sh-utils
 Requires:      tar
 Requires:      textutils
-Provides:      rpmbuild(find_lang) = 1.23
 Provides:      rpmbuild(monoautodeps)
 Provides:      rpmbuild(noauto) = 3
 %ifarch %{x8664}
@@ -606,12 +634,24 @@ RPM (RPM Package Manager).
 Esse pacote deve ser instalado se você quiser desenvolver programas em
 Python para manipular pacotes e bancos de dados RPM.
 
-%prep
-%setup -q
+%package apidocs
+Summary:       RPM API documentation and guides
+Summary(pl.UTF-8):     Documentacja API RPM-a i przewodniki
+Group:         Documentation
+
+%description apidocs
+Documentation for RPM API and guides in HTML format generated from rpm
+sources by doxygen.
+
+%description apidocs -l pl.UTF-8
+Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
+źrodeł RPM-a przez doxygen.
 
-# APPLIED ALREADY?
-#%patch0 -p1
+%prep
+%setup -q -n %{name}-%{version}%{?subver}
+%patch0 -p1
 %patch1 -p1
+%patch2 -p1
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
@@ -620,10 +660,10 @@ Python para manipular pacotes e bancos de dados RPM.
 %patch8 -p1
 %patch9 -p1
 %patch10 -p1
-# CHECK ME
-#%patch14 -p1
+%{?with_system_lua:%patch11 -p1}
+# CHECK ME - macrofiles: ~/etc could be used
+#%%patch14 -p1
 %patch16 -p1
-%patch18 -p1
 echo '%%define __perl_provides %%{__perl} /usr/lib/rpm/perl.prov' > macros.perl
 echo '%%define __perl_requires %%{__perl} /usr/lib/rpm/perl.req' >> macros.perl
 echo '# obsoleted file' > macros.python
@@ -631,7 +671,6 @@ echo '%%define      __php_provides  /usr/lib/rpm/php.prov' > macros.php
 echo '%%define __php_requires  /usr/lib/rpm/php.req' >> macros.php
 echo '%%define __mono_provides /usr/lib/rpm/mono-find-provides' > macros.mono
 echo '%%define __mono_requires /usr/lib/rpm/mono-find-requires' >> macros.mono
-install %{SOURCE5} scripts/find-lang.sh
 install %{SOURCE9} scripts/php.prov.in
 install %{SOURCE10} scripts/php.req.in
 install %{SOURCE12} scripts/perl.prov
@@ -642,24 +681,21 @@ install %{SOURCE12} scripts/perl.prov
 %patch26 -p1
 %endif
 %patch27 -p1
-# CHECK ME
-#%patch31 -p1
 %patch32 -p1
 %patch34 -p1
 %patch35 -p0
 %patch36 -p1
 %patch37 -p1
-# CHECK ME
-#%patch41 -p1
 %patch42 -p1
-# CHECK ME, PROBABLY WILL NEED TO HANLE IN OTHER WAY since rpmfcSCRIPT already handles mono
-#%patch46 -p1
+%patch46 -p1
 %patch47 -p1
 # OLD COMMENTED OUT
-#%patch52 -p1
+#%%patch52 -p1 -- morearchs (rpmrc patch) adds ppc7400, ppc7400
 %patch55 -p1
-%patch58 -p1
 %patch59 -p1
+%patch17 -p1
+%patch18 -p1
+%patch60 -p1
 %ifarch sparc64
 %patch61 -p1
 %endif
@@ -680,7 +716,7 @@ awk -f %{SOURCE6} %{SOURCE1}
 
 %build
 %{__libtoolize}
-%{__autopoint}
+#%{__autopoint}
 %{__aclocal}
 %{__autoheader}
 %{__autoconf}
@@ -690,8 +726,8 @@ awk -f %{SOURCE6} %{SOURCE1}
 # rpm checks for CPU type at runtime, but it looks better
 #sed -i -e 's|@host@|%{_target_cpu}-%{_target_vendor}-linux-gnu|' -e 's|@host_cpu@|%{_target_cpu}|' macros.in
 
+%{?with_system_lua:CPPFLAGS="-I/usr/include/lua51 %{rpmcppflags}"}
 # pass CC and CXX too in case of building with some older configure macro
-# disable perl-RPM2 build, we have it in separate spec
 %configure \
        CC="%{__newcc}" \
        CXX="%{__newcxx}" \
@@ -700,34 +736,40 @@ awk -f %{SOURCE6} %{SOURCE1}
        %{?with_autoreqdep:--enable-adding-packages-names-in-autogenerated-dependancies} \
        --enable-shared \
        --enable-static \
-       %{?with_python:--with-python=2.5 --with-python-lib-dir=%{py_libdir}} \
+       %{!?with_apidocs:--without-apidocs} \
+       %{?with_python:--with-python=%{py_ver} --with-python-lib-dir=%{py_sitedir}} \
        %{!?with_python:--without-python} \
        --with%{!?with_selinux:out}-selinux \
        --with-libelf \
        --with-zlib=external \
        --with-bzip2=external \
        --with-beecrypt=external \
+       --with-lzma=external \
        --with-neon=%{?with_neon:external}%{!?with_neon:no} \
        --with-file=external \
        --with-popt=external \
        --with-db=%{?with_db:external}%{!?with_db:no} \
        --with-sqlite=%{?with_sqlite:external}%{!?with_sqlite:no} \
-       --with-dbapi=%{!?sqlite_dbapi:db}%{?sqlite_dbapi:sqlite} \
-       --with-lua=internal \
+       --with-dbapi=%{!?with_sqlite_dbapi:db}%{?with_sqlite_dbapi:sqlite} \
+       --with-lua=%{!?with_system_lua:internal}%{?with_system_lua:external} \
        --with-pcre=no \
        --with-keyutils=none \
        --without-path-versioned \
-       --with-path-macros='%{_rpmlibdir}/macros:%{_rpmlibdir}/macros.pld:%{_rpmlibdir}/macros.build:%{_rpmlibdir}/%%{_target}/macros:%{_sysconfdir}/macros.*:%{_sysconfdir}/macros:%{_sysconfdir}/%%{_target}/macros:~/etc/rpmmacros:~/etc/.rpmmacros:~/.rpmmacros' \
+       --with-path-macros='%{_rpmlibdir}/macros:%{_rpmlibdir}/macros.pld:%{_rpmlibdir}/macros.build:%{_rpmlibdir}/%%{_target}/macros:%{_sysconfdir}/rpm/macros.*:%{_sysconfdir}/rpm/macros:%{_sysconfdir}/rpm/%%{_target}/macros:~/etc/rpmmacros:~/etc/.rpmmacros:~/.rpmmacros' \
        --with-bugreport="http://bugs.pld-linux.org/"
 
-%{__make} \
+%{__make} -j1 \
        CC="%{__cc}" \
        CXX="%{__cxx}" \
        CPP="%{__cpp}"
 
+%{?with_apidocs:%{__make} apidocs}
+
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm,/var/lib/banner}
+install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm,/var/lib/banner,/var/cache/hrmib,/etc/pki/rpm-gpg}
+
+install %{SOURCE19} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
 
 %{__make} install \
        pkgconfigdir=%{_pkgconfigdir} \
@@ -760,56 +802,87 @@ install -d $RPM_BUILD_ROOT%{_rpmlibdir}/ppc-linux
 install %{SOURCE108} $RPM_BUILD_ROOT%{_rpmlibdir}/ppc-linux/macros
 %endif
 
+cat <<'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
 # first platform file entry can't contain regexps
-echo "%{_target_cpu}-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+%{_target_cpu}-%{_target_vendor}-linux
 
 # x86_64 things
 %ifarch x86_64
-echo "amd64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
-echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+x86_64-[^-]*-[Ll]inux(-gnu)?
+amd64-[^-]*-[Ll]inux(-gnu)?
 %endif
-
 %ifarch amd64
-echo "amd64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
-echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+amd64-[^-]*-[Ll]inux(-gnu)?
+x86_64-[^-]*-[Ll]inux(-gnu)?
 %endif
-
 %ifarch ia32e
-echo "ia32e-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
-echo "x86_64-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+ia32e-[^-]*-[Ll]inux(-gnu)?
+x86_64-[^-]*-[Ll]inux(-gnu)?
 %endif
 
 # x86 things
 %ifarch athlon %{x8664}
-echo "athlon-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+athlon-[^-]*-[Ll]inux(-gnu)?
 %endif
 %ifarch pentium4 athlon %{x8664}
-echo "pentium4-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+pentium4-[^-]*-[Ll]inux(-gnu)?
 %endif
 %ifarch pentium3 pentium4 athlon %{x8664}
-echo "pentium3-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+pentium3-[^-]*-[Ll]inux(-gnu)?
 %endif
 %ifarch i686 pentium3 pentium4 athlon %{x8664}
-echo "i686-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+i686-[^-]*-[Ll]inux(-gnu)?
 %endif
 %ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
-echo "i586-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+i586-[^-]*-[Ll]inux(-gnu)?
 %endif
 %ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
-echo "i486-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+i486-[^-]*-[Ll]inux(-gnu)?
 %endif
 %ifarch %{ix86} %{x8664}
-echo "i386-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+i386-[^-]*-[Ll]inux(-gnu)?
 %endif
 
-# ppc
-%ifarch ppc
-echo "ppc-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
-echo "powerpc-[^-]*-linux(-gnu)?" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+%ifarch alpha
+alpha-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch ia64
+ia64-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch ppc64
+powerpc64-[^-]*-[Ll]inux(-gnu)?
+ppc64-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch %{ppc} ppc64
+powerpc-[^-]*-[Ll]inux(-gnu)?
+ppc-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch s390x
+s390x-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch s390 s390x
+s390-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch sparc64
+sparc64-[^-]*-[Ll]inux(-gnu)?
+sparcv8-[^-]*-[Ll]inux(-gnu)?
+sparcv9-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch sparcv9
+sparcv8-[^-]*-[Ll]inux(-gnu)?
+sparcv9-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch sparc sparcv9 sparc64
+sparc-[^-]*-[Ll]inux(-gnu)?
 %endif
 
 # noarch
-echo "noarch-[^-]*-.*" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
+noarch-[^-]*-.*
+EOF
 
 %ifarch %{ppc}
 #sed -e '/_target_platform/s/[%]{_target_cpu}/ppc/' \
@@ -819,6 +892,7 @@ echo "noarch-[^-]*-.*" >> $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
 rm $RPM_BUILD_ROOT%{_rpmlibdir}/vpkg-provides*
 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl
 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl
+rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-lang.sh
 
 # not installed since 4.4.8 (-tools-perl subpackage)
 install scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
@@ -839,11 +913,20 @@ install %{SOURCE13} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
 install %{SOURCE16} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
 install scripts/find-php*      $RPM_BUILD_ROOT%{_rpmlibdir}
 install scripts/php.{prov,req} $RPM_BUILD_ROOT%{_rpmlibdir}
+install %{SOURCE20} $RPM_BUILD_ROOT%{_rpmlibdir}/mimetypedeps.sh
+install %{SOURCE5} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
 install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/rpm
 
 install %{SOURCE17} $RPM_BUILD_ROOT%{_bindir}/banner.sh
 
-install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
+
+touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Conflictname
+touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Dirnames
+install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Filelinktos
+touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Obsoletename
+touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Providename
+touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Requirename
 
 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros <<EOF
 # customized rpm macros - global for host
@@ -931,6 +1014,8 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep <<EOF
 ^libxkbui.so
 # -- fam / gamin
 ^libfam.so.0
+# -- mdns-bonjour: mDNSResponder-libs / avahi-compat-libdns_sd
+^libdns_sd.so.1
 EOF
 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc <<EOF
 # global list of file masks not to be compressed in DOCDIR
@@ -940,20 +1025,27 @@ EOF
 install -d $RPM_BUILD_ROOT/var/{spool/repackage,lock/rpm}
 touch $RPM_BUILD_ROOT/var/lock/rpm/transaction
 
-# mov rpm to /bin
-mv -f $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
-# move libs to /lib
+# move rpm to /bin
+mv $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
+# move essential libs to /lib (libs that /bin/rpm links to)
 for a in librpm-%{sover}.so librpmdb-%{sover}.so librpmio-%{sover}.so librpmbuild-%{sover}.so; do
        mv -f $RPM_BUILD_ROOT%{_libdir}/$a $RPM_BUILD_ROOT/%{_lib}
        ln -s /%{_lib}/$a $RPM_BUILD_ROOT%{_libdir}/$a
 done
 
+# Append rpm.platform contents to /usr/lib/rpm/${arch}-linux/macros
+for m in $RPM_BUILD_ROOT%{_rpmlibdir}/*/macros ; do
+       cat %{SOURCE2} | %{__sed} 's#@LIB@#%{_lib}#' >> $m
+done
 # remove arch dependant macros which have no use on noarch
-#%{__sed} -i -e '
-#/{__spec_install_post_strip}/d
-#/{__spec_install_post_chrpath}/d
-#/{__spec_install_post_compress_modules}/d
-#' $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux/macros
+%{__sed} -i -e '
+/{__spec_install_post_strip}/d
+/{__spec_install_post_chrpath}/d
+/{__spec_install_post_compress_modules}/d
+' $RPM_BUILD_ROOT%{_rpmlibdir}/noarch-linux/macros
+
+# Bourne shell script vs ELF executable linked with rpm,rpmdb,rpmio
+mv $RPM_BUILD_ROOT{%{_rpmlibdir},%{_bindir}}/rpm2cpio
 
 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
@@ -962,8 +1054,10 @@ rm $RPM_BUILD_ROOT%{py_sitedir}/rpm/*.{la,a,py}
 
 # wrong location, not used anyway
 rm $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log,xinetd}
-# manuals for utils dropped in 4.4.8 (?)
-#rm $RPM_BUILD_ROOT%{_mandir}/{,*/}/man8/{rpmcache,rpmgraph}.8
+# utils dropped in 4.4.8 -- their manuals
+rm $RPM_BUILD_ROOT%{_mandir}/{,*/}/man8/rpmgraph.8
+# unpackaged in 4.4.9, reasons unknown
+rm $RPM_BUILD_ROOT%{_rpmlibdir}/symclash.{sh,py}
 
 %find_lang %{name}
 
@@ -974,16 +1068,33 @@ rm -f manual/Makefile*
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%triggerpostun lib -- %{name}-lib < %{version}
+rm -f /var/lib/rpm/__db*
+
+%pretrans
+# this needs to be a dir
+if [ -f %{_sysconfdir}/rpm/sysinfo ]; then
+       umask 022
+       mv -f %{_sysconfdir}/rpm/sysinfo{,.rpmsave}
+       mkdir %{_sysconfdir}/rpm/sysinfo
+fi
+
+%triggerpostun -- %{name} < 4.4.9-44
+%{_rpmlibdir}/hrmib-cache
+
 %post  lib -p /sbin/ldconfig
 %postun lib -p /sbin/ldconfig
 
-%pre build
+%pretrans build
 find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
 %doc CHANGES CREDITS README pubkeys/JBJ-GPG-KEY manual/*
 
+%dir %{_sysconfdir}/pki/rpm-gpg
+%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
+
 %attr(755,root,root) /bin/rpm
 #%attr(755,root,root) %{_bindir}/rpmdb
 #%attr(755,root,root) %{_bindir}/rpmquery
@@ -992,8 +1103,9 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 
 %dir %{_sysconfdir}/rpm
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros
+%dir %{_sysconfdir}/rpm/sysinfo
 # these are ok to be replaced
-%config %verify(not md5 mtime size) %{_sysconfdir}/rpm/sysinfo
+%config %verify(not md5 mtime size) %{_sysconfdir}/rpm/sysinfo/*
 %config %verify(not md5 mtime size) %{_sysconfdir}/rpm/platform
 
 
@@ -1010,6 +1122,10 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %dir /var/lock/rpm
 /var/lock/rpm/transaction
 
+# exported package NVRA (stamped with install tid)
+# net-snmp hrSWInstalledName queries, bash-completions
+%dir /var/cache/hrmib
+
 #%attr(755,root,root) %{_rpmlibdir}/rpmd
 #%{!?with_static:%attr(755,root,root) %{_rpmlibdir}/rpm[eiu]}
 #%attr(755,root,root) %{_rpmlibdir}/rpmk
@@ -1019,6 +1135,8 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_rpmlibdir}/macros
 %{_rpmlibdir}/macros.pld
 
+%attr(755,root,root) %{_rpmlibdir}/hrmib-cache
+
 %files base
 %defattr(644,root,root,755)
 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rpm
@@ -1029,25 +1147,28 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 
 %files lib
 %defattr(644,root,root,755)
-%attr(755,root,root) /%{_lib}/librpm*-*.so
-%attr(755,root,root) %{_libdir}/librpm*-*.so
+%attr(755,root,root) /%{_lib}/librpm-%{sover}.so
+%attr(755,root,root) /%{_lib}/librpmdb-%{sover}.so
+%attr(755,root,root) /%{_lib}/librpmio-%{sover}.so
+%attr(755,root,root) /%{_lib}/librpmbuild-%{sover}.so
 
 %files devel
 %defattr(644,root,root,755)
-%{_includedir}/rpm
-%{_libdir}/librpm*.la
-%{_pkgconfigdir}/*.pc
 %attr(755,root,root) %{_libdir}/librpm.so
 %attr(755,root,root) %{_libdir}/librpm-%{sover}.so
+%attr(755,root,root) %{_libdir}/librpmbuild.so
+%attr(755,root,root) %{_libdir}/librpmbuild-%{sover}.so
 %attr(755,root,root) %{_libdir}/librpmconstant.so
 %attr(755,root,root) %{_libdir}/librpmconstant-%{sover}.so
+%attr(755,root,root) %{_libdir}/librpmdb.so
+%attr(755,root,root) %{_libdir}/librpmdb-%{sover}.so
 %attr(755,root,root) %{_libdir}/librpmio.so
 %attr(755,root,root) %{_libdir}/librpmio-%{sover}.so
 %attr(755,root,root) %{_libdir}/librpmmisc.so
 %attr(755,root,root) %{_libdir}/librpmmisc-%{sover}.so
-%attr(755,root,root) %{_libdir}/librpmdb.so
-%attr(755,root,root) %{_libdir}/librpmdb-%{sover}.so
-%attr(755,root,root) %{_libdir}/librpmbuild.so
+%{_libdir}/librpm*.la
+%{_includedir}/rpm
+%{_pkgconfigdir}/*.pc
 
 %files static
 %defattr(644,root,root,755)
@@ -1055,28 +1176,30 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 
 %files utils
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/rpmconstant
 %attr(755,root,root) %{_bindir}/rpm2cpio
-%attr(755,root,root) %{_rpmlibdir}/rpmcache
-%attr(755,root,root) %{_rpmlibdir}/rpmcmp
-%attr(755,root,root) %{_rpmlibdir}/rpmdeps
+%attr(755,root,root) %{_bindir}/rpmcache
+%attr(755,root,root) %{_bindir}/rpmconstant
+%attr(755,root,root) %{_bindir}/rpmdigest
+%attr(755,root,root) %{_bindir}/rpmgrep
+%attr(755,root,root) %{_bindir}/rpmrepo
+%attr(755,root,root) %{_bindir}/rpmmtree
 %attr(755,root,root) %{_rpmlibdir}/debugedit
-%attr(755,root,root) %{_rpmlibdir}/rpmdigest
 %attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh
-%attr(755,root,root) %{_rpmlibdir}/tgpg
+%attr(755,root,root) %{_rpmlibdir}/rpmcmp
 %attr(755,root,root) %{_rpmlibdir}/rpmdb_loadcvt
+%attr(755,root,root) %{_rpmlibdir}/rpmdeps
+%attr(755,root,root) %{_rpmlibdir}/tgpg
+%{_mandir}/man1/rpmgrep.1*
 %{_mandir}/man8/rpm2cpio.8*
+%{_mandir}/man8/rpmcache.8*
 %{_mandir}/man8/rpmdeps.8*
-#%{_mandir}/man8/rpmcache.8*
-#%{_mandir}/man8/rpmgraph.8*
+%{_mandir}/man8/rpmmtree.8*
 %lang(ja) %{_mandir}/ja/man8/rpm2cpio.8*
-#%lang(ja) %{_mandir}/ja/man8/rpmcache.8*
-#%lang(ja) %{_mandir}/ja/man8/rpmgraph.8*
+%lang(ja) %{_mandir}/ja/man8/rpmcache.8*
 %lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
 %lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
+%lang(pl) %{_mandir}/pl/man8/rpmcache.8*
 %lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
-#%lang(pl) %{_mandir}/pl/man8/rpmcache.8*
-#%lang(pl) %{_mandir}/pl/man8/rpmgraph.8*
 %lang(ru) %{_mandir}/ru/man8/rpm2cpio.8*
 
 %files utils-perl
@@ -1100,13 +1223,13 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 #%attr(755,root,root) %{_rpmlibdir}/config.*
 %attr(755,root,root) %{_rpmlibdir}/cross-build
 %attr(755,root,root) %{_rpmlibdir}/find-spec-bcond
-%attr(755,root,root) %{_rpmlibdir}/find-lang.sh
 %attr(755,root,root) %{_rpmlibdir}/getpo.sh
 %attr(755,root,root) %{_rpmlibdir}/install-build-tree
 %attr(755,root,root) %{_rpmlibdir}/mkinstalldirs
 %attr(755,root,root) %{_rpmlibdir}/u_pkg.sh
 %attr(755,root,root) %{_rpmlibdir}/executabledeps.sh
 %attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh
+%attr(755,root,root) %{_rpmlibdir}/mimetypedeps.sh
 # needs hacked pkg-config to return anything
 %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh
 #%attr(755,root,root) %{_rpmlibdir}/rpmb
@@ -1192,3 +1315,9 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %attr(755,root,root) %{py_sitedir}/rpm/*.so
 %{py_sitedir}/rpm/*.py[co]
 %endif
+
+%if %{with apidocs}
+%files apidocs
+%defattr(644,root,root,755)
+%doc apidocs
+%endif
This page took 0.094455 seconds and 4 git commands to generate.