]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
- internal file update (for compatibility with *.mgc generated by file-4.14)
[packages/rpm.git] / rpm.spec
index ce789235fdd6e00de40dc9b39a5afa3a5e2fc212..e2d937c4e5b9cb0d166d90b843812ad416da11a2 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -1,28 +1,25 @@
 #
 # TODO:
-# - update patches
-# - build popt from rpm.spec? (no separate popt-1.10.x tarballs available)
+# - python(abi) cap is not provided automatically (because /usr/bin/python matches
+#   ELF first; it should be provided by python-libs not binary anyway)
 # - consider using system libmagic not internal libfmagic
 #   (but internal has different method of passing output)
-# - after ac drop amd64 patch and make x86_64 generic arch + subarchs amd64 and ia32e
 # 
 # Conditional build:
-%bcond_with    distver # build with distversion field
-%bcond_with    static  # build static rpmi (not supported at the moment)
-%bcond_without apidocs # don't generate documentation with doxygen
-%bcond_without pkgnameinautoreq        # don't put package name in autogenerated dependancy
-%bcond_without python  # don't build python bindings
-%bcond_without selinux # dont enable selinux support
+%bcond_with    static          # build static rpmi (not supported at the moment)
+%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
 # 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"
 
-%define        snap    20041121
 # versions of required libraries
-%define        reqdb_ver       4.2.50-1
-%define        reqpopt_ver     1.9
+%define        reqdb_ver       4.3.27-1
+%define        reqpopt_ver     1.10.1
 %define        beecrypt_ver    2:4.1.0
-%define        rpm_macros_rev  1.188
+%define        rpm_macros_rev  1.231
 Summary:       RPM Package Manager
 Summary(de):   RPM Packet-Manager
 Summary(es):   Gestor de paquetes RPM
@@ -33,11 +30,9 @@ Summary(uk): 
 Name:          rpm
 %define        sover   4.4
 Version:       4.4.1
-Release:       0.1
+Release:       1.99
 License:       GPL
 Group:         Base
-#Source0:      ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.2.x/%{name}-%{version}.%{snap}.tar.gz
-# Snap tarball is generated from rpm-4_4 branch
 Source0:       ftp://jbj.org/pub/rpm-4.4.x/%{name}-%{version}.tar.gz
 # Source0-md5: 90ded9047b1b69d918c6c7c7b56fd7a9
 Source1:       %{name}.groups
@@ -84,7 +79,7 @@ Patch21:      %{name}-dontneedutils.patch
 Patch22:       %{name}-provides-dont-obsolete.patch
 Patch23:       %{name}-examplesaredoc.patch
 Patch24:       %{name}-po.patch
-Patch25:       %{name}-amd64.patch
+Patch25:       %{name}-getcwd.patch
 Patch26:       %{name}-notsc.patch
 Patch27:       %{name}-hack-norpmlibdep.patch
 Patch28:       %{name}-makefile-no_myLDADD_deps.patch
@@ -97,8 +92,11 @@ Patch34:     %{name}-epoch0.patch
 Patch35:       %{name}-perl_req-INC_dirs.patch
 Patch36:       %{name}-debuginfo.patch
 Patch37:       %{name}-doxygen_hack.patch
-Patch38:       %{name}-distver.patch
-Patch39:       %{name}-gcc4.patch
+Patch38:       %{name}-gcc4.patch
+Patch39:       %{name}-pythondeps.patch
+Patch40:       %{name}-print-requires.patch
+Patch41:       %{name}-reduce-stack-usage.patch
+Patch42:       %{name}-glob.patch
 URL:           http://www.rpm.org/
 Icon:          rpm.gif
 BuildRequires: autoconf >= 2.52
@@ -123,7 +121,6 @@ BuildRequires:      popt-devel >= %{reqpopt_ver}
 BuildRequires: python-modules >= 2.2
 BuildRequires: readline-devel
 BuildRequires: rpm-perlprov
-BuildRequires: rpm-pythonprov
 BuildRequires: zlib-devel
 %if %{with static}
 # Require static library only for static build
@@ -151,7 +148,8 @@ 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                ix86 i386 i486 i586 i686 athlon pentium3 pentium4
+%define                ix86    i386 i486 i586 i686 athlon pentium3 pentium4
+%define                x8664   amd64 ia32e x86_64
 
 # stabilize new build environment
 %define                __newcc %{?force_cc}%{!?force_cc:%{_target_cpu}-pld-linux-gcc}
@@ -216,7 +214,6 @@ Group:              Libraries
 Requires:      db >= %{reqdb_ver}
 %{?with_selinux:BuildRequires: libselinux >= 1.18}
 Requires:      popt >= %{reqpopt_ver}
-%{?with_distver:Provides:      rpm-lib(distver)}
 # avoid SEGV caused by mixed db versions
 Conflicts:     poldek < 0.18.1-16
 
@@ -398,19 +395,11 @@ Requires: chrpath >= 0.10-4
 Requires:      cpio
 Requires:      diffutils
 Requires:      elfutils
-Requires:      file >= 4.01
+Requires:      file >= 4.13-2
 Requires:      fileutils
 Requires:      findutils
-%ifarch athlon
-Requires:      gcc >= 3.0.3
-%else
-%ifarch i686
-# because of -mtune in rpmrc
-Requires:      gcc >= 5:3.4
-%else
-Requires:      gcc
-%endif
-%endif
+# because of -fvisibility... related fixes
+Requires:      gcc >= 5:4.0.1-0.20050514.2
 Requires:      glibc-devel
 Requires:      grep
 Requires:      gzip
@@ -423,9 +412,7 @@ Requires:   tar
 Requires:      textutils
 Provides:      rpmbuild(macros) = %{rpm_macros_rev}
 Provides:      rpmbuild(noauto) = 3
-# because of -fvisibility-inlines-hidden in rpm.macros
-Conflicts:     gcc-c++ < 5:3.4
-%ifarch amd64
+%ifarch %{x8664}
 Conflicts:     automake < 1:1.7.9-2
 Conflicts:     libtool < 2:1.5-13
 %endif
@@ -510,7 +497,7 @@ Summary:    Python macros, which simplifies creation of rpm packages with Python so
 Summary(pl):   Makra u³atwiaj±ce tworzenie pakietów rpm z programami napisanymi w Pythonie
 Group:         Applications/File
 Requires:      %{name} = %{version}-%{release}
-Requires:      python-modules
+Requires:      python
 
 %description pythonprov
 Python macros, which simplifies creation of rpm packages with Python
@@ -580,7 +567,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane
 ze ¼rode³ RPM-a przez doxygen.
 
 %prep
-%setup -q -n %{name}
+%setup -q
 %patch1 -p1
 %patch2 -p1
 # temporarily moved after patch0 - messes too much in pl.po
@@ -632,8 +619,11 @@ cat %{SOURCE11} >> macros.in
 %patch35 -p0
 %patch36 -p1
 %patch37 -p1
-%{?with_distver:%patch38 -p1}
+%patch38 -p1
 %patch39 -p1
+%patch40 -p1
+%patch41 -p1
+%patch42 -p1
 %patch0 -p1
 %patch3 -p1
 
@@ -656,10 +646,6 @@ for f in doc{,/ja,/pl}/rpm.8 doc{,/ja,/pl}/rpmbuild.8 ; do
        mv -f ${f}.tmp $f
 done
 
-# ... and make some cleanings
-rm -fr $(find ./ -type d -name CVS )
-rm -f  $(find ./ -type f -name ".cvsignore" )
-
 %build
 cd file
 %{__libtoolize}
@@ -682,6 +668,8 @@ sed -e 's|@host@|%{_target_cpu}-%{_target_vendor}-linux-gnu|' \
        -e 's|@host_cpu@|%{_target_cpu}|' macros.in > macros.tmp
 mv -f macros.tmp macros.in
 
+CPPFLAGS="-Dglob=rpm_glob -Dglobfree=rpm_globfree"; export CPPFLAGS
+
 # pass CC and CXX too in case of building with some older configure macro
 %configure \
        CC="%{__newcc}" \
@@ -694,6 +682,7 @@ mv -f macros.tmp macros.in
        %{?with_python:--with-python=auto} \
        %{!?with_python:--without-python} \
        %{!?with_selinux:--without-selinux} \
+       --with-glob \
        --without-db
 
 # file_LDFLAGS, debugedit_LDADD - no need to link "file" and "debugedit" statically
@@ -779,15 +768,15 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep <<EOF
 # global list of capabilities (SONAME, perl(module), php(module) regexps)
 # which don't generate dependencies on package NAMES
 # -- OpenGL implementation
-^libGL.so.1$
-^libGLU.so.1$
+^libGL.so.1
+^libGLU.so.1
 ^libOSMesa.so
 # -- Glide
-^libglide3.so.3$
+^libglide3.so.3
 # -- mozilla
-^libgtkmozembed.so$
-^libgtksuperwin.so$
-^libxpcom.so$
+^libgtkmozembed.so
+^libgtksuperwin.so
+^libxpcom.so
 # -- X11 implementation
 ^libFS.so
 ^libI810XvMC.so
@@ -1006,9 +995,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %ifarch alpha
 %{_rpmlibdir}/alpha*
 %endif
-%ifarch amd64
-%{_rpmlibdir}/amd64*
-%endif
 %ifarch ia64
 %{_rpmlibdir}/ia64*
 %endif
@@ -1021,6 +1007,9 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %ifarch sparc sparc64
 %{_rpmlibdir}/sparc*
 %endif
+%ifarch %{x8664}
+%{_rpmlibdir}/x86_64*
+%endif
 # must be here for "Requires: rpm-*prov" to work
 %{_rpmlibdir}/macros.perl
 %{_rpmlibdir}/macros.php
@@ -1062,6 +1051,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %files pythonprov
 %defattr(644,root,root,755)
 %{_rpmlibdir}/macros.python
+%attr(755,root,root) %{_rpmlibdir}/pythondeps.sh
 
 %files php-pearprov
 %defattr(644,root,root,755)
This page took 0.04267 seconds and 4 git commands to generate.