]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
- %%{user,group}remove support really merged from AC-ranch
[packages/rpm.git] / rpm.spec
index 9e069148dcee1f72a6871d7e829c932212b92fde..037854819b60e4bdcf2ac021e5a7708c3f14e085 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -1,7 +1,8 @@
 #
 # TODO:
-# - use system libmagic not internal libfmagic
-# - when really needed: _noauto{req,prov} for non-helper-generated deps
+# - 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    static  # build static rpmi (not supported at the moment)
 # 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"
 
-%include        /usr/lib/rpm/macros.python
-%define snap   20040107
+%define        snap    20040614
 # versions of required libraries
 %define        reqdb_ver       4.2.50-1
 %define        reqpopt_ver     1.9
-%define        beecrypt_ver    3.0.0-0.20030610.1
-%define rpm_macros_rev 1.145
+%define        beecrypt_ver    4.0.0
+%define        rpm_macros_rev  1.161
 Summary:       RPM Package Manager
 Summary(de):   RPM Packet-Manager
 Summary(es):   Gestor de paquetes RPM
@@ -27,14 +27,15 @@ Summary(pt_BR):     Gerenciador de pacotes RPM
 Summary(ru):   íÅÎÅÄÖÅÒ ÐÁËÅÔÏ× ÏÔ RPM
 Summary(uk):   íÅÎÅÄÖÅÒ ÐÁËÅԦנצĠRPM
 Name:          rpm
-%define        ver     4.3
+%define        ver     4.4
+%define        sover   4.3
 Version:       %{ver}
-Release:       0.%{snap}.19
+Release:       0.%{snap}.0.4
 License:       GPL
 Group:         Base
 #Source0:      ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.2.x/%{name}-%{version}.%{snap}.tar.gz
 Source0:       ftp://distfiles.pld-linux.org/src/%{name}-%{version}.%{snap}.tar.bz2
-# Source0-md5: c1bc4a2ae441fbd4da8dd90149bab2f2
+# Source0-md5: a91b8e17f6e69208b188d2876e80aef9
 Source1:       %{name}.groups
 Source2:       %{name}.platform
 Source3:       %{name}-install-tree
@@ -47,16 +48,16 @@ Source9:    %{name}-php-provides
 Source10:      %{name}-php-requires
 Source11:      %{name}.macros
 Source12:      perl.prov
+Source13:      %{name}-user_group.sh
+Source14:      %{name}.sysconfig
 Source30:      builder
 Source31:      adapter.awk
 Source32:      pldnotify.awk
-Patch0:                %{name}-pl.po.patch
 Patch1:                %{name}-rpmrc.patch
 Patch2:                %{name}-arch.patch
 Patch3:                %{name}-rpmpopt.patch
 Patch4:                %{name}-perl-macros.patch
 Patch5:                %{name}-perl-req-perlfile.patch
-Patch6:                %{name}-glob.patch
 Patch7:                %{name}-noexpand.patch
 Patch8:                %{name}-scripts-closefds.patch
 Patch9:                %{name}-python-macros.patch
@@ -84,17 +85,16 @@ Patch30:    %{name}-makefile-no_myLDADD_deps.patch
 Patch31:       %{name}-libdir64.patch
 Patch32:       %{name}-libdir-links.patch
 Patch33:       %{name}-context.patch
-Patch34:       %{name}-nls-fixes.patch
 Patch35:       %{name}-missing-prototypes.patch
 Patch36:       %{name}-pld-autodep.patch
 Patch37:       %{name}-rpmsq.patch
 Patch38:       %{name}-file-readelf.patch
-Patch39:       %{name}-pentiumX.patch
 Patch40:       %{name}-epoch0.patch
 Patch41:       %{name}-file-readelf-fix.patch
-Patch42:       %{name}-cpuid.patch
 Patch43:       %{name}-perl_req-INC_dirs.patch
 Patch44:       %{name}-debuginfo.patch
+Patch45:       %{name}-beecrypt4.patch
+Patch100:      %{name}-pl.po.patch
 URL:           http://www.rpm.org/
 Icon:          rpm.gif
 BuildRequires: autoconf >= 2.52
@@ -103,17 +103,20 @@ BuildRequires:    beecrypt-devel >= %{beecrypt_ver}
 BuildRequires: bzip2-devel >= 1.0.1
 BuildRequires: db-devel >= %{reqdb_ver}
 %{?with_doc:BuildRequires:     doxygen}
-BuildRequires: gettext-devel >= 0.11.4-2
 BuildRequires: elfutils-devel
+BuildRequires: findutils
+BuildRequires: gettext-devel >= 0.11.4-2
 #BuildRequires:        libmagic-devel
 %{?with_selinux:BuildRequires: libselinux-devel}
 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
 BuildRequires: libstdc++-devel
 BuildRequires: libtool
+BuildRequires: libxml2-devel
 BuildRequires: patch >= 2.2
 BuildRequires: popt-devel >= %{reqpopt_ver}
 %{?with_python:BuildRequires:  python-devel >= 2.2}
 BuildRequires: python-modules >= 2.2
+BuildRequires: readline-devel
 BuildRequires: rpm-perlprov
 BuildRequires: rpm-pythonprov
 BuildRequires: zlib-devel
@@ -142,11 +145,12 @@ 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
 
 # stabilize new build environment
-%define                __cc %{?force_cc}%{!?force_cc:%{_target_cpu}-pld-linux-gcc}
-%define                __cxx %{?force_cxx}%{!?force_cxx:%{_target_cpu}-pld-linux-g++}
-%define                __cpp %{?force_cpp}%{!?force_cpp:%{_target_cpu}-pld-linux-gcc -E}
+%define                __newcc %{?force_cc}%{!?force_cc:%{_target_cpu}-pld-linux-gcc}
+%define                __newcxx %{?force_cxx}%{!?force_cxx:%{_target_cpu}-pld-linux-g++}
+%define                __newcpp %{?force_cpp}%{!?force_cpp:%{_target_cpu}-pld-linux-gcc -E}
 
 %define                _rpmlibdir /usr/lib/rpm
 
@@ -463,6 +467,7 @@ Requires:   /bin/id
 Requires:      awk
 Requires:      binutils
 Requires:      chrpath >= 0.10-4
+Requires:      cpio
 Requires:      diffutils
 Requires:      file >= 4.01
 Requires:      fileutils
@@ -544,14 +549,12 @@ construir pacotes usando o RPM.
 ÐÏÂÕÄÏ×É RPM'¦×.
 
 %prep
-%setup -q
-%patch0 -p1
+%setup -q -n %{name}
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
-%patch6 -p1
 %patch7 -p1
 %patch8 -p1
 %patch9 -p1
@@ -560,7 +563,8 @@ construir pacotes usando o RPM.
 %patch12 -p1
 %patch13 -p1
 %patch14 -p1
-%patch15 -p1
+# home-etc FIXME
+#%patch15 -p1
 %patch16 -p1
 %patch17 -p1
 %patch18 -p1
@@ -591,17 +595,16 @@ cat %{SOURCE11} >> macros.in
 %patch31 -p1
 %patch32 -p1
 %patch33 -p1
-%patch34 -p1
 %patch35 -p1
 %patch36 -p1
 %patch37 -p1
 %patch38 -p1
-%patch39 -p1
 %patch40 -p1
 %patch41 -p1
-%patch42 -p1
 %patch43 -p0
 %patch44 -p1
+%patch45 -p1
+%patch100 -p1
 
 cd scripts;
 mv -f perl.req perl.req.in
@@ -622,6 +625,10 @@ 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}
@@ -640,15 +647,15 @@ 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
-sed -e 's|@host@|%{_target_cpu}-%{_target_vendor}-linux-gnu|'  \
-       -e 's|@host_cpu@|%{_target_cpu}|'  macros.in  > macros.tmp
+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
 
 # pass CC and CXX too in case of building with some older configure macro
 %configure \
-       CC="%{__cc}" \
-       CXX="%{__cxx}" \
-       CPP="%{__cpp}" \
+       CC="%{__newcc}" \
+       CXX="%{__newcxx}" \
+       CPP="%{__newcpp}" \
        --enable-shared \
        --enable-static \
        %{?with_doc:--with-apidocs} \
@@ -659,6 +666,9 @@ mv -f macros.tmp macros.in
 
 # file_LDFLAGS, debugedit_LDADD - no need to link "file" and "debugedit" statically
 %{__make} \
+       CC="%{__cc}" \
+       CXX="%{__cxx}" \
+       CPP="%{__cpp}" \
        pylibdir=%{py_libdir} \
        myLDFLAGS="%{rpmldflags}" \
        file_LDFLAGS= \
@@ -668,7 +678,7 @@ mv -f macros.tmp macros.in
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/%{_lib}
+install -d $RPM_BUILD_ROOT/{%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT \
@@ -688,8 +698,10 @@ install %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
 install %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
 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 scripts/find-php*      $RPM_BUILD_ROOT%{_rpmlibdir}
 install scripts/php.{prov,req} $RPM_BUILD_ROOT%{_rpmlibdir}
+install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/rpm
 
 install %{SOURCE30} $RPM_BUILD_ROOT%{_bindir}/builder
 install %{SOURCE31} $RPM_BUILD_ROOT%{_bindir}/adapter.awk
@@ -697,8 +709,6 @@ install %{SOURCE32} $RPM_BUILD_ROOT%{_bindir}/pldnotify.awk
 
 install rpmio/ugid.h $RPM_BUILD_ROOT%{_includedir}/rpm
 
-install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm
-
 %ifarch %{ix86}
 ix86re=$(echo "(%{ix86})"|sed 's/ /|/g')
 perl -p -i -e 's/^(buildarchtranslate: '"$ix86re"': ).*/\1%{_target_cpu}/' \
@@ -747,17 +757,15 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc <<EOF
 EOF
 
 # for rpm -e|-U --repackage
-install -d $RPM_BUILD_ROOT/var/spool/repackage
+install -d $RPM_BUILD_ROOT/var/{spool/repackage,lock/rpm}
+touch $RPM_BUILD_ROOT/var/lock/rpm/transaction
 
 # move libs to /lib
-for a in librpm-%{ver}.so librpmdb-%{ver}.so librpmio-%{ver}.so ; do
+for a in librpm-%{sover}.so librpmdb-%{sover}.so librpmio-%{sover}.so ; do
        mv -f $RPM_BUILD_ROOT%{_libdir}/$a $RPM_BUILD_ROOT/%{_lib}
        ln -s /%{_lib}/$a $RPM_BUILD_ROOT%{_libdir}/$a
 done
 
-# fix debug script
-perl -pi -e 's#/.*/debugedit#%{_bindir}/debugedit#g' $RPM_BUILD_ROOT%{_rpmlibdir}/find-debuginfo.sh
-
 for f in $RPM_BUILD_ROOT%{_datadir}/locale/{en_RN,eu_ES,gl,hu,ro,wa,zh,zh_CN.GB2312}/LC_MESSAGES/rpm.mo ; do
        [ "`file $f | sed -e 's/.*,//' -e 's/message.*//'`" -le 1 ] && rm -f $f
 done
@@ -788,6 +796,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 
 %dir %{_sysconfdir}/rpm
 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/rpm/macros
+%config(noreplace) %verify(not size mtime md5) /etc/sysconfig/rpm
 
 %{_mandir}/man8/rpm.8*
 %lang(fr) %{_mandir}/fr/man8/rpm.8*
@@ -799,6 +808,8 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 
 %dir /var/lib/rpm
 %dir %attr(700,root,root) /var/spool/repackage
+%dir /var/lock/rpm
+/var/lock/rpm/transaction
 
 %dir %{_rpmlibdir}
 #%attr(755,root,root) %{_rpmlibdir}/rpmd
@@ -807,6 +818,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 #%attr(755,root,root) %{_rpmlibdir}/rpm[qv]
 
 %doc %attr(755,root,root) %{_rpmlibdir}/convertrpmrc.sh
+%attr(755,root,root) %{_rpmlibdir}/user_group.sh
 
 %{_rpmlibdir}/rpmrc
 %{_rpmlibdir}/rpmpopt*
@@ -839,9 +851,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 #%attr(755,root,root) %{_rpmlibdir}/cpanflute
 #%attr(755,root,root) %{_rpmlibdir}/cpanflute2
 #%attr(755,root,root) %{_rpmlibdir}/Specfile.pm
-%attr(755,root,root) %{_rpmlibdir}/http.req
-%attr(755,root,root) %{_rpmlibdir}/magic.prov
-%attr(755,root,root) %{_rpmlibdir}/magic.req
 %attr(755,root,root) %{_rpmlibdir}/u_pkg.sh
 #%attr(755,root,root) %{_rpmlibdir}/vpkg-provides.sh
 #%attr(755,root,root) %{_rpmlibdir}/vpkg-provides2.sh
@@ -853,26 +862,34 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_rpmlibdir}/pentium*
 %{_rpmlibdir}/athlon*
 %endif
+%ifarch alpha
+%{_rpmlibdir}/alpha*
+%endif
 %ifarch amd64
 %{_rpmlibdir}/amd64*
-%{_rpmlibdir}/x86_64*
 %endif
-%ifarch sparc sparc64
-%{_rpmlibdir}/sparc*
+%ifarch ia64
+%{_rpmlibdir}/ia64*
 %endif
-%ifarch alpha
-%{_rpmlibdir}/alpha*
+%ifarch mips mipsel mips64 mips64el
+%{_rpmlibdir}/mips*
 %endif
 %ifarch ppc
 %{_rpmlibdir}/ppc*
 %endif
+%ifarch sparc sparc64
+%{_rpmlibdir}/sparc*
+%endif
 # must be here for "Requires: rpm-*prov" to work
 %{_rpmlibdir}/macros.perl
 %{_rpmlibdir}/macros.php
-# not used yet ...
-%{_rpmlibdir}/sql.prov
-%{_rpmlibdir}/sql.req
-%{_rpmlibdir}/tcl.req
+# 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
 %{_rpmlibdir}/trpm
 
 %attr(755,root,root) %{_bindir}/javadeps
This page took 0.052755 seconds and 4 git commands to generate.