#
# 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)
+# - 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;
%bcond_without python # don't build python bindings
%bcond_without selinux # build without selinux support
%bcond_without system_libmagic # don't use system libmagic
+%bcond_without suggest_tags # build without Suggest tag (bootstrapping)
%bcond_with neon # build with HTTP/WebDAV support (neon library)
# 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"
# versions of required libraries
-%define reqdb_ver 4.4.20
-%define reqpopt_ver 1.10.6
+%define reqdb_ver 4.5.20
+%define reqpopt_ver 1.10.8
%define beecrypt_ver 2:4.1.2-4
%define sover 4.4
Summary: RPM Package Manager
Summary(ru.UTF-8): Менеджер пакетов от RPM
Summary(uk.UTF-8): Менеджер пакетів від RPM
Name: rpm
-Version: 4.4.7
-Release: 13
+Version: 4.4.9
+Release: 0.1
License: GPL
Group: Base
Source0: ftp://jbj.org/pub/rpm-4.4.x/%{name}-%{version}.tar.gz
-# Source0-md5: d012c81b5169f7377ea4a36607e1445e
+# Source0-md5: 210b768006e7d88dd8a3bcd498ea27f6
Source1: %{name}.groups
Source2: %{name}.platform
Source3: %{name}-install-tree
Source12: perl.prov
Source13: %{name}-user_group.sh
Source14: %{name}.sysconfig
+Source15: %{name}-macros.java
+Source16: %{name}-java-requires
Source30: builder
Source31: adapter.awk
Source32: pldnotify.awk
Patch8: %{name}-python-macros.patch
Patch9: %{name}-gettext-in-header.patch
Patch10: %{name}-compress-doc.patch
-Patch11: %{name}-rpmdeps-segv.patch
+
Patch12: %{name}-system_libs.patch
Patch13: %{name}-bb-and-short-circuit.patch
Patch14: %{name}-etc_dir.patch
Patch20: %{name}-magic-usesystem.patch
Patch21: %{name}-dontneedutils.patch
Patch22: %{name}-provides-dont-obsolete.patch
-Patch23: %{name}-examplesaredoc.patch
+Patch23: %{name}-pkgconfigdeps.patch
Patch24: %{name}-po.patch
-Patch25: %{name}-getcwd.patch
+
Patch26: %{name}-notsc.patch
Patch27: %{name}-hack-norpmlibdep.patch
Patch28: %{name}-makefile-no_myLDADD_deps.patch
-Patch29: %{name}-libdir64.patch
-Patch30: %{name}-libdir-links.patch
+
Patch31: %{name}-missing-prototypes.patch
Patch32: %{name}-pld-autodep.patch
Patch33: %{name}-arch-x86_64.patch
Patch35: %{name}-perl_req-INC_dirs.patch
Patch36: %{name}-debuginfo.patch
Patch37: %{name}-doxygen_hack.patch
-Patch38: %{name}-empty-rpmlock-path.patch
-Patch39: %{name}-pythondeps.patch
-Patch40: %{name}-vendor.patch
+
Patch41: %{name}-reduce-stack-usage.patch
Patch42: %{name}-old-fileconflicts-behaviour.patch
-Patch43: %{name}-patch-quote.patch
+
Patch44: %{name}-no-neon.patch
Patch45: %{name}-no-sqlite.patch
Patch46: %{name}-mono.patch
-Patch48: %{name}-requireseq.patch
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
Patch59: %{name}-libtool-deps.patch
-Patch60: %{name}-CVE-2006-5466.patch
-Patch61: %{name}-build-failure-error.patch
-Patch62: %{name}-mcontext.patch
-Patch63: %{name}-FileDigestParameterized.patch
-Patch64: %{name}-iconv-translit.patch
-Patch65: %{name}-lua_linking.patch
URL: http://wraptastic.org/
BuildRequires: autoconf >= 2.57
-BuildRequires: automake
+BuildRequires: automake >= 1.4
BuildRequires: beecrypt-devel >= %{beecrypt_ver}
BuildRequires: bzip2-devel >= 1.0.2-17
BuildRequires: db-devel >= %{reqdb_ver}
Obsoletes: rpm-libs
# avoid SEGV caused by mixed db versions
Conflicts: poldek < 0.18.1-16
-Suggests: lzma
+%{?with_suggest_tags:Suggests: lzma}
%description lib
RPMs library.
%patch8 -p1
%patch9 -p1
%patch10 -p1
-%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch14 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
-%patch25 -p1
%patch26 -p1
%patch27 -p1
%patch28 -p1
-%patch29 -p1
-%patch30 -p1
%patch31 -p1
%patch32 -p1
-%patch33 -p1
+# needed? I doubt
+# %patch33 -p1
%patch34 -p1
%patch35 -p0
%patch36 -p1
%patch37 -p1
-%patch38 -p1
-%patch39 -p1
-%patch40 -p0
%patch41 -p1
%patch42 -p1
-%patch43 -p1
%{!?with_neon:%patch44 -p1}
%patch45 -p1
%patch46 -p1
-%patch48 -p1
%patch49 -p1
%patch50 -p1
%patch51 -p1
#%patch52 -p1
-%patch53 -p1
-%patch54 -p1
%patch55 -p1
-%patch56 -p1
%patch57 -p1
%patch58 -p1
%patch59 -p1
-%patch60 -p0
-%patch61 -p0
-%patch62 -p1
-%patch63 -p0
-%patch64 -p1
-%patch65 -p1
cd scripts
mv -f perl.req perl.req.in
# 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
-CPPFLAGS="-Dglob=rpm_glob -Dglobfree=rpm_globfree"; export CPPFLAGS
-
# 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 \
rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl
rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl
+# not installed since 4.4.8 (-tools-perl subpackage)
+install scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
+
install macros.perl $RPM_BUILD_ROOT%{_rpmlibdir}/macros.perl
install macros.python $RPM_BUILD_ROOT%{_rpmlibdir}/macros.python
install macros.php $RPM_BUILD_ROOT%{_rpmlibdir}/macros.php
install macros.mono $RPM_BUILD_ROOT%{_rpmlibdir}/macros.mono
+install %{SOURCE15} $RPM_BUILD_ROOT%{_rpmlibdir}/macros.java
install %{SOURCE1} doc/manual/groups
install %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
install %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
install %{SOURCE8} $RPM_BUILD_ROOT%{_rpmlibdir}/check-files
install %{SOURCE13} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
+install %{SOURCE16} $RPM_BUILD_ROOT%{_rpmlibdir}/find-java-requires
install scripts/find-php* $RPM_BUILD_ROOT%{_rpmlibdir}
install scripts/php.{prov,req} $RPM_BUILD_ROOT%{_rpmlibdir}
install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/rpm
rm -f $RPM_BUILD_ROOT%{_rpmlibdir}/{Specfile.pm,cpanflute,cpanflute2,find-provides,find-requires,freshen.sh,http.req,magic.prov,magic.req,perldeps.pl,sql.prov,sql.req,tcl.req}
# wrong location, not used anyway
rm -f $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log,xinetd}
+# manuals for utils dropped in 4.4.8 (?)
+#rm -f $RPM_BUILD_ROOT%{_mandir}/{,*/}/man8/{rpmcache,rpmgraph}.8
%find_lang %{name}
%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc RPM-PGP-KEY CHANGES manual/*
+%doc CHANGES CREDITS README wdj/JBJ-GPG-KEY manual/*
%attr(755,root,root) /bin/rpm
#%attr(755,root,root) %{_bindir}/rpmdb
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/debugedit
%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
-%attr(755,root,root) %{_rpmlibdir}/rpm2cpio.sh
%attr(755,root,root) %{_rpmlibdir}/tgpg
%attr(755,root,root) %{_rpmlibdir}/rpmdb_loadcvt
%{_mandir}/man8/rpm2cpio.8*
%{_mandir}/man8/rpmdeps.8*
-%{_mandir}/man8/rpmcache.8*
-%{_mandir}/man8/rpmgraph.8*
+#%{_mandir}/man8/rpmcache.8*
+#%{_mandir}/man8/rpmgraph.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(ja) %{_mandir}/ja/man8/rpmgraph.8*
%lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
%lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
%lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
-%lang(pl) %{_mandir}/pl/man8/rpmcache.8*
-%lang(pl) %{_mandir}/pl/man8/rpmgraph.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
#%{_rpmlibdir}/sql.prov
#%{_rpmlibdir}/sql.req
#%{_rpmlibdir}/tcl.req
-%{_rpmlibdir}/trpm
-%attr(755,root,root) %{_bindir}/javadeps
%attr(755,root,root) %{_bindir}/gendiff
%attr(755,root,root) %{_bindir}/rpmbuild