]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
detect libtool files using file binary; fixes libqt-mt.la missdetection
[packages/rpm.git] / rpm.spec
index 98c53feea0bde891c36e0697598748e983c14737..a7c13bf0abb2b5009ef7e8a136c8e31be4fc2393 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -2,7 +2,8 @@
 # TODO:
 # - python(abi) cap is not provided automatically (because /usr/bin/python matches
 #   ELF first; it should be provided by python-libs not binary anyway)
-# 
+# - repackaging when lzma is not installed (todo: fix digest signature of header)
+#
 # Conditional build:
 %bcond_with    static          # build static rpm+rpmi
 %bcond_without apidocs         # don't generate documentation with doxygen
 # force_cpp            - force using __cpp other than "%{_target_cpu}-pld-linux-gcc -E"
 
 # versions of required libraries
-%define        reqdb_ver       4.4.16
-%define        reqpopt_ver     1.10.4
+%define        reqdb_ver       4.4.20
+%define        reqpopt_ver     1.10.6
 %define        beecrypt_ver    2:4.1.2-4
+%define        sover   4.4
 Summary:       RPM Package Manager
 Summary(de):   RPM Packet-Manager
 Summary(es):   Gestor de paquetes RPM
@@ -27,13 +29,12 @@ Summary(pt_BR):     Gerenciador de pacotes RPM
 Summary(ru):   íÅÎÅÄÖÅÒ ÐÁËÅÔÏ× ÏÔ RPM
 Summary(uk):   íÅÎÅÄÖÅÒ ÐÁËÅԦנצĠRPM
 Name:          rpm
-%define        sover   4.4
-Version:       4.4.4
-Release:       1
+Version:       4.4.7
+Release:       0.2
 License:       GPL
 Group:         Base
 Source0:       ftp://jbj.org/pub/rpm-4.4.x/%{name}-%{version}.tar.gz
-# Source0-md5: d6cba56ec786915c3bf340c310a0bc44
+# Source0-md5: d012c81b5169f7377ea4a36607e1445e
 Source1:       %{name}.groups
 Source2:       %{name}.platform
 Source3:       %{name}-install-tree
@@ -53,7 +54,6 @@ Source31:     adapter.awk
 Source32:      pldnotify.awk
 # http://svn.pld-linux.org/banner.sh/
 Source33:      banner.sh
-Source34:      php-pear-build-macros
 Patch0:                %{name}-pl.po.patch
 Patch1:                %{name}-rpmrc.patch
 Patch2:                %{name}-arch.patch
@@ -87,7 +87,7 @@ Patch29:      %{name}-libdir64.patch
 Patch30:       %{name}-libdir-links.patch
 Patch31:       %{name}-missing-prototypes.patch
 Patch32:       %{name}-pld-autodep.patch
-Patch33:       %{name}-rpmsq.patch
+Patch33:       %{name}-arch-x86_64.patch
 Patch34:       %{name}-epoch0.patch
 Patch35:       %{name}-perl_req-INC_dirs.patch
 Patch36:       %{name}-debuginfo.patch
@@ -101,56 +101,65 @@ Patch43:  %{name}-patch-quote.patch
 Patch44:       %{name}-no-neon.patch
 Patch45:       %{name}-no-sqlite.patch
 Patch46:       %{name}-mono.patch
-
+Patch47:       %{name}-rpmrc-resurrect.patch
 Patch48:       %{name}-requireseq.patch
 Patch49:       %{name}-p4.patch
 Patch50:       %{name}-macros.patch
 Patch51:       %{name}-cleanlibdirs.patch
 Patch52:       %{name}-morearchs.patch
-Patch53:       %{name}-symlinks.patch
+Patch53:       %{name}-lzma.patch
+Patch54:       %{name}-lzma2.patch
+Patch55:       %{name}-truncate-cvslog.patch
+Patch56:       %{name}-skip-backups.patch
+Patch57:       %{name}-as_needed-fix.patch
+Patch58:       %{name}-repackage-wo-lzma.patch
+Patch59:       %{name}-libtool-deps.patch
 URL:           http://wraptastic.org/
-BuildRequires: autoconf >= 2.52
+BuildRequires: autoconf >= 2.57
 BuildRequires: automake
 BuildRequires: beecrypt-devel >= %{beecrypt_ver}
 BuildRequires: bzip2-devel >= 1.0.2-17
 BuildRequires: db-devel >= %{reqdb_ver}
-%{?with_apidocs:BuildRequires: doxygen}
 BuildRequires: elfutils-devel >= 0.108
-BuildRequires: findutils
 BuildRequires: gettext-devel >= 0.11.4-2
 %{?with_system_libmagic:BuildRequires: libmagic-devel}
 %{?with_selinux:BuildRequires: libselinux-devel >= 1.18}
 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
 BuildRequires: libstdc++-devel
-BuildRequires: libtool
+BuildRequires: libtool >= 1:1.4.2-9
 %if %{with neon}
 BuildRequires: libxml2-devel
-BuildRequires: neon-devel >= 0.24.7-3
+BuildRequires: neon-devel >= 0.25.5
 %endif
 BuildRequires: patch >= 2.2
 BuildRequires: popt-devel >= %{reqpopt_ver}
-%{?with_python:BuildRequires:  python-devel >= 1:2.3}
-BuildRequires: python-modules >= 1:2.3
-BuildRequires: readline-devel
+%{?with_python:BuildRequires:  python-devel >= 1:2.5}
+BuildRequires: python-modules >= 1:2.5
 BuildRequires: rpm-perlprov
 %{?with_python:BuildRequires:  rpm-pythonprov}
 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}
 BuildRequires: bzip2-static >= 1.0.2-17
 BuildRequires: db-static >= %{reqdb_ver}
-BuildRequires: glibc-static >= 2.2.94
 BuildRequires: elfutils-static
+BuildRequires: glibc-static >= 2.2.94
 %{?with_system_libmagic:BuildRequires: libmagic-static}
 %{?with_selinux:BuildRequires: libselinux-static >= 1.18}
 BuildRequires: popt-static >= %{reqpopt_ver}
 BuildRequires: zlib-static
 %endif
-Requires:      beecrypt >= %{beecrypt_ver}
-Requires:      popt >= %{reqpopt_ver}
 Requires:      %{name}-base = %{version}-%{release}
 Requires:      %{name}-lib = %{version}-%{release}
+Requires:      beecrypt >= %{beecrypt_ver}
+Requires:      popt >= %{reqpopt_ver}
 %{!?with_static:Obsoletes:     rpm-utils-static}
 Conflicts:     glibc < 2.2.92
 # avoid SEGV caused by mixed db versions
@@ -228,6 +237,7 @@ RPM - 
 Summary:       RPM base package - scripts used by rpm packages themselves
 Summary(pl):   Podstawowy pakiet RPM - skrypty u¿ywane przez same pakiety rpm
 Group:         Base
+Requires:      filesystem
 Obsoletes:     vserver-rpm
 
 %description base
@@ -255,6 +265,7 @@ Requires:   popt >= %{reqpopt_ver}
 Obsoletes:     rpm-libs
 # avoid SEGV caused by mixed db versions
 Conflicts:     poldek < 0.18.1-16
+Suggests:      lzma
 
 %description lib
 RPMs library.
@@ -276,8 +287,8 @@ Requires:   beecrypt-devel >= %{beecrypt_ver}
 Requires:      bzip2-devel
 Requires:      db-devel >= %{reqdb_ver}
 Requires:      elfutils-devel
-%{?with_selinux:Requires:      libselinux-devel}
 %{?with_system_libmagic:Requires:      libmagic-devel}
+%{?with_selinux:Requires:      libselinux-devel}
 Requires:      popt-devel >= %{reqpopt_ver}
 Requires:      zlib-devel
 
@@ -427,23 +438,25 @@ Summary(ru):      
 Summary(uk):   óËÒÉÐÔÉ ÔÁ ÕÔÉ̦ÔÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÏÂÕÄÏ×É ÐÁËÅÔ¦×
 Group:         Applications/File
 Requires(pre): findutils
-Requires:      %{name}-build-macros >= 1.284
+Requires:      %{name}-build-macros >= 1.314
 Requires:      %{name}-utils = %{version}-%{release}
 Requires:      /bin/id
 Requires:      awk
-Requires:      binutils
+# 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
 Requires:      diffutils
 Requires:      elfutils
-Requires:      file >= 4.14-1
+Requires:      file >= 4.17
 Requires:      fileutils
 Requires:      findutils
 Requires:      gcc >= 5:3.4
 Requires:      glibc-devel
 Requires:      grep
 Requires:      gzip
+Requires:      lzma
 Requires:      make
 Requires:      patch
 Requires:      sed
@@ -553,24 +566,16 @@ Summary:  Additional utilities for managing rpm packages and database
 Summary(pl):   Dodatkowe narzêdzia do sprawdzania zale¿no¶ci skryptów php w rpm
 Group:         Applications/File
 Requires:      %{name} = %{version}-%{release}
-Requires:      php-pear-PEAR >= 1:1.4.0-0.b1.3
-Requires:      php-zlib
 Requires:      sed >= 4.0
 
 %description php-pearprov
 Additional utilities for checking php pear provides/requires in rpm
 packages.
 
-This package provides rpm macros and dependencies to help building
-PEAR packages.
-
 %description php-pearprov -l pl
 Dodatkowe narzêdzia do sprawdzenia zale¿no¶ci skryptów php pear w
 pakietach rpm.
 
-Ten pakiet dostarcza makra rpm-a i zale¿no¶ci pomagaj±ce przy
-budowaniu pakietów PEAR-a.
-
 %package -n python-rpm
 Summary:       Python interface to RPM library
 Summary(pl):   Pythonowy interfejs do biblioteki RPM-a
@@ -606,15 +611,15 @@ Python para manipular pacotes e bancos de dados RPM.
 %package apidocs
 Summary:       RPM API documentation and guides
 Summary(pl):   Documentacja API RPM-a i przewodniki
-Group:         Documentation   
+Group:         Documentation
 
 %description apidocs
-Documentation for RPM API and guides in HTML format generated
-from rpm sources by doxygen.
+Documentation for RPM API and guides in HTML format generated from rpm
+sources by doxygen.
 
 %description apidocs -l pl
-Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane
-ze ¼rode³ RPM-a przez doxygen.
+Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
+¼rode³ RPM-a przez doxygen.
 
 %prep
 %setup -q
@@ -642,7 +647,8 @@ sed -e 's/^/@pld@/' %{SOURCE2} >>platform.in
 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
-install %{SOURCE34} macros.php
+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
@@ -677,13 +683,19 @@ install %{SOURCE12} scripts/perl.prov
 %{!?with_neon:%patch44 -p1}
 %patch45 -p1
 %patch46 -p1
-
+%patch47 -p1
 %patch48 -p1
 %patch49 -p1
 %patch50 -p1
 %patch51 -p1
-%patch52 -p1
+#%patch52 -p1
 %patch53 -p1
+%patch54 -p1
+%patch55 -p1
+%patch56 -p1
+%patch57 -p1
+%patch58 -p1
+%patch59 -p1
 
 cd scripts
 mv -f perl.req perl.req.in
@@ -742,8 +754,8 @@ CPPFLAGS="-Dglob=rpm_glob -Dglobfree=rpm_globfree"; export CPPFLAGS
        %{?with_autoreqdep:--enable-adding-packages-names-in-autogenerated-dependancies} \
        --enable-shared \
        --enable-static \
-       %{?with_apidocs:--with-apidocs} \
-       %{?with_python:--with-python=auto} \
+       %{!?with_apidocs:--without-apidocs} \
+       %{?with_python:--with-python=2.5} \
        %{!?with_python:--without-python} \
        %{!?with_selinux:--without-selinux} \
        --without-db
@@ -772,8 +784,8 @@ install -d $RPM_BUILD_ROOT{/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm,/var/lib/b
        pkgbindir="%{_bindir}"
 
 %ifarch %{ppc}
-sed -e '/_target_platform/s/[%]{_target_cpu}/ppc/' \
-       -i $RPM_BUILD_ROOT%{_rpmlibdir}/ppc74[05]0-linux/macros
+#sed -e '/_target_platform/s/[%]{_target_cpu}/ppc/' \
+#      -i $RPM_BUILD_ROOT%{_rpmlibdir}/ppc74[05]0-linux/macros
 %endif
 
 rm $RPM_BUILD_ROOT%{_rpmlibdir}/vpkg-provides*
@@ -818,6 +830,9 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros <<EOF
 # SELinux file contexts policy instead of one stored in packages payload
 %%_install_file_context_path   %%{nil}
 %%_verify_file_context_path    %%{nil}
+
+# If non-zero, all erasures will be automagically repackaged.
+#%%_repackage_all_erasures    1
 EOF
 
 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles <<EOF
@@ -828,8 +843,8 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov <<EOF
 EOF
 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles <<EOF
 # global list of files (regexps) which don't generate Requires
-^/usr/src/examples/
-^/usr/share/doc/
+^%{_examplesdir}/
+^%{_docdir}/
 EOF
 cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq <<EOF
 # global list of script capabilities (regexps) not to be used in Requires
@@ -907,7 +922,7 @@ for a in librpm-%{sover}.so librpmdb-%{sover}.so librpmio-%{sover}.so ; do
 done
 
 # remove arch dependant macros which have no use on noarch
-sed -i -e '
+%{__sed} -i -e '
 /{__spec_install_post_strip}/d
 /{__spec_install_post_chrpath}/d
 /{__spec_install_post_compress_modules}/d
@@ -969,7 +984,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 #%attr(755,root,root) %{_rpmlibdir}/rpmk
 #%attr(755,root,root) %{_rpmlibdir}/rpm[qv]
 
-%doc %attr(755,root,root) %{_rpmlibdir}/convertrpmrc.sh
+#%doc %attr(755,root,root) %{_rpmlibdir}/convertrpmrc.sh
 
 %{_rpmlibdir}/rpmrc
 %{_rpmlibdir}/rpmpopt*
@@ -1010,6 +1025,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %attr(755,root,root) %{_bindir}/rpm2cpio
 %attr(755,root,root) %{_bindir}/rpmcache
 %attr(755,root,root) %{_bindir}/rpmdeps
+%attr(755,root,root) %{_bindir}/rpmdigest
 %attr(755,root,root) %{_bindir}/rpmgraph
 %{!?with_system_libmagic:%attr(755,root,root) %{_bindir}/rpmfile}
 %attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh
@@ -1046,7 +1062,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/noauto*
 %attr(755,root,root) %{_rpmlibdir}/brp-*
 %attr(755,root,root) %{_rpmlibdir}/check-files
-%attr(755,root,root) %{_rpmlibdir}/check-prereqs
+%attr(755,root,root) %{_rpmlibdir}/check-prereqs
 %attr(755,root,root) %{_rpmlibdir}/compress-doc
 %attr(755,root,root) %{_rpmlibdir}/config.*
 %attr(755,root,root) %{_rpmlibdir}/cross-build
@@ -1125,7 +1141,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 #%attr(755,root,root) %{_rpmlibdir}/find-*.perl
 #%attr(755,root,root) %{_rpmlibdir}/find-prov.pl
 #%attr(755,root,root) %{_rpmlibdir}/find-req.pl
-%attr(755,root,root) %{_rpmlibdir}/get_magic.pl
+#%attr(755,root,root) %{_rpmlibdir}/get_magic.pl
 
 %files pythonprov
 %defattr(644,root,root,755)
This page took 0.302362 seconds and 4 git commands to generate.