# 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_with 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.3.27-1
%define reqpopt_ver 1.10.1
%define beecrypt_ver 2:4.1.0
-%define rpm_macros_rev 1.196
+%define rpm_macros_rev 1.231
Summary: RPM Package Manager
Summary(de): RPM Packet-Manager
Summary(es): Gestor de paquetes RPM
Name: rpm
%define sover 4.4
Version: 4.4.1
-Release: 0.6
+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
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
Patch35: %{name}-perl_req-INC_dirs.patch
Patch36: %{name}-debuginfo.patch
Patch37: %{name}-doxygen_hack.patch
-Patch38: %{name}-distver.patch
-Patch39: %{name}-gcc4.patch
-Patch40: %{name}-pythondeps.patch
-Patch41: %{name}-print-requires.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
# 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}
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
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
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
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
%patch35 -p0
%patch36 -p1
%patch37 -p1
-%{?with_distver:%patch38 -p1}
+%patch38 -p1
%patch39 -p1
%patch40 -p1
%patch41 -p1
+%patch42 -p1
%patch0 -p1
%patch3 -p1
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}
-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}" \
%{?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
%ifarch alpha
%{_rpmlibdir}/alpha*
%endif
-%ifarch amd64
-%{_rpmlibdir}/amd64*
-%endif
%ifarch ia64
%{_rpmlibdir}/ia64*
%endif
%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