-# TODO:
-# pluto_> btw. /usr/lib/rpm/find-debuginfo.sh needs fix. it extract debuginfo also from kernel modules.
-# pluto_> there's a filelist=$(find $RPM_BUILD_ROOT ! -path "$RPM_BUILD_ROOT/usr/lib/debug/*.debug" -type f
-# pluto_> and we need to add ! -path /lib/modules/...
-# - 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;
-# repackaging uses unchanged "immutable header" image from original rpm, also
-# preserving payload format and compressor from original rpm, _not_ current settings
-# /usr/bin/install: cannot stat `./it.gmo': No such file or directory
-# /usr/bin/install: cannot stat `./sr@Latn.gmo': No such file or directory
-# - maybe? http://rpm.org/gitweb?p=rpm.git;a=commitdiff;h=cfcd1f9bd98d5d0fc46a84931984efec3b9d47e2
-# - fix linking, rpm is beeing linked against installed rpmio
-#
# Conditional build:
%bcond_with static # build static rpm+rpmi
%bcond_with apidocs # don't generate documentation with doxygen
Summary(uk.UTF-8): Менеджер пакетів від RPM
Name: rpm
Version: 4.5
-Release: 78
+Release: 90.1
License: LGPL
Group: Base
Source0: %{name}-%{version}.tar.gz
Source1: %{name}.groups
Source2: %{name}.platform
Source3: %{name}-install-tree
-Source4: %{name}-find-spec-bcond
Source5: %{name}-hrmib-cache
Source6: %{name}-groups-po.awk
-Source7: %{name}-compress-doc
-Source10: %{name}-php-provides
-Source11: %{name}-php-requires
Source12: %{name}.sysinfo
Source13: perl.prov
Source14: %{name}-user_group.sh
Source15: %{name}.sysconfig
-Source16: %{name}-macros.java
-Source17: %{name}-java-requires
# http://svn.pld-linux.org/banner.sh/
Source18: banner.sh
Source19: %{name}-macros.gstreamer
-Source20: macros.php
-Source21: %{name}-php-requires.php
Patch1000: %{name}-new-debuginfo.patch
-#Patch0: %{name}-pl.po.patch
Patch1: %{name}-rpmrc.patch
Patch2: %{name}-arch.patch
Patch3: %{name}-rpmpopt.patch
Patch48: %{name}-nopie.patch
Patch50: %{name}-macros.patch
Patch51: %{name}-cleanlibdirs.patch
-Patch52: %{name}-morearchs.patch
Patch53: %{name}-chroot-hack.patch
Patch55: %{name}-truncate-cvslog.patch
Patch56: %{name}-rpm5-patchset-8413.patch
Patch73: %{name}-namespace-probe.patch
Patch74: %{name}-noversiondir.patch
Patch75: %{name}-rpmte-segv.patch
-Patch76: %{name}-pydebuginfo.patch
Patch77: %{name}-dirdeps-macro.patch
Patch78: %{name}-db3-configure.patch
Patch79: %{name}-macros-cpp.patch
Patch108: %{name}-changelog_order_check_nonfatal.patch
Patch109: %{name}-installplatform.patch
Patch110: %{name}-xz.patch
+Patch111: %{name}-shrink.patch
+Patch112: notrans.patch
+Patch113: %{name}-rubyprov.patch
+Patch114: %{name}-ruby-gem-build.patch
+Patch115: %{name}-glibc.patch
+Patch116: %{name}-trigger-flags-int-type.patch
+Patch117: %{name}-rpm2cpio-xz.patch
+Patch118: %{name}-noarch-subpackages.patch
+Patch119: %{name}-div0.patch
+Patch120: %{name}-pythondeps.patch
+Patch121: %{name}-tld-macros.patch
+Patch122: statver.patch
URL: http://rpm5.org/
BuildRequires: autoconf >= 2.57
BuildRequires: automake >= 1.4
BuildRequires: beecrypt-devel >= %{beecrypt_ver}
BuildRequires: bzip2-devel >= 1.0.2-17
-%{!?with_internal_db:BuildRequires: db-devel >= %{reqdb_ver}}
+%{!?with_internal_db:BuildRequires: %{reqdb_pkg}-devel >= %{reqdb_ver}}
BuildRequires: elfutils-devel >= 0.108
BuildRequires: gettext-devel >= 0.11.4-2
BuildRequires: keyutils-devel
# don't require very fresh rpm.macros to build
%define __gettextize gettextize --copy --force --no-changelog; [ -f po/Makevars ] || cp -f po/Makevars{.template,}
%define find_lang sh ./scripts/find-lang.sh $RPM_BUILD_ROOT
-%define ix86 i386 i486 i586 i686 athlon pentium3 pentium4
-%define ppc ppc ppc7400 ppc7450
-%define x8664 amd64 ia32e x86_64
+%define ix86 i386 i486 i586 i686
+%define x8664 amd64 x86_64
# stabilize new build environment
%define __newcc %{?force_cc}%{!?force_cc:%{_target_cpu}-tld-linux-gcc}
Group: Base
Requires: filesystem
Obsoletes: rpm-scripts
-Obsoletes: vserver-rpm
%description base
The RPM base package contains scripts used by rpm packages themselves.
Summary(uk.UTF-8): Скрипти та утиліти, необхідні для побудови пакетів
Group: Applications/File
Requires(pretrans): findutils
-Requires: %{name}-build-macros >= 1.656
+Requires: %{name}-tld-macros-build >= 1.744-3
Requires: %{name}-utils = %{version}-%{release}
Requires: /bin/id
Requires: awk
Різноманітні допоміжні скрипти та утиліти, які використовуються для
побудови RPM'ів.
-%package javaprov
-Summary: Additional utilities for checking Java provides/requires in RPM packages
-Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach RPM
-Group: Applications/File
-Requires: %{name} = %{version}-%{release}
-Requires: file
-Requires: findutils >= 1:4.2.26
-Requires: mktemp
-Requires: unzip
-
-%description javaprov
-Additional utilities for checking Java provides/requires in RPM
-packages.
-
-%description javaprov -l pl.UTF-8
-Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach
-RPM.
-
%package perlprov
Summary: Additional utilities for checking Perl provides/requires in RPM packages
Summary(de.UTF-8): Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen
Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
Pythonie.
-%package php-pearprov
-Summary: Additional utilities for checking PHP PEAR provides/requires in RPM packages
-Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności skryptów php w RPM
-Group: Applications/File
-Requires: %{name} = %{version}-%{release}
-Requires: sed >= 4.0
-
-%description php-pearprov
-Additional utilities for checking PHP PEAR provides/requires in RPM
-packages.
-
-%description php-pearprov -l pl.UTF-8
-Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w
-pakietach RPM.
-
%package -n python-rpm
Summary: Python interface to RPM library
Summary(pl.UTF-8): Pythonowy interfejs do biblioteki RPM-a
%setup -q
cp -p %{SOURCE15} .
%patch1000 -p1
-#%patch0 -p1
%patch2 -p1
%patch1 -p1
%patch3 -p1
%patch16 -p1
%patch17 -p1
sed -e 's/^/@tld@/' %{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
-cp -p %{SOURCE20} 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 %{SOURCE10} scripts/php.prov
-install %{SOURCE11} scripts/php.req
install %{SOURCE13} scripts/perl.prov
%patch21 -p1
%patch22 -p1
%patch20 -p1
%patch35 -p1
%patch51 -p1
-#%patch52 -p1
%patch55 -p1
%patch56 -p1
%patch57 -p1
%patch73 -p1
%patch74 -p1
%patch75 -p0
-# having .py sources in -debuginfo needs more testing
-#%patch76 -p1
%patch77 -p0
%patch79 -p1
%patch80 -p1
%patch108 -p1
%patch109 -p1
%patch110 -p1
+%patch111 -p1
+%patch112 -p1
+%patch113 -p1
+%patch114 -p1
+%patch115 -p1
+%patch116 -p1
+%patch117 -p1
+%patch118 -p1
+%patch119 -p1
+%patch120 -p1
+%patch121 -p1
+%patch122 -p1
mv -f po/{sr,sr@Latn}.po
rm -rf sqlite zlib popt
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{/%{_lib},/etc/{sysconfig,tmpwatch},%{_sysconfdir}/rpm,/var/lib/banner,/var/cache/hrmib}
+install -d $RPM_BUILD_ROOT%{_rpmlibdir}/macros.d
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT \
# first platform file entry can't contain regexps
%{_target_cpu}-%{_target_vendor}-linux
-%ifarch x86_64
-# x86_64 things
-amd64-[^-]*-[Ll]inux(-gnu)?
-x86_64-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch amd64
+%ifarch %{x8664}
amd64-[^-]*-[Ll]inux(-gnu)?
x86_64-[^-]*-[Ll]inux(-gnu)?
%endif
-%ifarch ia32e
-ia32e-[^-]*-[Ll]inux(-gnu)?
-x86_64-[^-]*-[Ll]inux(-gnu)?
-%endif
-
-%ifarch athlon %{x8664}
-# x86 things
-athlon-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch pentium4 athlon %{x8664}
-pentium4-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch pentium3 pentium4 athlon %{x8664}
-pentium3-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch i686 pentium3 pentium4 athlon %{x8664}
+%ifarch i686 %{x8664}
i686-[^-]*-[Ll]inux(-gnu)?
%endif
-%ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
+%ifarch i586 i686 %{x8664}
i586-[^-]*-[Ll]inux(-gnu)?
%endif
-%ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
+%ifarch i486 i586 i686 %{x8664}
i486-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch %{ix86} %{x8664}
i386-[^-]*-[Ll]inux(-gnu)?
%endif
-%ifarch alpha
-alpha-[^-]*-[Ll]inux(-gnu)?
-%endif
-
-%ifarch ia64
-ia64-[^-]*-[Ll]inux(-gnu)?
-%endif
-
-%ifarch ppc64
-powerpc64-[^-]*-[Ll]inux(-gnu)?
-ppc64-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch ppc ppc64
-powerpc-[^-]*-[Ll]inux(-gnu)?
-ppc-[^-]*-[Ll]inux(-gnu)?
-%endif
-
-%ifarch s390x
-s390x-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch s390 s390x
-s390-[^-]*-[Ll]inux(-gnu)?
-%endif
-
-%ifarch sparc64
-sparc64-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch sparcv9 sparc64
-sparcv9-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch sparc sparcv9 sparc64
-sparc-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch armv6l
-armv6l-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch armv5tel
-armv5tel-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch armv4t armv5tel
-armv4t-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch armv3t armv4t armv5tel
-armv3t-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch armv5teb
-armv5teb-[^-]*-[Ll]inux(-gnu)?
-%endif
-%ifarch armv4b armv5teb
-armv4b-[^-]*-[Ll]inux(-gnu)?
-%endif
-
# noarch
noarch-[^-]*-.*
EOF
# not installed since 4.4.8 (-tools-perl subpackage)
install -p scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
-cp -a macros.perl $RPM_BUILD_ROOT%{_rpmlibdir}/macros.perl
-cp -a macros.python $RPM_BUILD_ROOT%{_rpmlibdir}/macros.python
-cp -a macros.php $RPM_BUILD_ROOT%{_rpmlibdir}/macros.php
cp -a macros.mono $RPM_BUILD_ROOT%{_rpmlibdir}/macros.mono
-cp -a %{SOURCE16} $RPM_BUILD_ROOT%{_rpmlibdir}/macros.java
cp -a %{SOURCE19} $RPM_BUILD_ROOT%{_rpmlibdir}/macros.gstreamer
install -p %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
-install -p %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
-install -p %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
install -p %{SOURCE14} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
-install -p %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
-install -p scripts/php.{prov,req} $RPM_BUILD_ROOT%{_rpmlibdir}
-cp -p %{SOURCE21} $RPM_BUILD_ROOT%{_rpmlibdir}/php.req.php
install -p %{SOURCE5} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
install -p %{SOURCE18} $RPM_BUILD_ROOT%{_bindir}/banner.sh
cp -p %{name}.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/rpm
rm -f $RPM_BUILD_ROOT%{py_sitedir}/rpm/*.{la,a,py}
-# (currently) not used or supported in PLD
+# (currently) not used or supported in TLD
%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/{http.req,perldeps.pl}
# wrong location, not used anyway
%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log,xinetd}
%{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/RPM.pm
%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/RPM/.packlist
-#%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/RPM/RPM.bs
+%{__rm} -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/RPM/RPM.bs
%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/RPM/RPM.so
%{__rm} $RPM_BUILD_ROOT%{_mandir}/man3/RPM.3pm
%{__rm} $RPM_BUILD_ROOT%{_mandir}/{,ja,pl}/man8/rpm{cache,graph}.8
%triggerpostun lib -- %{name}-lib < %{version}
echo >&2 "rpm-lib upgrade: Removing /var/lib/rpm/__db* from older rpmdb version"
rm -f /var/lib/rpm/__db*
-if [ -d /vservers ]; then
- echo >&2 "rpm-lib upgrade: Removing vservers apps/pkgmgmt/base/rpm/state/__* from older rpmdb version"
- rm -f /etc/vservers/*/apps/pkgmgmt/base/rpm/state/__*
-fi
echo >&2 "You should rebuild your rpmdb: rpm --rebuilddb to avoid random rpmdb errors"
-%triggerpostun lib -- db4.5 < %{reqdb_ver}
-echo >&2 "db4.5 upgrade: Removing /var/lib/rpm/__db* from older rpmdb version"
+%triggerpostun lib -- db4.7 < %{reqdb_ver}
+echo >&2 "db4.7 upgrade: Removing /var/lib/rpm/__db* from older rpmdb version"
rm -f /var/lib/rpm/__db*
-if [ -d /vservers ]; then
- echo >&2 "db4.5 upgrade: Removing vservers apps/pkgmgmt/base/rpm/state/__* from older rpmdb version"
- rm -f /etc/vservers/*/apps/pkgmgmt/base/rpm/state/__*
-fi
echo >&2 "You should rebuild your rpmdb: rpm --rebuilddb to avoid random rpmdb errors"
%triggerpostun -- %{name} < 4.4.9-44
# net-snmp hrSWInstalledName queries, bash-completions
%dir /var/cache/hrmib
-#%attr(755,root,root) %{_rpmlibdir}/rpmd
-#%{!?with_static:%attr(755,root,root) %{_rpmlibdir}/rpm[eiu]}
-#%attr(755,root,root) %{_rpmlibdir}/rpmk
-#%attr(755,root,root) %{_rpmlibdir}/rpm[qv]
-
%{_rpmlibdir}/rpmpopt*
%{_rpmlibdir}/macros
+%dir %{_rpmlibdir}/macros.d
%attr(755,root,root) %{_rpmlibdir}/hrmib-cache
%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}/compress-doc
%attr(755,root,root) %{_rpmlibdir}/cross-build
-%attr(755,root,root) %{_rpmlibdir}/find-spec-bcond
%attr(755,root,root) %{_rpmlibdir}/getpo.sh
%attr(755,root,root) %{_rpmlibdir}/install-build-tree
-#%attr(755,root,root) %{_rpmlibdir}/config.*
-#%attr(755,root,root) %{_rpmlibdir}/mkinstalldirs
%attr(755,root,root) %{_rpmlibdir}/u_pkg.sh
%attr(755,root,root) %{_rpmlibdir}/executabledeps.sh
%attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh
-%attr(755,root,root) %{_rpmlibdir}/mimetypedeps.sh
-# needs hacked pkg-config to return anything
%attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh
-#%attr(755,root,root) %{_rpmlibdir}/rpmb
-#%attr(755,root,root) %{_rpmlibdir}/rpmt
%{_rpmlibdir}/noarch-*
%ifarch %{ix86}
%{_rpmlibdir}/i?86*
-%{_rpmlibdir}/pentium*
-%{_rpmlibdir}/athlon*
-%endif
-%ifarch alpha
-%{_rpmlibdir}/alpha*
-%endif
-%ifarch ia64
-%{_rpmlibdir}/ia64*
-%endif
-%ifarch mips mipsel mips64 mips64el
-%{_rpmlibdir}/mips*
-%endif
-%ifarch %{ppc}
-%{_rpmlibdir}/ppc*
-%endif
-%ifarch sparc sparcv9 sparc64
-%{_rpmlibdir}/sparc*
%endif
%ifarch %{x8664}
%{_rpmlibdir}/amd64*
-%{_rpmlibdir}/ia32e*
%{_rpmlibdir}/x86_64*
%endif
-%ifarch armv6l armv5tel armv4t armv3t armv5teb armv4b
-%{_rpmlibdir}/arm*
-%endif
# must be here for "Requires: rpm-*prov" to work
%{_rpmlibdir}/macros.gstreamer
-%{_rpmlibdir}/macros.java
%{_rpmlibdir}/macros.mono
-%{_rpmlibdir}/macros.perl
-%{_rpmlibdir}/macros.php
-# not used yet ... these six depend on perl
-#%attr(755,root,root) %{_rpmlibdir}/http.req
-#%attr(755,root,root) %{_rpmlibdir}/magic.prov
-#%attr(755,root,root) %{_rpmlibdir}/magic.req
-#%{_rpmlibdir}/sql.prov
-#%{_rpmlibdir}/sql.req
-#%{_rpmlibdir}/tcl.req
%attr(755,root,root) %{_bindir}/gendiff
%attr(755,root,root) %{_bindir}/rpmbuild
%lang(pl) %{_mandir}/pl/man1/gendiff.1*
%lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
-%files javaprov
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_rpmlibdir}/java-find-requires
-# needs jar (any jdk), jcf-dump (gcc-java) to work
-%attr(755,root,root) %{_rpmlibdir}/javadeps.sh
-
%files perlprov
%defattr(644,root,root,755)
%attr(755,root,root) %{_rpmlibdir}/perl.*
-#%attr(755,root,root) %{_rpmlibdir}/perldeps.pl
-#%attr(755,root,root) %{_rpmlibdir}/find-perl-*
-#%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
%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)
-%attr(755,root,root) %{_rpmlibdir}/php*
+%attr(755,root,root) %{_rpmlibdir}/pythoneggs.py
%if %{with python}
%files -n python-rpm