From ae7c31e78021508ab746fb43442440ead08bfee5 Mon Sep 17 00:00:00 2001 From: Panu Matilainen Date: Sat, 29 Nov 2008 16:45:45 +0000 Subject: [PATCH] - update to 4.6.0-rc2 - fixes #471820, #473167, #469355, #468319, #472507, #247374, #426672, #444661 --- .cvsignore | 2 +- rpm-4.6.0-rc1-defaultdocdir.patch | 45 ---------------- rpm-4.6.0-rc1-file-debuginfo.patch | 20 ------- rpm-4.6.0-rc1-fp-hash.patch | 26 --------- rpm-4.6.0-rc1-noarch-subpkg.patch | 24 --------- rpm-4.6.0-rc1-permit-tab.patch | 20 ------- rpm-4.6.0-rc1-skip-equal-nevr.patch | 83 ----------------------------- rpm.spec | 21 +++----- sources | 2 +- 9 files changed, 8 insertions(+), 235 deletions(-) delete mode 100644 rpm-4.6.0-rc1-defaultdocdir.patch delete mode 100644 rpm-4.6.0-rc1-file-debuginfo.patch delete mode 100644 rpm-4.6.0-rc1-fp-hash.patch delete mode 100644 rpm-4.6.0-rc1-noarch-subpkg.patch delete mode 100644 rpm-4.6.0-rc1-permit-tab.patch delete mode 100644 rpm-4.6.0-rc1-skip-equal-nevr.patch diff --git a/.cvsignore b/.cvsignore index 5f6f567..84f16dc 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -rpm-4.6.0-rc1.tar.bz2 +rpm-4.6.0-rc2.tar.bz2 diff --git a/rpm-4.6.0-rc1-defaultdocdir.patch b/rpm-4.6.0-rc1-defaultdocdir.patch deleted file mode 100644 index cb71e0b..0000000 --- a/rpm-4.6.0-rc1-defaultdocdir.patch +++ /dev/null @@ -1,45 +0,0 @@ -commit 927f384a9bc058eb6f954e93cc515cc1293fd2a3 -Author: Panu Matilainen -Date: Fri Oct 17 08:11:10 2008 +0300 - - Kick out the dumb defaultdocdir logic from installplatform - - defaultdocdir is simply %{_datadir}/doc - -diff --git a/installplatform b/installplatform -index 8861df0..266d877 100755 ---- a/installplatform -+++ b/installplatform -@@ -8,12 +8,6 @@ RPMRC="${1:-rpmrc}" - MACROS="${2:-macros}" - PLATFORM="${3:-platform}" - --if grep /share/ $PLATFORM > /dev/null 2>&1 ; then -- DEFAULTDOCDIR='%{_usr}/share/doc' --else -- DEFAULTDOCDIR='%{_usr}/doc' --fi -- - TEMPRC="/tmp/rpmrc.$$" - cat << E_O_F > $TEMPRC - include: $RPMRC -@@ -155,7 +149,6 @@ for SUBST in $SUBSTS ; do - -e "s,@RPMRC_GNU@,$RPMRC_GNU," \ - -e "s,@LIB@,$LIB," \ - -e "s,@ARCH_INSTALL_POST@,$ARCH_INSTALL_POST," \ -- -e "s,@DEFAULTDOCDIR@,$DEFAULTDOCDIR," \ - -e '/\${\w*:-/!s,\${,%{_,' \ - -e "s,@ISANAME@,$ISANAME," \ - -e "s,@ISABITS@,$ISABITS," \ -diff --git a/platform.in b/platform.in -index 4b496a0..9768a8a 100644 ---- a/platform.in -+++ b/platform.in -@@ -37,7 +37,7 @@ - # Deprecated misspelling, present for backwards compatibility. - %_initrddir %{_initddir} - --%_defaultdocdir @DEFAULTDOCDIR@ -+%_defaultdocdir %{_datadir}/doc - - %_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\ - && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\ diff --git a/rpm-4.6.0-rc1-file-debuginfo.patch b/rpm-4.6.0-rc1-file-debuginfo.patch deleted file mode 100644 index 7530fc9..0000000 --- a/rpm-4.6.0-rc1-file-debuginfo.patch +++ /dev/null @@ -1,20 +0,0 @@ -commit 81660b26bc8e2c03f55cf928955f7ed84e00785a -Author: Panu Matilainen -Date: Fri Oct 31 10:17:07 2008 +0200 - - Adjust for file output change (rhbz#468129) - - file util used reported file details along with mime type, newer ones don't - -diff --git a/scripts/find-debuginfo.sh b/scripts/find-debuginfo.sh -index 287c512..21366bf 100644 ---- a/scripts/find-debuginfo.sh -+++ b/scripts/find-debuginfo.sh -@@ -90,7 +90,7 @@ strip_to_debug() - { - local g= - $strip_g && case "$(file -bi "$2")" in -- application/x-sharedlib,*) g=-g ;; -+ application/x-sharedlib*) g=-g ;; - esac - eu-strip --remove-comment $g -f "$1" "$2" || exit - } diff --git a/rpm-4.6.0-rc1-fp-hash.patch b/rpm-4.6.0-rc1-fp-hash.patch deleted file mode 100644 index 2bb750f..0000000 --- a/rpm-4.6.0-rc1-fp-hash.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/lib/fprint.c b/lib/fprint.c -index d31a694..b763a38 100644 ---- a/lib/fprint.c -+++ b/lib/fprint.c -@@ -183,16 +183,13 @@ unsigned int fpHashFunction(const void * key) - { - const fingerPrint * fp = key; - unsigned int hash = 0; -- char ch; -- const char * chptr; -+ int j; - -- ch = 0; -- chptr = fp->baseName; -- while (*chptr != '\0') ch ^= *chptr++; -+ hash = hashFunctionString(fp->baseName); -+ if (fp->subDir) hash ^= hashFunctionString(fp->subDir); - -- hash |= ((unsigned)ch) << 24; -- hash |= (((((unsigned)fp->entry->dev) >> 8) ^ fp->entry->dev) & 0xFF) << 16; -- hash |= fp->entry->ino & 0xFFFF; -+ hash ^= ((unsigned)fp->entry->dev); -+ for (j=0; j<4; j++) hash ^= ((fp->entry->ino >> (8*j)) & 0xFF) << ((3-j)*8); - - return hash; - } diff --git a/rpm-4.6.0-rc1-noarch-subpkg.patch b/rpm-4.6.0-rc1-noarch-subpkg.patch deleted file mode 100644 index 613d66f..0000000 --- a/rpm-4.6.0-rc1-noarch-subpkg.patch +++ /dev/null @@ -1,24 +0,0 @@ -commit a4825e488d44e01803c377ebc4fc054adcf42b3a -Author: Panu Matilainen -Date: Thu Oct 23 07:47:25 2008 +0300 - - Make noarch subpackages actually work - - noarch subpackages get their arch tag from parsePreamble() already, - don't stomp over it later in parseSpec() - -diff --git a/build/parseSpec.c b/build/parseSpec.c -index 098bd2b..11e0622 100644 ---- a/build/parseSpec.c -+++ b/build/parseSpec.c -@@ -592,7 +592,10 @@ int parseSpec(rpmts ts, const char *specFile, const char *rootDir, - } - - headerPutString(pkg->header, RPMTAG_OS, os); -- headerPutString(pkg->header, RPMTAG_ARCH, arch); -+ /* noarch subpackages already have arch set here, leave it alone */ -+ if (!headerIsEntry(pkg->header, RPMTAG_ARCH)) { -+ headerPutString(pkg->header, RPMTAG_ARCH, arch); -+ } - headerPutString(pkg->header, RPMTAG_PLATFORM, platform); - - pkg->ds = rpmdsThis(pkg->header, RPMTAG_REQUIRENAME, RPMSENSE_EQUAL); diff --git a/rpm-4.6.0-rc1-permit-tab.patch b/rpm-4.6.0-rc1-permit-tab.patch deleted file mode 100644 index 964e822..0000000 --- a/rpm-4.6.0-rc1-permit-tab.patch +++ /dev/null @@ -1,20 +0,0 @@ -commit 49c515179ac0d34c2bb43bf242b8eb27ff6c11b2 -Author: Panu Matilainen -Date: Sun Oct 19 01:53:03 2008 +0300 - - Permit tab as whitespace between macro arguments (rhbz#467567) - - another dumb regression from macro handling cleanups - -diff --git a/rpmio/macro.c b/rpmio/macro.c -index 1e292c6..d1cbf93 100644 ---- a/rpmio/macro.c -+++ b/rpmio/macro.c -@@ -798,7 +798,7 @@ grabArgs(MacroBuf mb, const rpmMacroEntry me, const char * se, - char *s = xcalloc((lastc-se)+1, sizeof(*s)); - memcpy(s, se, (lastc-se)); - -- argvSplit(&av, s, " "); -+ argvSplit(&av, s, " \t"); - argvAppend(&argv, av); - - argvFree(av); diff --git a/rpm-4.6.0-rc1-skip-equal-nevr.patch b/rpm-4.6.0-rc1-skip-equal-nevr.patch deleted file mode 100644 index cea8cee..0000000 --- a/rpm-4.6.0-rc1-skip-equal-nevr.patch +++ /dev/null @@ -1,83 +0,0 @@ -diff --git a/lib/depends.c b/lib/depends.c -index 58aff31..810e909 100644 ---- a/lib/depends.c -+++ b/lib/depends.c -@@ -118,7 +118,7 @@ int rpmtsAddInstallElement(rpmts ts, Header h, - struct rpmtd_s td; - const char * arch = NULL; - const char * os = NULL; -- rpmds oldChk, newChk; -+ rpmds oldChk = NULL, newChk = NULL, sameChk = NULL; - rpmds obsoletes; - rpmalKey pkgKey; /* addedPackages key */ - int xx; -@@ -151,10 +151,13 @@ int rpmtsAddInstallElement(rpmts ts, Header h, - } - - oldChk = rpmdsThis(h, RPMTAG_REQUIRENAME, (RPMSENSE_LESS)); -- newChk = rpmdsThis(h, RPMTAG_REQUIRENAME, (RPMSENSE_EQUAL|RPMSENSE_GREATER)); -+ newChk = rpmdsThis(h, RPMTAG_REQUIRENAME, (RPMSENSE_GREATER)); -+ sameChk = rpmdsThis(h, RPMTAG_REQUIRENAME, (RPMSENSE_EQUAL)); - /* XXX can't use rpmtsiNext() filter or oc will have wrong value. */ - for (pi = rpmtsiInit(ts), oc = 0; (p = rpmtsiNext(pi, 0)) != NULL; oc++) { - rpmds this; -+ const char *pkgNEVR, *addNEVR; -+ int skip = 0; - - /* XXX Only added packages need be checked for dupes. */ - if (rpmteType(p) == TR_REMOVED) -@@ -181,13 +184,20 @@ int rpmtsAddInstallElement(rpmts ts, Header h, - continue; /* XXX can't happen */ - - /* -+ * Always skip identical NEVR. - * On upgrade, if newer NEVR was previously added, - * then skip adding older. - */ -- rc = rpmdsCompare(newChk, this); -- if (upgrade && rc != 0) { -- const char * pkgNEVR = rpmdsDNEVR(this); -- const char * addNEVR = rpmdsDNEVR(oldChk); -+ if (rpmdsCompare(sameChk, this)) { -+ skip = 1; -+ addNEVR = rpmdsDNEVR(sameChk); -+ } else if (upgrade && rpmdsCompare(newChk, this)) { -+ skip = 1; -+ addNEVR = rpmdsDNEVR(newChk); -+ } -+ -+ if (skip) { -+ pkgNEVR = rpmdsDNEVR(this); - if (rpmIsVerbose()) - rpmlog(RPMLOG_WARNING, - _("package %s was already added, skipping %s\n"), -@@ -203,8 +213,8 @@ int rpmtsAddInstallElement(rpmts ts, Header h, - */ - rc = rpmdsCompare(oldChk, this); - if (upgrade && rc != 0) { -- const char * pkgNEVR = rpmdsDNEVR(this); -- const char * addNEVR = rpmdsDNEVR(newChk); -+ pkgNEVR = rpmdsDNEVR(this); -+ addNEVR = rpmdsDNEVR(newChk); - if (rpmIsVerbose()) - rpmlog(RPMLOG_WARNING, - _("package %s was already added, replacing with %s\n"), -@@ -216,8 +226,6 @@ int rpmtsAddInstallElement(rpmts ts, Header h, - } - } - pi = rpmtsiFree(pi); -- oldChk = rpmdsFree(oldChk); -- newChk = rpmdsFree(newChk); - - /* If newer NEVR was already added, exit now. */ - if (ec) -@@ -353,6 +361,9 @@ addheader: - ec = 0; - - exit: -+ oldChk = rpmdsFree(oldChk); -+ newChk = rpmdsFree(newChk); -+ sameChk = rpmdsFree(sameChk); - pi = rpmtsiFree(pi); - return ec; - } diff --git a/rpm.spec b/rpm.spec index b65281a..b58a05b 100644 --- a/rpm.spec +++ b/rpm.spec @@ -10,7 +10,7 @@ %define rpmhome /usr/lib/rpm %define rpmver 4.6.0 -%define snapver rc1 +%define snapver rc2 %define srcver %{rpmver}-%{snapver} %define bdbver 4.5.20 @@ -18,7 +18,7 @@ Summary: The RPM package management system Name: rpm Version: %{rpmver} -Release: 0.%{snapver}.7 +Release: 0.%{snapver}.1 Group: System Environment/Base Url: http://www.rpm.org/ Source0: http://rpm.org/releases/testing/%{name}-%{srcver}.tar.bz2 @@ -33,12 +33,6 @@ Patch2: rpm-4.5.90-gstreamer-provides.patch Patch100: rpm-4.6.x-no-pkgconfig-reqs.patch # Patches already in upstream -Patch200: rpm-4.6.0-rc1-permit-tab.patch -Patch201: rpm-4.6.0-rc1-skip-equal-nevr.patch -Patch202: rpm-4.6.0-rc1-noarch-subpkg.patch -Patch203: rpm-4.6.0-rc1-defaultdocdir.patch -Patch204: rpm-4.6.0-rc1-fp-hash.patch -Patch205: rpm-4.6.0-rc1-file-debuginfo.patch # These are not yet upstream Patch300: rpm-4.5.90-posttrans.patch @@ -172,13 +166,6 @@ that will manipulate RPM packages and databases. %patch2 -p1 -b .gstreamer-prov %patch100 -p1 -b .pkgconfig-deps -%patch200 -p1 -b .permit-tab -%patch201 -p1 -b .skip-equal-nevr -%patch202 -p1 -b .noarch-subpkg -%patch203 -p1 -b .defaultdocdir -%patch204 -p1 -b .fp-hash -%patch205 -p1 -b .file-debuginfo - # needs a bit of upstream love first... #%patch300 -p1 -b .posttrans @@ -368,6 +355,10 @@ exit 0 %doc doc/librpm/html/* %changelog +* Sat Nov 29 2008 Panu Matilainen +- update to 4.6.0-rc2 +- fixes #471820, #473167, #469355, #468319, #472507, #247374, #426672, #444661 + * Fri Oct 31 2008 Panu Matilainen - adjust find-debuginfo for "file" output change (#468129) diff --git a/sources b/sources index 6559ce6..9691cf8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -083184a85aec253cb4c4662c46379925 rpm-4.6.0-rc1.tar.bz2 +9a8f0f5871fa7915d3443a8f82f1f60d rpm-4.6.0-rc2.tar.bz2