]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
- compile rpmdb tool with choosen bdb and check if it's done properly
[packages/rpm.git] / rpm.spec
index 6fd5363990152d8644476954bc5007fd6ecd5d9e..20b8228a141aa0bda20112ac9e53f08e0926462a 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -52,7 +52,7 @@ Summary(ru.UTF-8):    Менеджер пакетов от RPM
 Summary(uk.UTF-8):     Менеджер пакетів від RPM
 Name:          rpm
 Version:       5.4.10
-Release:       35
+Release:       35.1
 License:       LGPL
 Group:         Base
 # http://rpm5.org/files/rpm/rpm-5.4/rpm-5.4.10-0.20120706.src.rpm
@@ -115,7 +115,7 @@ Patch22:    %{name}-sparc64.patch
 Patch23:       %{name}-gendiff.patch
 Patch24:       openmp.patch
 Patch25:       %{name}-URPM-build-fix.patch
-Patch26:       %{name}-db5.2.patch
+Patch26:       %{name}-db5.3.patch
 Patch27:       %{name}-helperEVR-noassert.patch
 Patch28:       %{name}-unglobal.patch
 Patch29:       %{name}-builddir-readlink.patch
@@ -146,6 +146,7 @@ Patch53:    %{name}-lua-enable-extra-libs.patch
 Patch54:       %{name}-fix-filedigests-verify.patch
 Patch55:       %{name}-disable-hmac-verify.patch
 Patch56:       rpm-macros.patch
+Patch57:       %{name}-db5.2.patch
 
 # Patches imported from Mandriva
 
@@ -812,7 +813,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch23 -p1
 %patch24 -p1
 %patch25 -p1
-%patch26 -p1
+####%patch26 -p1
 %patch27 -p1
 %patch28 -p1
 %patch29 -p1
@@ -827,7 +828,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch38 -p1
 %patch39 -p1
 %patch40 -p1
-#patch41 -p1
+####%patch41 -p1
 %patch42 -p1
 %patch43 -p1
 %patch44 -p1
@@ -843,6 +844,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch54 -p1
 %patch55 -p1
 %patch56 -p1
+%patch57 -p1
 
 %patch1000 -p1
 %patch1001 -p1
@@ -959,7 +961,13 @@ sed -i \
 
 %{?with_apidocs:%{__make} apidocs}
 
-%{__cc} %{rpmcflags} tools/rpmdb_checkversion.c -o tools/rpmdb_checkversion -ldb-%{reqdb_ver}
+%{__cc} %{rpmcflags} -I/usr/include/db%{reqdb_ver} tools/rpmdb_checkversion.c \
+       -o tools/rpmdb_checkversion -ldb-%{reqdb_ver}
+
+if tools/rpmdb_checkversion -V 2>&1 | grep "t match library version"; then
+       echo "Error linking rpmdb tools!"
+       exit 1
+fi
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -1175,8 +1183,27 @@ if [ -f %{_sysconfdir}/rpm/sysinfo ]; then
        mkdir %{_sysconfdir}/rpm/sysinfo
 fi
 
+%if 0
 %posttrans
-if [ -e /var/lib/rpm/Packages ] && [ -x %{_rpmlibdir}/bin/rpmdb_checkversion ] && \
+if [ ! -e /var/lib/rpm/Packages ]; then
+       %{__rm} -f /var/lib/rpm/need_rpmdb_downgrade 2>/dev/null >/dev/null
+       exit 0
+fi
+NEEDDBCONV=
+if [ -e /var/lib/rpm/need_rpmdb_downgrade ]; then
+       if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && [ -x /bin/cp ] && \
+                       /bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release}; then
+               echo
+               echo "Backup of the rpm database has been created in /var/lib/rpm.rpmbackup-%{version}-%{release}"
+               echo
+       fi
+       %{__rm} -f /var/lib/rpm/log/*
+       /usr/bin/db5.2_dump /var/lib/rpm/Packages | /usr/bin/db5.2_load /var/lib/rpm/Packages.downgraded
+       %{__mv} -f /var/lib/rpm/Packages /var/lib/rpm/Packages.rpmsave
+       %{__mv} -f /var/lib/rpm/Packages.downgraded /var/lib/rpm/Packages
+       NEEDDBCONV="YES"
+fi
+if [ -x %{_rpmlibdir}/bin/rpmdb_checkversion ] && \
                ! %{_rpmlibdir}/bin/rpmdb_checkversion -h /var/lib/rpm -d /var/lib/rpm; then
        if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && [ -x /bin/cp ] && \
                        /bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release}; then
@@ -1184,7 +1211,9 @@ if [ -e /var/lib/rpm/Packages ] && [ -x %{_rpmlibdir}/bin/rpmdb_checkversion ] &
                echo "Backup of the rpm database has been created in /var/lib/rpm.rpmbackup-%{version}-%{release}"
                echo
        fi
-
+       NEEDDBCONV="YES"
+fi
+if [ "x$NEEDDBCONV" = "xYES" ]; then
        echo 'If poldek aborts after migration with rpmdb error, this is "normal", you should ignore it'
 
        if [ -x %{_rpmlibdir}/bin/dbconvert ]; then
@@ -1196,6 +1225,10 @@ if [ -e /var/lib/rpm/Packages ] && [ -x %{_rpmlibdir}/bin/rpmdb_checkversion ] &
                fi
        fi
 fi
+endif
+
+%triggerpostun -- %{name} > 5.0.0-1, %{name} < 5.4.10-36
+:>/var/lib/rpm/need_rpmdb_downgrade
 
 %triggerpostun -- %{name} < 4.4.9-44
 %{_rpmlibdir}/hrmib-cache
This page took 0.047002 seconds and 4 git commands to generate.