X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=rpm.spec;h=7d69cbb06355d4e281e8d64ea33565c28a59fe2f;hb=a245b6ceee406a1c4c4c40a4e541e9142cf9a063;hp=a827529d8c286997b5876f11be258890c4825425;hpb=80e9f34db61d7881845ecc57fb69515617ad95f7;p=packages%2Frpm.git diff --git a/rpm.spec b/rpm.spec index a827529..7d69cbb 100644 --- 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 @@ -16,9 +17,10 @@ # 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: 0.3 +Version: 4.4.6 +Release: 1.15 License: GPL Group: Base Source0: ftp://jbj.org/pub/rpm-4.4.x/%{name}-%{version}.tar.gz -# Source0-md5: d6cba56ec786915c3bf340c310a0bc44 +# Source0-md5: baa6f371446c65b4080d1cd1f194a7ae 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 + Patch34: %{name}-epoch0.patch Patch35: %{name}-perl_req-INC_dirs.patch Patch36: %{name}-debuginfo.patch @@ -107,49 +107,58 @@ Patch49: %{name}-p4.patch Patch50: %{name}-macros.patch Patch51: %{name}-cleanlibdirs.patch Patch52: %{name}-morearchs.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 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 @@ -227,6 +236,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 @@ -254,6 +264,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. @@ -275,8 +286,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 @@ -426,23 +437,25 @@ Summary(ru): Summary(uk): óËÒÉÐÔÉ ÔÁ ÕÔÉ̦ÔÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÏÂÕÄÏ×É ÐÁËÅÔ¦× Group: Applications/File Requires(pre): findutils -Requires: %{name}-build-macros +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 @@ -552,24 +565,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 @@ -605,15 +610,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 @@ -641,7 +646,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 @@ -662,7 +668,7 @@ install %{SOURCE12} scripts/perl.prov %patch30 -p1 %patch31 -p1 %patch32 -p1 -%patch33 -p1 + %patch34 -p1 %patch35 -p0 %patch36 -p1 @@ -681,7 +687,13 @@ install %{SOURCE12} scripts/perl.prov %patch49 -p1 %patch50 -p1 %patch51 -p1 -%patch52 -p1 +#%patch52 -p1 +%patch53 -p1 +%patch54 -p1 +%patch55 -p1 +%patch56 -p1 +%patch57 -p1 +%patch58 -p1 cd scripts mv -f perl.req perl.req.in @@ -724,14 +736,8 @@ cd .. # config.guess doesn't handle athlon, so we have to change it by hand. # rpm checks for CPU type at runtime, but it looks better -%ifarch %{ppc} -TARG=$( echo %{_target_cpu} | sed 's/ppc//' ) -sed -e "s|@host@|ppc-%{_target_vendor}-linux-gnu|" \ - -e "s|@host_cpu@|%{_target_cpu}|" macros.in > macros.tmp -%else sed -e 's|@host@|%{_target_cpu}-%{_target_vendor}-linux-gnu|' \ -e 's|@host_cpu@|%{_target_cpu}|' macros.in > macros.tmp -%endif mv -f macros.tmp macros.in CPPFLAGS="-Dglob=rpm_glob -Dglobfree=rpm_globfree"; export CPPFLAGS @@ -746,8 +752,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 @@ -775,6 +781,11 @@ install -d $RPM_BUILD_ROOT{/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm,/var/lib/b pylibdir=%{py_libdir} \ pkgbindir="%{_bindir}" +%ifarch %{ppc} +#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* rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl @@ -817,6 +828,9 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros < $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles < $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov < $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles < $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq <