From 0a1fcefb6d907035a84055637e1ed42cdb0946f413503b31bb27df720dae2e4a Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Wed, 9 Jan 2013 09:46:46 +0000 Subject: [PATCH] Accepting request 147491 from devel:Factory:ARM - Update to 4.10.2 - Update to 4.10.2 - update to 4.10.2 (bnc#796375): * Fix missing error code on unparseable signature in packages, regression introduced in rpm 4.10.0. This could result in packages with malformed signature falling through signature checking. * Fix missing error code on --import on bogus key file (RhBug:869667) * Fix installation of packages containing skipped hardlinks (RhBug:864622) * Fix --setperms regression introduced in rpm 4.10.0 (RhBug:881835) * Fix locale dependent behavior in rpm2cpio.sh (RhBug:878363) * Add --undefine cli switch for undefining macros (related to RhBug:876308) * Fix warnings when building with gcc >= 4.7 * Permit key imports on transactions where signature checking is disabled, regression of sorts introduced in 4.10.0 (RhBug:856225) * Fix RPMPROB_FILTER_FORCERELOCATE aka --badreloc, regression introduced in 4.9.0 (RhBug:828784) * Verify files from non-installed packages again, regression introduced in 4.9.0 (RhBug:826589) * Fix large (> 4GB) package support, regression introduced in 4.9.0 (RhBug:844936) * Only create the first instance of a file shared between multiple packages on install (speedup + improved verification timestamp behavior) * Report config and missinok flags too in deptype format extension * Fix relative path handling in --whatprovides query * Add --noclean and --nocheck options to rpmbuild (RhBug:756531) * Permit non-existent %ghost directories to be packaged (RhBug:839656) * Dont silence patch by default (RhBug:678000, RhBug:773503) * Accept "owner" as an alias to "user" %verify attribute (RhBug:838657) OBS-URL: https://build.opensuse.org/request/show/147491 OBS-URL: https://build.opensuse.org/package/show/Base:System/rpm?expand=0&rev=245 --- fdopen_strncat.diff | 22 -------- findksyms.diff | 44 +++++++-------- missingok.diff | 30 ---------- obsoletesdeptag.diff | 11 ---- powerpc-fix-platform.diff | 11 ---- python3-rpm.changes | 5 ++ python3-rpm.spec | 4 +- rpm-4.10.0.tar.bz2 | 3 - rpm-4.10.2.tar.bz2 | 3 + rpm-beecrypt.diff | 109 ++++++++++++++++++------------------- rpm-python.changes | 5 ++ rpm-python.spec | 4 +- rpm-shorten-changelog.diff | 16 +++--- rpm.changes | 38 +++++++++++++ rpm.spec | 13 ++--- rpmrc.diff | 35 ++++++------ weakdeps.diff | 90 +++++++++++++++--------------- 17 files changed, 204 insertions(+), 239 deletions(-) delete mode 100644 fdopen_strncat.diff delete mode 100644 missingok.diff delete mode 100644 obsoletesdeptag.diff delete mode 100644 powerpc-fix-platform.diff delete mode 100644 rpm-4.10.0.tar.bz2 create mode 100644 rpm-4.10.2.tar.bz2 diff --git a/fdopen_strncat.diff b/fdopen_strncat.diff deleted file mode 100644 index c0fbe40..0000000 --- a/fdopen_strncat.diff +++ /dev/null @@ -1,22 +0,0 @@ ---- ./rpmio/rpmio.c.orig 2012-08-30 16:47:57.000000000 +0000 -+++ ./rpmio/rpmio.c 2012-08-30 16:54:01.000000000 +0000 -@@ -1370,7 +1370,7 @@ static void cvtfmode (const char *m, - - FD_t Fdopen(FD_t ofd, const char *fmode) - { -- char stdio[20], other[20], zstdio[20]; -+ char stdio[20], other[20], zstdio[40]; - const char *end = NULL; - FDIO_t iof = NULL; - FD_t fd = ofd; -@@ -1385,8 +1385,8 @@ fprintf(stderr, "*** Fdopen(%p,%s) %s\n" - if (stdio[0] == '\0') - return NULL; - zstdio[0] = '\0'; -- strncat(zstdio, stdio, sizeof(zstdio) - strlen(zstdio)); -- strncat(zstdio, other, sizeof(zstdio) - strlen(zstdio)); -+ strncat(zstdio, stdio, sizeof(zstdio) - strlen(zstdio) - 1); -+ strncat(zstdio, other, sizeof(zstdio) - strlen(zstdio) - 1); - - if (end == NULL && other[0] == '\0') - return fd; diff --git a/findksyms.diff b/findksyms.diff index 786cc91..e5a9e2b 100644 --- a/findksyms.diff +++ b/findksyms.diff @@ -1,25 +1,7 @@ SUSE specific kernel provides/requires scripts ---- ./scripts/Makefile.am.orig 2011-05-11 14:31:45.000000000 +0000 -+++ ./scripts/Makefile.am 2011-05-11 14:46:38.000000000 +0000 -@@ -16,6 +16,7 @@ EXTRA_DIST = \ - rpmdb_loadcvt rpm.daily rpm.log rpm2cpio.sh \ - tcl.req tgpg vpkg-provides.sh \ - find-requires.php find-provides.php \ -+ find-requires.ksyms find-provides.ksyms \ - find-php-provides find-php-requires \ - mono-find-requires mono-find-provides \ - ocaml-find-requires.sh ocaml-find-provides.sh \ -@@ -32,6 +33,7 @@ rpmconfig_SCRIPTS = \ - check-buildroot check-rpaths check-rpaths-worker \ - find-lang.sh \ - perl.prov perl.req perldeps.pl pythondeps.sh osgideps.pl \ -+ find-requires.ksyms find-provides.ksyms \ - mono-find-requires mono-find-provides \ - pkgconfigdeps.sh libtooldeps.sh \ - ocaml-find-requires.sh ocaml-find-provides.sh \ ---- ./scripts/find-provides.ksyms.orig 2011-05-11 14:46:38.000000000 +0000 -+++ ./scripts/find-provides.ksyms 2011-05-11 14:46:38.000000000 +0000 +--- scripts/find-provides.ksyms ++++ scripts/find-provides.ksyms @@ -0,0 +1,41 @@ +#! /bin/sh + @@ -62,8 +44,8 @@ SUSE specific kernel provides/requires scripts + | sed -r -ne "s/^0*([0-9a-f]+) A __crc_(.+)/ksym($flavor:\\2) = \\1/p" +done \ +| sort -u ---- ./scripts/find-requires.ksyms.orig 2011-05-11 14:46:38.000000000 +0000 -+++ ./scripts/find-requires.ksyms 2011-05-11 14:46:38.000000000 +0000 +--- scripts/find-requires.ksyms ++++ scripts/find-requires.ksyms @@ -0,0 +1,57 @@ +#! /bin/bash + @@ -122,3 +104,21 @@ SUSE specific kernel provides/requires scripts + { print "ksym(" flavor ":" arr[3] ") = " arr[2] } + ' +fi +--- scripts/Makefile.am ++++ scripts/Makefile.am +@@ -15,6 +15,7 @@ + rpmdb_loadcvt rpm.daily rpm.log rpm.supp rpm2cpio.sh \ + tcl.req tgpg vpkg-provides.sh \ + find-requires.php find-provides.php \ ++ find-requires.ksyms find-provides.ksyms \ + find-php-provides find-php-requires \ + mono-find-requires mono-find-provides \ + ocaml-find-requires.sh ocaml-find-provides.sh \ +@@ -30,6 +31,7 @@ + check-buildroot check-rpaths check-rpaths-worker \ + find-lang.sh \ + perl.prov perl.req perldeps.pl pythondeps.sh osgideps.pl \ ++ find-requires.ksyms find-provides.ksyms \ + mono-find-requires mono-find-provides \ + pkgconfigdeps.sh libtooldeps.sh \ + ocaml-find-requires.sh ocaml-find-provides.sh \ diff --git a/missingok.diff b/missingok.diff deleted file mode 100644 index 7647696..0000000 --- a/missingok.diff +++ /dev/null @@ -1,30 +0,0 @@ -support missingok dependency bit - ---- ./lib/depends.c.orig 2011-02-15 13:10:59.000000000 +0000 -+++ ./lib/depends.c 2011-05-10 16:06:39.000000000 +0000 -@@ -448,8 +448,13 @@ retry: - } - - unsatisfied: -- rc = 1; /* dependency is unsatisfied */ -- rpmdsNotify(dep, NULL, rc); -+ if (rpmdsFlags(dep) & RPMSENSE_MISSINGOK) { -+ rc = 0; /* dependency is unsatisfied, but just a hint. */ -+ rpmdsNotify(dep, _("(hint skipped)"), rc); -+ } else { -+ rc = 1; /* dependency is unsatisfied */ -+ rpmdsNotify(dep, NULL, rc); -+ } - - exit: - return rc; ---- ./lib/rpmds.h.orig 2011-05-10 16:09:22.000000000 +0000 -+++ ./lib/rpmds.h 2011-05-10 16:08:04.000000000 +0000 -@@ -68,6 +68,7 @@ typedef rpmFlags rpmsenseFlags; - RPMSENSE_SCRIPT_POSTUN | \ - RPMSENSE_SCRIPT_VERIFY | \ - RPMSENSE_FIND_REQUIRES | \ -+ RPMSENSE_MISSINGOK | \ - RPMSENSE_RPMLIB | \ - RPMSENSE_KEYRING | \ - RPMSENSE_PRETRANS | \ diff --git a/obsoletesdeptag.diff b/obsoletesdeptag.diff deleted file mode 100644 index b8911b2..0000000 --- a/obsoletesdeptag.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- ./lib/depends.c.orig 2012-08-28 13:38:20.000000000 +0000 -+++ ./lib/depends.c 2012-08-28 13:38:31.000000000 +0000 -@@ -455,7 +455,7 @@ static int rpmdbProvides(rpmts ts, depCa - mi = rpmtsPrunedIterator(ts, dbtag, Name, prune); - while ((h = rpmdbNextIterator(mi)) != NULL) { - int match; -- if (dbtag == RPMDBI_OBSOLETENAME) { -+ if (deptag == RPMDBI_OBSOLETENAME) { - match = rpmdsNVRMatchesDep(h, dep, _rpmds_nopromote); - } else { - match = rpmdsMatchesDep(h, rpmdbGetIteratorFileNum(mi), dep, diff --git a/powerpc-fix-platform.diff b/powerpc-fix-platform.diff deleted file mode 100644 index 331648f..0000000 --- a/powerpc-fix-platform.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- lib/rpmrc.c 2012/10/16 16:37:34 1.1 -+++ lib/rpmrc.c 2012/10/16 16:38:10 -@@ -1091,7 +1091,7 @@ - # if defined(__linux__) && defined(__powerpc__) - { - int powerlvl; -- if (sscanf(rpmat.platform, "power%d", &powerlvl) == 1 && powerlvl > 6) -+ if (!rstreq(un.machine, "ppc") && sscanf(rpmat.platform, "power%d", &powerlvl) == 1 && powerlvl > 6) - strcpy(un.machine, "ppc64p7"); - } - # endif /* ppc64*-linux */ diff --git a/python3-rpm.changes b/python3-rpm.changes index fbd935a..82c8266 100644 --- a/python3-rpm.changes +++ b/python3-rpm.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Jan 2 14:25:09 UTC 2013 - dmueller@suse.com + +- Update to 4.10.2 + ------------------------------------------------------------------- Sun Nov 4 08:54:25 UTC 2012 - coolo@suse.com diff --git a/python3-rpm.spec b/python3-rpm.spec index 389853f..b1f6d3b 100644 --- a/python3-rpm.spec +++ b/python3-rpm.spec @@ -1,7 +1,7 @@ # # spec file for package python3-rpm # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: python3-rpm -Version: 4.10.0 +Version: 4.10.2 Release: 0 Summary: Python Bindings for Manipulating RPM Packages License: GPL-2.0+ diff --git a/rpm-4.10.0.tar.bz2 b/rpm-4.10.0.tar.bz2 deleted file mode 100644 index bc666d7..0000000 --- a/rpm-4.10.0.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0e2e237235b64c07ee4a4152e4eb77aad4eb559737eac9b6713c5e1bcabfe4a9 -size 3530378 diff --git a/rpm-4.10.2.tar.bz2 b/rpm-4.10.2.tar.bz2 new file mode 100644 index 0000000..f67d7a2 --- /dev/null +++ b/rpm-4.10.2.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9278a2b40f08bae5a9592b9b42f11f88b2e880cc34e57113d53461ed7de6e7b +size 3545536 diff --git a/rpm-beecrypt.diff b/rpm-beecrypt.diff index 2c36a4b..6609619 100644 --- a/rpm-beecrypt.diff +++ b/rpm-beecrypt.diff @@ -1,5 +1,5 @@ ---- ./config.h.in.orig 2012-05-22 10:55:46.000000000 +0000 -+++ ./config.h.in 2012-05-31 16:41:07.000000000 +0000 +--- config.h.in ++++ config.h.in @@ -13,6 +13,9 @@ /* Define to 1 if you have the `basename' function. */ #undef HAVE_BASENAME @@ -10,7 +10,7 @@ /* Define to 1 if you have the header file. */ #undef HAVE_BZLIB_H -@@ -206,6 +209,10 @@ +@@ -203,6 +206,10 @@ */ #undef LT_OBJDIR @@ -21,7 +21,7 @@ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #undef MAJOR_IN_MKDEV -@@ -290,6 +297,9 @@ +@@ -287,6 +294,9 @@ /* Build with acl support? */ #undef WITH_ACL @@ -31,9 +31,9 @@ /* Build with capability support? */ #undef WITH_CAP ---- ./configure.ac.orig 2012-05-22 10:55:31.000000000 +0000 -+++ ./configure.ac 2012-05-31 16:37:32.000000000 +0000 -@@ -239,12 +239,43 @@ AC_CHECK_HEADERS([dwarf.h], [ +--- configure.ac ++++ configure.ac +@@ -239,12 +239,43 @@ AM_CONDITIONAL(LIBDWARF,[test "$WITH_LIBDWARF" = yes]) #================= @@ -77,7 +77,7 @@ AC_CHECK_HEADERS([nspr.h nss.h sechash.h], [], [ AC_MSG_ERROR([missing required NSPR / NSS header]) ]) -@@ -253,6 +284,7 @@ AC_CHECK_LIB(nss3, NSS_NoDB_Init, [ +@@ -257,6 +288,7 @@ ], [ AC_MSG_ERROR([missing required NSS library 'nss3']) ]) @@ -85,53 +85,8 @@ AC_SUBST(WITH_NSS_INCLUDE) AC_SUBST(WITH_NSS_LIB) ---- ./rpmio/Makefile.am.orig 2012-03-20 08:07:25.000000000 +0000 -+++ ./rpmio/Makefile.am 2012-05-31 16:39:58.000000000 +0000 -@@ -2,6 +2,7 @@ - - AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I$(top_builddir)/include/ - AM_CPPFLAGS += @WITH_NSS_INCLUDE@ -+AM_CPPFLAGS += @WITH_BEECRYPT_INCLUDE@ - AM_CPPFLAGS += @WITH_POPT_INCLUDE@ - AM_CPPFLAGS += -I$(top_srcdir)/misc - AM_CPPFLAGS += -DRPMCONFIGDIR="\"@RPMCONFIGDIR@\"" -@@ -17,12 +18,18 @@ librpmio_la_SOURCES = \ - rpmstring.c rpmfileutil.c \ - rpmkeyring.c - -+if WITH_BEECRYPT -+librpmio_la_SOURCES += digest_beecrypt.c -+else - librpmio_la_SOURCES += digest_nss.c -+endif -+ - - librpmio_la_LDFLAGS = -version-info 3:0:0 - librpmio_la_LIBADD = \ - ../misc/libmisc.la \ - @WITH_NSS_LIB@ \ -+ @WITH_BEECRYPT_LIB@ \ - @WITH_BZ2_LIB@ \ - @WITH_ZLIB_LIB@ \ - @WITH_LIBELF_LIB@ \ -@@ -30,6 +37,15 @@ librpmio_la_LIBADD = \ - @WITH_LZMA_LIB@ \ - -lpthread - -+if WITH_INTERNAL_BEECRYPT -+librpmio_la_LIBADD += $(libbeecrypt_la) -+ -+libbeecrypt_la = $(top_builddir)/beecrypt/libbeecrypt_nolibdir.la -+ -+$(top_builddir)/beecrypt/libbeecrypt_nolibdir.la: $(top_builddir)/beecrypt/libbeecrypt.la -+ sed -e 's/libdir=.*/libdir=/' < $(top_builddir)/beecrypt/libbeecrypt.la > $(top_builddir)/beecrypt/libbeecrypt_nolibdir.la -+endif -+ - if WITH_LUA - AM_CPPFLAGS += -I$(top_srcdir)/luaext/ - AM_CPPFLAGS += @LUA_CFLAGS@ ---- ./rpmio/digest_beecrypt.c.orig 2012-05-31 16:42:01.000000000 +0000 -+++ ./rpmio/digest_beecrypt.c 2012-05-31 17:33:28.000000000 +0000 +--- rpmio/digest_beecrypt.c ++++ rpmio/digest_beecrypt.c @@ -0,0 +1,526 @@ +#include "system.h" + @@ -659,3 +614,47 @@ + } + return sa; +} +--- rpmio/Makefile.am ++++ rpmio/Makefile.am +@@ -2,6 +2,7 @@ + + AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I$(top_builddir)/include/ + AM_CPPFLAGS += @WITH_NSS_INCLUDE@ ++AM_CPPFLAGS += @WITH_BEECRYPT_INCLUDE@ + AM_CPPFLAGS += @WITH_POPT_INCLUDE@ + AM_CPPFLAGS += -I$(top_srcdir)/misc + AM_CPPFLAGS += -DRPMCONFIGDIR="\"@RPMCONFIGDIR@\"" +@@ -17,12 +18,17 @@ + rpmstring.c rpmfileutil.c \ + rpmkeyring.c + ++if WITH_BEECRYPT ++librpmio_la_SOURCES += digest_beecrypt.c ++else + librpmio_la_SOURCES += digest_nss.c ++endif + + librpmio_la_LDFLAGS = -version-info 3:2:0 + librpmio_la_LIBADD = \ + ../misc/libmisc.la \ + @WITH_NSS_LIB@ \ ++ @WITH_BEECRYPT_LIB@ \ + @WITH_BZ2_LIB@ \ + @WITH_ZLIB_LIB@ \ + @WITH_LIBELF_LIB@ \ +@@ -30,6 +36,15 @@ + @WITH_LZMA_LIB@ \ + -lpthread + ++if WITH_INTERNAL_BEECRYPT ++librpmio_la_LIBADD += $(libbeecrypt_la) ++ ++libbeecrypt_la = $(top_builddir)/beecrypt/libbeecrypt_nolibdir.la ++ ++$(top_builddir)/beecrypt/libbeecrypt_nolibdir.la: $(top_builddir)/beecrypt/libbeecrypt.la ++ sed -e 's/libdir=.*/libdir=/' < $(top_builddir)/beecrypt/libbeecrypt.la > $(top_builddir)/beecrypt/libbeecrypt_nolibdir.la ++endif ++ + if WITH_LUA + AM_CPPFLAGS += -I$(top_srcdir)/luaext/ + AM_CPPFLAGS += @LUA_CFLAGS@ diff --git a/rpm-python.changes b/rpm-python.changes index 206e887..c498e7f 100644 --- a/rpm-python.changes +++ b/rpm-python.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Jan 2 14:25:20 UTC 2013 - dmueller@suse.com + +- Update to 4.10.2 + ------------------------------------------------------------------- Mon Apr 23 11:16:26 CEST 2012 - mls@suse.de diff --git a/rpm-python.spec b/rpm-python.spec index f52f34b..8078c1a 100644 --- a/rpm-python.spec +++ b/rpm-python.spec @@ -1,7 +1,7 @@ # # spec file for package rpm-python # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: rpm-python -Version: 4.10.0 +Version: 4.10.2 Release: 0 #!BuildIgnore: rpmlint-Factory Summary: Python Bindings for Manipulating RPM Packages diff --git a/rpm-shorten-changelog.diff b/rpm-shorten-changelog.diff index 7090250..01d52fa 100644 --- a/rpm-shorten-changelog.diff +++ b/rpm-shorten-changelog.diff @@ -1,6 +1,6 @@ ---- ./build/pack.c.orig 2011-02-15 13:03:56.000000000 +0000 -+++ ./build/pack.c 2011-05-11 15:35:07.000000000 +0000 -@@ -671,6 +671,63 @@ static rpmRC checkPackages(char *pkgchec +--- build/pack.c ++++ build/pack.c +@@ -573,6 +573,63 @@ return RPMRC_OK; } @@ -64,7 +64,7 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating) { struct cpioSourceArchive_s csabuf; -@@ -680,6 +737,7 @@ rpmRC packageBinaries(rpmSpec spec, cons +@@ -582,6 +639,7 @@ Package pkg; char *pkglist = NULL; @@ -72,10 +72,10 @@ for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) { char *fn; ---- ./build/parseChangelog.c.orig 2010-12-03 12:11:57.000000000 +0000 -+++ ./build/parseChangelog.c 2011-05-11 15:33:22.000000000 +0000 -@@ -168,6 +168,11 @@ static rpmRC addChangelog(Header h, ARGV - return RPMRC_FAIL; +--- build/parseChangelog.c ++++ build/parseChangelog.c +@@ -168,6 +168,11 @@ + goto exit; } + /* workaround old suse oddity */ diff --git a/rpm.changes b/rpm.changes index 2ed053d..235d1cb 100644 --- a/rpm.changes +++ b/rpm.changes @@ -1,3 +1,41 @@ +------------------------------------------------------------------- +Wed Jan 2 13:46:17 UTC 2013 - dmueller@suse.com + +- update to 4.10.2 (bnc#796375): + * Fix missing error code on unparseable signature in packages, + regression introduced in rpm 4.10.0. This could result in packages + with malformed signature falling through signature checking. + * Fix missing error code on --import on bogus key file (RhBug:869667) + * Fix installation of packages containing skipped hardlinks (RhBug:864622) + * Fix --setperms regression introduced in rpm 4.10.0 (RhBug:881835) + * Fix locale dependent behavior in rpm2cpio.sh (RhBug:878363) + * Add --undefine cli switch for undefining macros (related to RhBug:876308) + * Fix warnings when building with gcc >= 4.7 + * Permit key imports on transactions where signature checking is + disabled, regression of sorts introduced in 4.10.0 (RhBug:856225) + * Fix RPMPROB_FILTER_FORCERELOCATE aka --badreloc, regression introduced in + 4.9.0 (RhBug:828784) + * Verify files from non-installed packages again, regression introduced + in 4.9.0 (RhBug:826589) + * Fix large (> 4GB) package support, regression introduced in + 4.9.0 (RhBug:844936) + * Only create the first instance of a file shared between multiple + packages on install (speedup + improved verification timestamp behavior) + * Report config and missinok flags too in deptype format extension + * Fix relative path handling in --whatprovides query + * Add --noclean and --nocheck options to rpmbuild (RhBug:756531) + * Permit non-existent %ghost directories to be packaged (RhBug:839656) + * Dont silence patch by default (RhBug:678000, RhBug:773503) + * Accept "owner" as an alias to "user" %verify attribute (RhBug:838657) + * Add "power64" arch macro for all supported PowerPC 64 processors (RhBug:818320) + * Fix bogus "unclosed %if" error when %include is used in conditionals + * Report starting line for unclosed %if errors in spec + * Always print out package dependencies on build + * Restore pre-4.10.0 fdFree() behavior, ie return the fd itself while + references exist, returning NULL introduced fd leak regressions. +* Remove up-streamed patches: + - obsoletesdeptag.diff, fdopen_strncat.diff, powerpc-fix-platform.diff, missingok.diff + ------------------------------------------------------------------- Tue Nov 20 18:47:06 UTC 2012 - dimstar@opensuse.org diff --git a/rpm.spec b/rpm.spec index 48507fe..9438722 100644 --- a/rpm.spec +++ b/rpm.spec @@ -1,7 +1,7 @@ # # spec file for package rpm # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -47,7 +47,7 @@ PreReq: %fillup_prereq Summary: The RPM Package Manager License: GPL-2.0+ Group: System/Packages -Version: 4.10.0 +Version: 4.10.2 Release: 0 Source: rpm-%{version}.tar.bz2 Source1: RPM-HOWTO.tar.bz2 @@ -66,7 +66,7 @@ Patch2: db.diff Patch10: rpm-beecrypt.diff Patch11: debugedit.diff Patch12: localetag.diff -Patch13: missingok.diff +Patch13: fix-fd-leak.diff Patch14: nameversioncompare.diff Patch15: dbfsync.diff Patch16: dbrointerruptable.diff @@ -133,10 +133,6 @@ Patch76: python3-abi-kind.diff Patch77: langnoc.diff Patch78: headerchk2.diff Patch79: helperenv.diff -Patch80: obsoletesdeptag.diff -Patch81: fdopen_strncat.diff -Patch82: fix-fd-leak.diff -Patch83: powerpc-fix-platform.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build # # avoid bootstrapping problem @@ -223,7 +219,6 @@ rm -f rpmdb/db.h %patch -P 50 -P 51 -P 52 -P 53 -P 54 -P 55 -P 56 -P 57 -P 58 -P 59 %patch -P 60 -P 61 -P 62 -P 63 -P 64 -P 65 -P 66 -P 67 -P 68 -P 69 %patch -P 70 -P 71 -P 72 -P 73 -P 74 -P 75 -P 76 -P 77 -P 78 -P 79 -%patch -P 80 -P 81 -P 82 -P 83 #chmod 755 scripts/find-supplements{,.ksyms} #chmod 755 scripts/find-provides.ksyms scripts/find-requires.ksyms #chmod 755 scripts/firmware.prov @@ -357,7 +352,7 @@ echo -n armv5tel-suse-linux> %{buildroot}/etc/rpm/platform %post %{fillup_only -an services} -test -f var/lib/rpm/Packages || rpm --initdb +test -f var/lib/rpm/Packages || rpmdb --initdb if test -s var/lib/rpm/packages.rpm ; then echo "converting rpm-3 database to rpm-4 format..." usr/lib/rpm/convertdb1 var/lib/rpm/packages.rpm diff --git a/rpmrc.diff b/rpmrc.diff index 50bdcb2..d23a161 100644 --- a/rpmrc.diff +++ b/rpmrc.diff @@ -1,5 +1,5 @@ ---- ./rpmrc.in.orig 2012-04-20 06:46:30.000000000 +0000 -+++ ./rpmrc.in 2012-06-01 12:46:22.000000000 +0000 +--- rpmrc.in ++++ rpmrc.in @@ -12,16 +12,16 @@ # "fat" binary with both archs, for Darwin optflags: fat -O2 -g -arch i386 -arch ppc @@ -26,7 +26,7 @@ optflags: amd64 -O2 -g optflags: ia32e -O2 -g -@@ -41,16 +41,17 @@ optflags: sparc64v -O2 -g -m64 -mtune=ni +@@ -41,16 +41,17 @@ optflags: m68k -O2 -g -fomit-frame-pointer @@ -52,7 +52,7 @@ optflags: hppa1.0 -O2 -g -mpa-risc-1-0 optflags: hppa1.1 -O2 -g -mpa-risc-1-0 optflags: hppa1.2 -O2 -g -mpa-risc-1-0 -@@ -67,6 +68,7 @@ optflags: armv5tel -O2 -g -march=armv5te +@@ -67,6 +68,7 @@ optflags: armv5tejl -O2 -g -march=armv5te optflags: armv6l -O2 -g -march=armv6 optflags: armv7l -O2 -g -march=armv7 @@ -60,7 +60,7 @@ optflags: atarist -O2 -g -fomit-frame-pointer optflags: atariste -O2 -g -fomit-frame-pointer -@@ -76,8 +78,8 @@ optflags: atariclone -O2 -g -fomit-frame +@@ -76,8 +78,8 @@ optflags: milan -O2 -g -fomit-frame-pointer optflags: hades -O2 -g -fomit-frame-pointer @@ -71,7 +71,7 @@ optflags: sh3 -O2 -g optflags: sh4 -O2 -g -mieee -@@ -141,6 +143,7 @@ arch_canon: armv5tel: armv5tel 12 +@@ -142,6 +144,7 @@ arch_canon: armv5tejl: armv5tejl 12 arch_canon: armv6l: armv6l 12 arch_canon: armv7l: armv7l 12 @@ -79,7 +79,7 @@ arch_canon: m68kmint: m68kmint 13 arch_canon: atarist: m68kmint 13 -@@ -202,17 +205,17 @@ os_canon: MacOSX: macosx 21 +@@ -203,17 +206,17 @@ ############################################################# # For a given uname().machine, the default build arch @@ -105,7 +105,7 @@ buildarchtranslate: i486: i386 buildarchtranslate: i386: i386 -@@ -242,6 +245,7 @@ buildarchtranslate: ppcpseries: ppc +@@ -243,6 +246,7 @@ buildarchtranslate: ppc64iseries: ppc64 buildarchtranslate: ppc64pseries: ppc64 buildarchtranslate: ppc64p7: ppc64 @@ -113,7 +113,7 @@ buildarchtranslate: armv3l: armv3l buildarchtranslate: armv4b: armv4b -@@ -251,6 +255,7 @@ buildarchtranslate: armv5tel: armv5tel +@@ -252,6 +256,7 @@ buildarchtranslate: armv5tejl: armv5tejl buildarchtranslate: armv6l: armv6l buildarchtranslate: armv7l: armv7l @@ -121,7 +121,7 @@ buildarchtranslate: atarist: m68kmint buildarchtranslate: atariste: m68kmint -@@ -273,6 +278,15 @@ buildarchtranslate: sh3: sh3 +@@ -274,6 +279,15 @@ buildarchtranslate: sh4: sh4 buildarchtranslate: sh4a: sh4 @@ -137,7 +137,7 @@ ############################################################# # Architecture compatibility -@@ -329,14 +343,19 @@ arch_compat: mipsel: noarch +@@ -330,14 +344,19 @@ arch_compat: hppa2.0: hppa1.2 arch_compat: hppa1.2: hppa1.1 arch_compat: hppa1.1: hppa1.0 @@ -159,19 +159,16 @@ arch_compat: armv4tl: armv4l arch_compat: armv4l: armv3l arch_compat: armv3l: noarch -@@ -353,9 +372,9 @@ arch_compat: i370: noarch +@@ -354,7 +373,7 @@ arch_compat: s390: noarch arch_compat: s390x: s390 noarch -arch_compat: ia64: noarch +arch_compat: ia64: i686 noarch --arch_compat: x86_64: amd64 athlon noarch -+arch_compat: x86_64: amd64 em64t athlon noarch - arch_compat: amd64: x86_64 athlon noarch - arch_compat: ia32e: x86_64 athlon noarch - -@@ -438,6 +457,7 @@ buildarch_compat: mips: noarch + arch_compat: x86_64: amd64 em64t athlon noarch + arch_compat: amd64: x86_64 em64t athlon noarch +@@ -439,6 +458,7 @@ buildarch_compat: mipsel: noarch buildarch_compat: armv4b: noarch @@ -179,7 +176,7 @@ buildarch_compat: armv7l: armv6l buildarch_compat: armv6l: armv5tejl buildarch_compat: armv5tejl: armv5tel -@@ -449,7 +469,8 @@ buildarch_compat: armv3l: noarch +@@ -450,7 +470,8 @@ buildarch_compat: hppa2.0: hppa1.2 buildarch_compat: hppa1.2: hppa1.1 buildarch_compat: hppa1.1: hppa1.0 diff --git a/weakdeps.diff b/weakdeps.diff index c912f95..b1b8002 100644 --- a/weakdeps.diff +++ b/weakdeps.diff @@ -14,9 +14,9 @@ B) use RPMSENSE_STRONG to support a "strong" version, "Recommends" Needs extcond.diff for query operations. ---- ./build/parsePreamble.c.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./build/parsePreamble.c 2012-08-28 13:25:59.000000000 +0000 -@@ -342,6 +342,8 @@ static struct tokenBits_s const installS +--- build/parsePreamble.c ++++ build/parsePreamble.c +@@ -342,6 +342,8 @@ { "verify", RPMSENSE_SCRIPT_VERIFY }, { "pretrans", RPMSENSE_PRETRANS }, { "posttrans", RPMSENSE_POSTTRANS }, @@ -25,7 +25,7 @@ Needs extcond.diff for query operations. { NULL, 0 } }; -@@ -816,6 +818,18 @@ static rpmRC handlePreambleTag(rpmSpec s +@@ -816,6 +818,18 @@ if (parseRCPOT(spec, pkg, field, tag, 0, tagflags)) goto exit; break; @@ -44,7 +44,7 @@ Needs extcond.diff for query operations. case RPMTAG_EXCLUDEARCH: case RPMTAG_EXCLUSIVEARCH: case RPMTAG_EXCLUDEOS: -@@ -924,6 +938,14 @@ static struct PreambleRec_s const preamb +@@ -924,6 +938,14 @@ {RPMTAG_BUGURL, 0, 0, LEN_AND_STR("bugurl")}, {RPMTAG_COLLECTIONS, 0, 0, LEN_AND_STR("collections")}, {RPMTAG_ORDERFLAGS, 2, 0, LEN_AND_STR("orderwithrequires")}, @@ -59,9 +59,9 @@ Needs extcond.diff for query operations. {0, 0, 0, 0} }; ---- ./build/parseReqs.c.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./build/parseReqs.c 2012-08-28 13:25:59.000000000 +0000 -@@ -95,6 +95,20 @@ rpmRC parseRCPOT(rpmSpec spec, Package p +--- build/parseReqs.c ++++ build/parseReqs.c +@@ -95,6 +95,20 @@ nametag = RPMTAG_CONFLICTNAME; h = spec->buildRestrictions; break; @@ -82,9 +82,9 @@ Needs extcond.diff for query operations. } for (r = field; *r != '\0'; r = re) { ---- ./build/reqprov.c.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./build/reqprov.c 2012-08-28 13:25:59.000000000 +0000 -@@ -75,6 +75,16 @@ int addReqProv(Header h, rpmTagVal tagN, +--- build/reqprov.c ++++ build/reqprov.c +@@ -75,6 +75,16 @@ indextag = RPMTAG_TRIGGERINDEX; extra = Flags & RPMSENSE_TRIGGER; break; @@ -101,9 +101,9 @@ Needs extcond.diff for query operations. case RPMTAG_REQUIRENAME: default: tagN = RPMTAG_REQUIRENAME; ---- ./build/rpmfc.c.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./build/rpmfc.c 2012-08-28 13:25:59.000000000 +0000 -@@ -1084,6 +1084,12 @@ static struct DepMsg_s depMsgs[] = { +--- build/rpmfc.c ++++ build/rpmfc.c +@@ -1084,6 +1084,12 @@ { "Obsoletes", { "%{?__find_obsoletes}", NULL, NULL, NULL }, RPMTAG_OBSOLETENAME, RPMTAG_OBSOLETEVERSION, RPMTAG_OBSOLETEFLAGS, 0, -1 }, @@ -116,7 +116,7 @@ Needs extcond.diff for query operations. { NULL, { NULL, NULL, NULL, NULL }, 0, 0, 0, 0, 0 } }; -@@ -1160,6 +1166,14 @@ static rpmRC rpmfcGenerateDependsHelper( +@@ -1160,6 +1166,14 @@ continue; tagflags = RPMSENSE_FIND_REQUIRES; break; @@ -131,9 +131,9 @@ Needs extcond.diff for query operations. default: continue; break; ---- ./lib/formats.c.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./lib/formats.c 2012-08-28 13:27:31.000000000 +0000 -@@ -482,6 +482,19 @@ static char * depflagsFormat(rpmtd td) +--- lib/formats.c ++++ lib/formats.c +@@ -486,6 +486,19 @@ return val; } @@ -153,7 +153,7 @@ Needs extcond.diff for query operations. /** * Return tag container array size. * @param td tag data container -@@ -587,6 +600,7 @@ static const struct headerFormatFunc_s r +@@ -591,6 +604,7 @@ { RPMTD_FORMAT_VFLAGS, "vflags", vflagsFormat }, { RPMTD_FORMAT_EXPAND, "expand", expandFormat }, { RPMTD_FORMAT_FSTATUS, "fstatus", fstatusFormat }, @@ -161,9 +161,9 @@ Needs extcond.diff for query operations. { -1, NULL, NULL } }; ---- ./lib/rpmds.c.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./lib/rpmds.c 2012-08-28 13:25:59.000000000 +0000 -@@ -69,6 +69,10 @@ static int dsType(rpmTagVal tag, +--- lib/rpmds.c ++++ lib/rpmds.c +@@ -69,6 +69,10 @@ t = "Trigger"; evr = RPMTAG_TRIGGERVERSION; f = RPMTAG_TRIGGERFLAGS; @@ -174,9 +174,9 @@ Needs extcond.diff for query operations. } else { rc = 1; } ---- ./lib/rpmds.h.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./lib/rpmds.h 2012-08-28 13:25:59.000000000 +0000 -@@ -48,7 +48,7 @@ enum rpmsenseFlags_e { +--- lib/rpmds.h ++++ lib/rpmds.h +@@ -48,7 +48,7 @@ RPMSENSE_RPMLIB = (1 << 24), /*!< rpmlib(feature) dependency. */ RPMSENSE_TRIGGERPREIN = (1 << 25), /*!< %triggerprein dependency. */ RPMSENSE_KEYRING = (1 << 26), @@ -185,17 +185,17 @@ Needs extcond.diff for query operations. RPMSENSE_CONFIG = (1 << 28) }; -@@ -69,6 +69,7 @@ typedef rpmFlags rpmsenseFlags; - RPMSENSE_SCRIPT_VERIFY | \ +@@ -70,6 +70,7 @@ RPMSENSE_FIND_REQUIRES | \ - RPMSENSE_MISSINGOK | \ -+ RPMSENSE_STRONG | \ RPMSENSE_RPMLIB | \ RPMSENSE_KEYRING | \ ++ RPMSENSE_STRONG | \ RPMSENSE_PRETRANS | \ ---- ./lib/rpmtag.h.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./lib/rpmtag.h 2012-08-28 13:25:59.000000000 +0000 -@@ -217,14 +217,14 @@ typedef enum rpmTag_e { + RPMSENSE_POSTTRANS | \ + RPMSENSE_PREREQ | \ +--- lib/rpmtag.h ++++ lib/rpmtag.h +@@ -217,14 +217,14 @@ RPMTAG_PRETRANSPROG = 1153, /* s[] */ RPMTAG_POSTTRANSPROG = 1154, /* s[] */ RPMTAG_DISTTAG = 1155, /* s */ @@ -218,9 +218,9 @@ Needs extcond.diff for query operations. RPMTAG_PRIORITY = 1162, /* i[] extension placeholder (unimplemented) */ RPMTAG_CVSID = 1163, /* s (unimplemented) */ #define RPMTAG_SVNID RPMTAG_CVSID /* s (unimplemented) */ ---- ./lib/rpmtd.h.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./lib/rpmtd.h 2012-08-28 13:25:59.000000000 +0000 -@@ -228,6 +228,7 @@ typedef enum rpmtdFormats_e { +--- lib/rpmtd.h ++++ lib/rpmtd.h +@@ -228,6 +228,7 @@ RPMTD_FORMAT_VFLAGS = 17, /* file verify flags (int types) */ RPMTD_FORMAT_EXPAND = 18, /* macro expansion (string types) */ RPMTD_FORMAT_FSTATUS = 19, /* file verify status (int types) */ @@ -228,9 +228,9 @@ Needs extcond.diff for query operations. } rpmtdFormats; /** \ingroup rpmtd ---- ./python/rpmmodule.c.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./python/rpmmodule.c 2012-08-28 13:25:59.000000000 +0000 -@@ -395,6 +395,7 @@ static int initModule(PyObject *m) +--- python/rpmmodule.c ++++ python/rpmmodule.c +@@ -395,6 +395,7 @@ REGISTER_ENUM(RPMSENSE_RPMLIB); REGISTER_ENUM(RPMSENSE_TRIGGERPREIN); REGISTER_ENUM(RPMSENSE_KEYRING); @@ -238,9 +238,9 @@ Needs extcond.diff for query operations. REGISTER_ENUM(RPMSENSE_CONFIG); REGISTER_ENUM(RPMTRANS_FLAG_TEST); ---- ./rpmpopt.in.orig 2012-08-28 13:25:49.000000000 +0000 -+++ ./rpmpopt.in 2012-08-28 13:25:59.000000000 +0000 -@@ -67,6 +67,22 @@ rpm alias --requires --qf \ +--- rpmpopt.in ++++ rpmpopt.in +@@ -67,6 +67,22 @@ --POPTdesc=$"list capabilities required by package(s)" rpm alias -R --requires @@ -263,9 +263,9 @@ Needs extcond.diff for query operations. rpm alias --info --qf '\ Name : %{NAME}\n\ %|EPOCH?{Epoch : %{EPOCH}\n}|\ ---- ./tests/rpmgeneral.at.orig 2012-08-28 13:27:44.000000000 +0000 -+++ ./tests/rpmgeneral.at 2012-08-28 13:28:26.000000000 +0000 -@@ -79,6 +79,10 @@ DISTTAG +--- tests/rpmgeneral.at ++++ tests/rpmgeneral.at +@@ -79,6 +79,10 @@ DISTURL DSAHEADER E @@ -276,7 +276,7 @@ Needs extcond.diff for query operations. EPOCH EPOCHNUM EVR -@@ -219,6 +223,10 @@ SOURCE +@@ -219,6 +223,10 @@ SOURCEPACKAGE SOURCEPKGID SOURCERPM