![](https://seccdn.libravatar.org/avatar/e2145bc5cf53dda95c308a3c75e8fef3.jpg?s=120&d=mm&r=g)
Hello community, here is the log from the commit of package rpm for openSUSE:Factory checked in at 2012-09-22 09:25:18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rpm (Old) and /work/SRC/openSUSE:Factory/.rpm.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "rpm", Maintainer is "mls@suse.com" Changes: -------- rpm-python.changes: same change --- /work/SRC/openSUSE:Factory/rpm/rpm.changes 2012-07-19 17:59:31.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.rpm.new/rpm.changes 2012-09-22 09:25:20.000000000 +0200 @@ -1,0 +2,23 @@ +Mon Sep 17 10:12:03 UTC 2012 - coolo@suse.com + +- disarm the additional links for debuginfos as they break our + "debuginfo per subpackage" functionality. + +------------------------------------------------------------------- +Thu Sep 13 14:05:57 UTC 2012 - coolo@suse.com + +- add net-tools and util-linux as basic build requires + +------------------------------------------------------------------- +Tue Aug 28 15:30:47 CEST 2012 - mls@suse.de + +- update to rpm-4.10.0 + * get rid of a couple of patches + +------------------------------------------------------------------- +Wed Aug 8 10:59:14 UTC 2012 - pgajdos@suse.com + +- remove %run_suseconfig_fonts macro (openFATE#313536); new macros + using fonts-config directly exist in M17N:fonts/fontpackages + +------------------------------------------------------------------- Old: ---- buildpipe.diff debugedit-stabs-warning.diff findlang-new-help-fix.diff findlang-new-help.diff headerchk.diff instobscheck.diff no_rep_autop.diff perl-python-attr.patch python-capsule-api.diff pythonhardlink.diff rpm-4.9.1.2.tar.bz2 rpm-gcc47.patch tilde.diff New: ---- fdopen_strncat.diff obsoletesdeptag.diff rpm-4.10.0.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rpm-python.spec ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:25.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:25.000000000 +0200 @@ -17,7 +17,7 @@ Name: rpm-python -Version: 4.9.1.2 +Version: 4.10.0 Release: 0 #!BuildIgnore: rpmlint-Factory Summary: Python Bindings for Manipulating RPM Packages ++++++ rpm.spec ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:25.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:25.000000000 +0200 @@ -46,7 +46,7 @@ Summary: The RPM Package Manager License: GPL-2.0+ Group: System/Packages -Version: 4.9.1.2 +Version: 4.10.0 Release: 0 Source: rpm-%{version}.tar.bz2 Source1: RPM-HOWTO.tar.bz2 @@ -117,33 +117,23 @@ Patch62: pythondeps.diff Patch63: fontprovides.diff Patch64: rpm-gst-provides.patch -Patch65: findlang-new-help.diff -Patch66: initscriptsprov.diff -Patch67: remove-translations.diff -Patch68: no_rep_autop.diff -Patch69: headeradddb.diff -Patch70: dbprivate.diff -Patch71: nobuildcolor.diff -Patch72: fileattrs.diff -Patch73: nomagiccheck.diff -Patch74: findsupplements.diff -Patch75: assumeexec.diff -Patch76: buildpipe.diff -Patch77: mono-find-requires.diff -Patch78: debugedit-stabs-warning.diff -Patch79: headerchk.diff -Patch80: rpm-deptracking.patch -Patch81: python3-abi-kind.diff -Patch82: perl-python-attr.patch -Patch83: findlang-new-help-fix.diff -Patch84: langnoc.diff -Patch85: rpm-gcc47.patch -Patch86: headerchk2.diff -Patch87: pythonhardlink.diff -Patch88: helperenv.diff -Patch89: instobscheck.diff -Patch90: tilde.diff -Patch91: python-capsule-api.diff +Patch65: initscriptsprov.diff +Patch66: remove-translations.diff +Patch67: headeradddb.diff +Patch68: dbprivate.diff +Patch69: nobuildcolor.diff +Patch70: fileattrs.diff +Patch71: nomagiccheck.diff +Patch72: findsupplements.diff +Patch73: assumeexec.diff +Patch74: mono-find-requires.diff +Patch75: rpm-deptracking.patch +Patch76: python3-abi-kind.diff +Patch77: langnoc.diff +Patch78: headerchk2.diff +Patch79: helperenv.diff +Patch80: obsoletesdeptag.diff +Patch81: fdopen_strncat.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build # # avoid bootstrapping problem @@ -188,9 +178,11 @@ Requires: glibc-devel Requires: gzip Requires: make +Requires: net-tools Requires: patch Requires: perl-base Requires: tar +Requires: util-linux Requires: xz %description build @@ -218,8 +210,7 @@ %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 -P 84 -P 85 -P 86 -P 87 -P 88 -P 89 -%patch -P 90 -P 91 +%patch -P 80 -P 81 #chmod 755 scripts/find-supplements{,.ksyms} #chmod 755 scripts/find-provides.ksyms scripts/find-requires.ksyms #chmod 755 scripts/firmware.prov @@ -257,6 +248,7 @@ ./autogen.sh --disable-dependency-tracking --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \ --libdir=%{_libdir} --sysconfdir=/etc --localstatedir=/var --with-lua \ +--with-vendor=suse \ --with-selinux --with-internal-beecrypt \ --with-acl --with-cap --enable-shared %{?with_python: --enable-python} $BUILDTARGET ++++++ brp.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,26 +1,36 @@ ---- scripts/brp-strip -+++ scripts/brp-strip -@@ -15,6 +15,7 @@ - for f in `find $RPM_BUILD_ROOT -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \ - grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \ - grep -v ' shared object,' | \ -+ grep -v '/lib/modules/' | \ - sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped/\1/p'`; do - $STRIP -g "$f" || : - done ---- scripts/brp-strip-comment-note -+++ scripts/brp-strip-comment-note -@@ -16,6 +16,8 @@ +--- ./scripts/Makefile.am.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./scripts/Makefile.am 2012-06-01 11:39:13.000000000 +0000 +@@ -25,6 +25,7 @@ EXTRA_DIST = \ + rpmconfig_SCRIPTS = \ + brp-compress brp-python-bytecompile brp-java-gcjcompile \ + brp-strip brp-strip-comment-note brp-python-hardlink \ ++ brp-suse \ + brp-strip-shared brp-strip-static-archive \ + check-files check-prereqs \ + check-buildroot check-rpaths check-rpaths-worker \ +--- ./scripts/brp-strip-comment-note.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./scripts/brp-strip-comment-note 2012-06-01 11:39:13.000000000 +0000 +@@ -16,6 +16,8 @@ esac # for already stripped elf files in the build root - for f in `find $RPM_BUILD_ROOT -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \ + for f in `find "$RPM_BUILD_ROOT" -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \ grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \ + grep -v ' shared object,' | \ + grep -v '/lib/modules/' | \ sed -n -e 's/^\(.*\):[ ]*ELF.*, stripped/\1/p'`; do note="-R .note" if $OBJDUMP -h $f | grep '^[ ]*[0-9]*[ ]*.note[ ]' -A 1 | \ ---- scripts/brp-suse -+++ scripts/brp-suse +--- ./scripts/brp-strip.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./scripts/brp-strip 2012-06-01 11:39:13.000000000 +0000 +@@ -15,6 +15,7 @@ esac + for f in `find "$RPM_BUILD_ROOT" -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \ + grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \ + grep -v ' shared object,' | \ ++ grep -v '/lib/modules/' | \ + sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped/\1/p'`; do + $STRIP -g "$f" || : + done +--- ./scripts/brp-suse.orig 2012-06-01 11:39:13.000000000 +0000 ++++ ./scripts/brp-suse 2012-06-01 11:39:13.000000000 +0000 @@ -0,0 +1,13 @@ +#! /bin/sh + @@ -35,13 +45,3 @@ + $script || exit 1 + fi +done ---- scripts/Makefile.am -+++ scripts/Makefile.am -@@ -25,6 +25,7 @@ - rpmconfig_SCRIPTS = \ - brp-compress brp-python-bytecompile brp-java-gcjcompile \ - brp-strip brp-strip-comment-note brp-python-hardlink \ -+ brp-suse \ - brp-strip-shared brp-strip-static-archive \ - check-files check-prereqs \ - check-buildroot check-rpaths check-rpaths-worker \ ++++++ brpcompress.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -8,7 +8,7 @@ +LANG= +LC_TIME=POSIX + - cd $RPM_BUILD_ROOT + cd "$RPM_BUILD_ROOT" # Compress man pages COMPRESS="gzip -9 -n" ++++++ build.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,40 +1,5 @@ -Many changes to Makefiles/autogen and the like to make it build -on SUSE systems. - -Index: configure.ac -=================================================================== ---- configure.ac.orig 2011-12-11 09:36:44.163526074 +0100 -+++ configure.ac 2011-12-11 09:36:44.826494708 +0100 -@@ -849,6 +849,7 @@ arm*) RPMCANONCOLOR=0; RPMCANONARCH=arm - mipsel*) RPMCANONCOLOR=0; RPMCANONARCH=mipsel ;; - mips*) RPMCANONCOLOR=0; RPMCANONARCH=mips ;; - m68k*) RPMCANONCOLOR=0; RPMCANONARCH=m68k ;; -+parisc*|hppa*) RPMCANONCOLOR=0; RPMCANONARCH=hppa ;; - sh3*) RPMCANONCOLOR=0; RPMCANONARCH=sh3 ;; - sh4*) RPMCANONCOLOR=0; RPMCANONARCH=sh4 ;; - *) RPMCANONCOLOR=0; RPMCANONARCH=unknown ;; -@@ -859,6 +860,7 @@ esac - RPMCANONVENDOR="$build_vendor" - case "${build_vendor}" in - unknown|pc|ibm|redhat|pld|mandrake|conectiva|lvr|yellowdog|caos|suse) -+ RPMCANONVENDOR=suse - test -f /etc/redhat-release && RPMCANONVENDOR=redhat - test -f /etc/SuSE-release && RPMCANONVENDOR=suse - test -f /etc/pld-release && RPMCANONVENDOR=pld -@@ -871,6 +873,9 @@ unknown|pc|ibm|redhat|pld|mandrake|conec - esac - RPMCANONOS="$host_os_noversion" - RPMCANONGNU="$host_os_gnu" -+if test "$RPMCANONVENDOR" = suse ; then -+ RPMCANONCOLOR=0 -+fi - AC_SUBST(RPMCANONCOLOR) - AC_SUBST(RPMCANONARCH) - AC_SUBST(RPMCANONVENDOR) -Index: db3/configure -=================================================================== ---- db3/configure.orig 2011-12-11 09:34:48.129015541 +0100 -+++ db3/configure 2011-12-11 09:36:44.826494708 +0100 +--- ./db3/configure.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./db3/configure 2012-06-01 12:55:07.000000000 +0000 @@ -10,9 +10,9 @@ rm -f config.cache # XXX edit CFLAGS= ... out of invocation args ??? ARGS="`echo $* | sed -e 's% [^ ]*CFLAGS=[^ ]*%%' -e 's% -[^-][^ ]*%%g' -e 's% --param=[^ ]*%%g' -e 's%--cache-file=.*$%%'`" @@ -47,26 +12,17 @@ mv Makefile Makefile.orig cat Makefile.orig | sed -e '/^install[:-]/c\ -Index: installplatform -=================================================================== ---- installplatform.orig 2011-12-11 09:34:48.139015072 +0100 -+++ installplatform 2011-12-11 09:37:38.621949601 +0100 -@@ -19,7 +19,7 @@ RPMRC_GNU="`$RPM --eval '%{_gnu}'`" - case "$arch" in - i[3456]86|pentium[34]|athlon|geode) SUBSTS='s_i386_i386_ s_i386_i486_ s_i386_i586_ s_i386_i686_ s_i386_pentium3_ s_i386_pentium4_ s_i386_athlon_ s_i386_geode_' ;; - alpha*) SUBSTS='s_alpha_alpha_ s_alpha_alphaev5_ s_alpha_alphaev56_ s_alpha_alphapca56_ s_alpha_alphaev6_ s_alpha_alphaev67_' ;; -- arm*) SUBSTS='s_arm_arm_ s_arm_armv3l_ s_arm_armv4l_ s_arm_armv4tl_ s_arm_armv5tel_ s_arm_armv5tejl_ s_arm_armv6l_ s_arm_armv7l_' ;; -+ arm*) SUBSTS='s_arm_arm_ s_arm_armv3l_ s_arm_armv4l_ s_arm_armv4tl_ s_arm_armv5tel_ s_arm_armv5tejl_ s_arm_armv6l_ s_arm_armv7l_ s_arm_armv7hl_' ;; - sh4*) SUBSTS='s_sh4_sh4_ s_sh4_sh4a_' ;; - sparc*) SUBSTS='s_sparc\(64\|64v\|v9v\|v9\)_sparc_ s_sparc64_sparcv9_;s_sparc\([^v]\|$\)_sparcv9\1_ s_sparcv9_sparc64_;s_sparc\([^6]\|$\)_sparc64\1_' ;; - powerpc*|ppc*) SUBSTS='s_ppc64_ppc_ s_ppc\([^6ip]\|$\)_ppc64\1_ s_ppc\([^6ip]\|$\)_ppciseries_ s_ppc\([^6ip]\|$\)_ppcpseries_ s_ppc\([^6ip]\|$\)_ppc64iseries_ s_ppc\([^6ip]\|$\)_ppc64pseries_' ;; -@@ -129,6 +129,9 @@ for SUBST in $SUBSTS ; do - apple) - VENDORSED='-e s,^@apple@,,' - ;; -+ suse) -+ VENDORSED='-e s,^@SuSE@,,' -+ ;; - esac +--- ./installplatform.orig 2012-03-30 07:05:20.000000000 +0000 ++++ ./installplatform 2012-06-01 13:03:48.000000000 +0000 +@@ -118,6 +118,11 @@ for ARCH in noarch `grep ^arch_canon $RP + PPD="${DESTDIR}/${platformdir}/${ARCH}-${OS}" + [ -d $PPD ] || mkdir -p $PPD - CANONARCH="`echo $ARCH|sed -e "$canonarch_sed"`" ++ if [ "$VENDOR" = suse ] ; then ++ # suse doesn't do colors ++ CANONCOLOR=0 ++ fi ++ + cat $PLATFORM \ + | sed -e "s,@RPMRC_OPTFLAGS@,$RPMRC_OPTFLAGS," \ + -e "s,@RPMCANONARCH@,$CANONARCH,g" \ ++++++ dbprivate.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,11 +1,11 @@ Always use DB_PRIVATE. Unfortunately no longer configurable in the macros file. ---- lib/backend/db3.c.orig 2011-05-12 15:38:18.000000000 +0000 -+++ lib/backend/db3.c 2011-05-12 15:38:41.000000000 +0000 -@@ -119,7 +119,7 @@ static int db_init(rpmdb rdb, const char +--- ./lib/backend/db3.c.orig 2012-06-01 13:34:25.000000000 +0000 ++++ ./lib/backend/db3.c 2012-06-01 13:34:32.000000000 +0000 +@@ -124,7 +124,7 @@ static int db_init(rpmdb rdb, const char int retry_open = 2; - struct _dbConfig * cfg = &rdb->cfg; + struct dbConfig_s * cfg = &rdb->cfg; /* This is our setup, thou shall not have other setups before us */ - uint32_t eflags = (DB_CREATE|DB_INIT_MPOOL|DB_INIT_CDB); + uint32_t eflags = (DB_CREATE|DB_INIT_MPOOL|DB_INIT_CDB|DB_PRIVATE); ++++++ debugedit.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,8 +1,8 @@ Make debugedit build without dwarf.h ---- ./Makefile.am.orig 2010-12-22 11:17:20.000000000 +0000 -+++ ./Makefile.am 2011-05-10 16:03:49.000000000 +0000 -@@ -143,7 +143,6 @@ rpm2cpio_LDADD += @WITH_NSS_LIB@ @WITH_P +--- ./Makefile.am.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./Makefile.am 2012-06-01 10:05:04.000000000 +0000 +@@ -149,7 +149,6 @@ rpm2cpio_LDADD += @WITH_NSS_LIB@ @WITH_P if LIBELF @@ -10,16 +10,16 @@ rpmconfig_SCRIPTS += scripts/find-debuginfo.sh rpmlibexec_PROGRAMS += debugedit -@@ -156,7 +155,6 @@ elfdeps_SOURCES = tools/elfdeps.c +@@ -162,7 +161,6 @@ elfdeps_SOURCES = tools/elfdeps.c elfdeps_LDADD = rpmio/librpmio.la elfdeps_LDADD += @WITH_LIBELF_LIB@ @WITH_POPT_LIB@ endif -endif - rpmlibexec_PROGRAMS += javadeps - javadeps_SOURCES = tools/javadeps.c ---- ./tools/debugedit.c.orig 2010-12-03 12:11:57.000000000 +0000 -+++ ./tools/debugedit.c 2011-05-10 16:03:49.000000000 +0000 + rpmlibexec_PROGRAMS += rpmdeps + rpmdeps_SOURCES = tools/rpmdeps.c +--- ./tools/debugedit.c.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./tools/debugedit.c 2012-06-01 10:05:04.000000000 +0000 @@ -37,7 +37,37 @@ #include <popt.h> ++++++ debugsubpkg.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,19 +1,21 @@ Create a debuginfo package for each subpackage. ---- ./build/files.c.orig 2011-05-13 15:34:01.000000000 +0000 -+++ ./build/files.c 2011-05-13 15:35:42.000000000 +0000 -@@ -20,6 +20,10 @@ - #include <rpm/rpmfileutil.h> /* rpmDoDigest() */ +Index: build/files.c +=================================================================== +--- build/files.c.orig ++++ build/files.c +@@ -21,6 +21,10 @@ #include <rpm/rpmlog.h> + #include <rpm/rpmbase64.h> +#if HAVE_GELF_H +#include <gelf.h> +#endif + #include "rpmio/rpmio_internal.h" /* XXX rpmioSlurp */ - #include "rpmio/base64.h" #include "misc/fts.h" -@@ -2105,13 +2109,237 @@ exit: + #include "lib/cpio.h" +@@ -2097,13 +2101,237 @@ exit: return rc; } @@ -251,7 +253,7 @@ genSourceRpmName(spec); for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) { -@@ -2127,8 +2355,12 @@ rpmRC processBinaryFiles(rpmSpec spec, r +@@ -2119,8 +2347,12 @@ rpmRC processBinaryFiles(rpmSpec spec, r rpmlog(RPMLOG_NOTICE, _("Processing files: %s\n"), nvr); free(nvr); @@ -266,9 +268,11 @@ goto exit; a = headerGetString(pkg->header, RPMTAG_ARCH); ---- ./macros.in.orig 2011-05-13 15:34:01.000000000 +0000 -+++ ./macros.in 2011-05-13 15:34:10.000000000 +0000 -@@ -179,24 +179,10 @@ +Index: macros.in +=================================================================== +--- macros.in.orig ++++ macros.in +@@ -182,24 +182,10 @@ # Template for debug information sub-package. %debug_package \ %global __debug_package 1\ @@ -293,15 +297,29 @@ %description debugsource\ This package provides debug sources for package %{name}.\ Debug sources are useful when developing applications that use this\ ---- ./scripts/find-debuginfo.sh.orig 2011-05-13 15:34:01.000000000 +0000 -+++ ./scripts/find-debuginfo.sh 2011-05-13 15:34:10.000000000 +0000 -@@ -277,19 +277,11 @@ while read nlinks inum f; do +Index: scripts/find-debuginfo.sh +=================================================================== +--- scripts/find-debuginfo.sh.orig ++++ scripts/find-debuginfo.sh +@@ -149,6 +149,11 @@ debug_link() + # Provide .2, .3, ... symlinks to all filename instances of this build-id. + make_id_dup_link() + { ++ # See https://bugzilla.redhat.com/show_bug.cgi?id=641377 for the reasoning, ++ # but it has seveal drawbacks as we would need to split the .1 suffixes into ++ # different subpackages and it's about impossible to predict the number ++ # -> perhaps later ++ return + local id="$1" file="$2" idfile + + local n=1 +@@ -311,19 +316,11 @@ while read nlinks inum f; do fi done || exit -# For each symlink whose target has a .debug file, -# make a .debug symlink to that file. --find $RPM_BUILD_ROOT ! -path "${debugdir}/*" -type l -print | +-find "$RPM_BUILD_ROOT" ! -path "${debugdir}/*" -type l -print | -while read f -do - t=$(readlink -m "$f").debug ++++++ fdopen_strncat.diff ++++++ --- ./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; ++++++ fileattrs.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,83 +1,65 @@ -Index: fileattrs/debuginfo.attr -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ fileattrs/debuginfo.attr 2011-12-15 13:47:26.745458876 +0100 +--- ./fileattrs/Makefile.am.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./fileattrs/Makefile.am 2012-06-01 13:39:16.000000000 +0000 +@@ -6,6 +6,7 @@ fattrsdir = $(rpmconfigdir)/fileattrs + + fattrs_DATA = \ + desktop.attr elf.attr font.attr libtool.attr perl.attr perllib.attr \ +- pkgconfig.attr python.attr ocaml.attr script.attr mono.attr ++ pkgconfig.attr python.attr ocaml.attr script.attr mono.attr \ ++ debuginfo.attr elflib.attr firmware.attr ksyms.attr sysvinit.attr + + EXTRA_DIST = $(fattrs_DATA) +--- ./fileattrs/debuginfo.attr.orig 2012-06-01 13:39:16.000000000 +0000 ++++ ./fileattrs/debuginfo.attr 2012-06-01 13:39:16.000000000 +0000 @@ -0,0 +1,2 @@ +%__debuginfo_provides %{_rpmconfigdir}/debuginfo.prov +%__debuginfo_path ^/usr/lib/debug/ -Index: fileattrs/elf.attr -=================================================================== ---- fileattrs/elf.attr.orig 2011-07-15 11:32:41.000000000 +0200 -+++ fileattrs/elf.attr 2011-12-15 13:47:26.786456954 +0100 +--- ./fileattrs/elf.attr.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./fileattrs/elf.attr 2012-06-01 13:40:16.000000000 +0000 @@ -1,4 +1,5 @@ %__elf_provides %{_rpmconfigdir}/elfdeps --provides %{?__filter_GLIBC_PRIVATE:--filter-private} %__elf_requires %{_rpmconfigdir}/elfdeps --requires %{?__filter_GLIBC_PRIVATE:--filter-private} --%__elf_magic ^(sticky )?ELF (32|64)-bit.*$ +-%__elf_magic ^(setuid )?(setgid )?(sticky )?ELF (32|64)-bit.*$ +%__elf_magic ^(setuid )?(setgid )?(sticky )?ELF (32|64)-bit.*executable %__elf_flags exeonly +%__elf_exclude_path ^/usr/lib/debug/ -Index: fileattrs/elflib.attr -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ fileattrs/elflib.attr 2011-12-15 13:47:26.786456954 +0100 +--- ./fileattrs/elflib.attr.orig 2012-06-01 13:39:16.000000000 +0000 ++++ ./fileattrs/elflib.attr 2012-06-01 13:39:16.000000000 +0000 @@ -0,0 +1,4 @@ +%__elflib_provides %{_rpmconfigdir}/elfdeps --assume-exec --provides %{?__filter_GLIBC_PRIVATE:--filter-private} +%__elflib_requires %{_rpmconfigdir}/elfdeps --assume-exec --requires %{?__filter_GLIBC_PRIVATE:--filter-private} +%__elflib_magic ^(setuid )?(setgid )?(sticky )?ELF (32|64)-bit.*shared object +%__elflib_exclude_path ^/usr/lib/debug/ -Index: fileattrs/firmware.attr -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ fileattrs/firmware.attr 2011-12-15 13:47:26.787456907 +0100 +--- ./fileattrs/firmware.attr.orig 2012-06-01 13:39:16.000000000 +0000 ++++ ./fileattrs/firmware.attr 2012-06-01 13:39:16.000000000 +0000 @@ -0,0 +1,2 @@ +%__firmware_provides %{_rpmconfigdir}/firmware.prov +%__firmware_path /lib/firmware/ -Index: fileattrs/ksyms.attr -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ fileattrs/ksyms.attr 2011-12-15 13:47:26.787456907 +0100 +--- ./fileattrs/ksyms.attr.orig 2012-06-01 13:39:16.000000000 +0000 ++++ ./fileattrs/ksyms.attr 2012-06-01 13:39:16.000000000 +0000 @@ -0,0 +1,4 @@ +%__ksyms_provides %{_rpmconfigdir}/find-provides.ksyms %name +%__ksyms_requires %{_rpmconfigdir}/find-requires.ksyms %name +%__ksyms_supplements %{_rpmconfigdir}/find-supplements.ksyms %name +%__ksyms_path (/lib/modules/.*\.ko(\.gz)?)|(/boot/vmlinu[xz].*)$ -Index: fileattrs/Makefile.am -=================================================================== ---- fileattrs/Makefile.am.orig 2011-07-12 13:28:13.000000000 +0200 -+++ fileattrs/Makefile.am 2011-12-15 13:47:42.690700975 +0100 -@@ -6,6 +6,7 @@ fattrsdir = $(rpmconfigdir)/fileattrs - - fattrs_DATA = \ - desktop.attr elf.attr font.attr libtool.attr perl.attr perllib.attr \ -- pkgconfig.attr python.attr ocaml.attr script.attr mono.attr -+ pkgconfig.attr python.attr ocaml.attr script.attr mono.attr \ -+ debuginfo.attr elflib.attr firmware.attr ksyms.attr sysvinit.attr - - EXTRA_DIST = $(fattrs_DATA) -Index: fileattrs/perl.attr -=================================================================== ---- fileattrs/perl.attr.orig 2011-07-12 13:28:13.000000000 +0200 -+++ fileattrs/perl.attr 2011-12-15 13:47:26.788456860 +0100 +--- ./fileattrs/perl.attr.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./fileattrs/perl.attr 2012-06-01 13:39:16.000000000 +0000 @@ -1,3 +1,4 @@ -%__perl_requires %{_rpmconfigdir}/perl.req +# disabled for now +#%__perl_requires %{_rpmconfigdir}/perl.req - %__perl_magic ^.*perl .*$ + %__perl_magic ^.*[Pp]erl .*$ %__perl_flags exeonly -Index: fileattrs/perllib.attr -=================================================================== ---- fileattrs/perllib.attr.orig 2011-07-12 13:28:13.000000000 +0200 -+++ fileattrs/perllib.attr 2011-12-15 13:47:26.915450823 +0100 +--- ./fileattrs/perllib.attr.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./fileattrs/perllib.attr 2012-06-01 13:39:16.000000000 +0000 @@ -1,3 +1,4 @@ %__perllib_provides %{_rpmconfigdir}/perl.prov -%__perllib_requires %{_rpmconfigdir}/perl.req +#disabled for now +#%__perllib_requires %{_rpmconfigdir}/perl.req %__perllib_magic ^Perl[[:digit:]] module source.* -Index: fileattrs/sysvinit.attr -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ fileattrs/sysvinit.attr 2011-12-15 13:47:26.915450823 +0100 +--- ./fileattrs/sysvinit.attr.orig 2012-06-01 13:39:16.000000000 +0000 ++++ ./fileattrs/sysvinit.attr 2012-06-01 13:39:16.000000000 +0000 @@ -0,0 +1,2 @@ +%__sysvinit_provides %{_rpmconfigdir}/sysvinitdeps.sh --provides +%__sysvinit_path ^/etc/init\.d/ ++++++ finddebuginfo-absolute-links.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -7,9 +7,9 @@ Signed-off-by: Jan Blunck <jblunck@suse.de> ---- ./scripts/find-debuginfo.sh.orig 2011-05-11 15:36:05.000000000 +0000 -+++ ./scripts/find-debuginfo.sh 2011-05-11 15:58:17.000000000 +0000 -@@ -124,7 +124,17 @@ debug_link() +--- ./scripts/find-debuginfo.sh.orig 2012-06-01 13:12:04.000000000 +0000 ++++ ./scripts/find-debuginfo.sh 2012-06-01 13:12:17.000000000 +0000 +@@ -133,7 +133,17 @@ debug_link() local l="/usr/lib/debug$2" local t="$1" echo >> "$LINKSFILE" "$l $t" @@ -27,8 +27,8 @@ + esac } - # Compare two binaries but ignore the .note.gnu.build-id section -@@ -158,8 +168,8 @@ make_id_link() + # Provide .2, .3, ... symlinks to all filename instances of this build-id. +@@ -186,8 +196,8 @@ make_id_link() local other=$(readlink -m "$root_idfile") other=${other#$RPM_BUILD_ROOT} ++++++ finddebuginfo.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,7 +1,7 @@ ---- ./scripts/find-debuginfo.sh.orig 2010-12-03 12:11:57.000000000 +0000 -+++ ./scripts/find-debuginfo.sh 2011-05-11 14:46:18.000000000 +0000 -@@ -127,6 +127,20 @@ debug_link() - link_relative "$t" "$l" "$RPM_BUILD_ROOT" +--- ./scripts/find-debuginfo.sh.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./scripts/find-debuginfo.sh 2012-06-01 12:26:12.000000000 +0000 +@@ -153,6 +153,20 @@ make_id_dup_link() + debug_link "$file" "/$idfile" } +# Compare two binaries but ignore the .note.gnu.build-id section @@ -21,7 +21,7 @@ # Make a build-id symlink for id $1 with suffix $3 to file $2. make_id_link() { -@@ -145,7 +159,7 @@ make_id_link() +@@ -173,7 +187,7 @@ make_id_link() local other=$(readlink -m "$root_idfile") other=${other#$RPM_BUILD_ROOT} if cmp -s "$root_idfile" "$RPM_BUILD_ROOT$file" || @@ -30,7 +30,7 @@ # Two copies. Maybe one has to be setuid or something. echo >&2 "*** WARNING: identical binaries are copied, not linked:" echo >&2 " $file" -@@ -174,12 +188,18 @@ strict_error=ERROR +@@ -202,12 +216,18 @@ strict_error=ERROR $strict || strict_error=WARNING # Strip ELF binaries @@ -54,7 +54,7 @@ get_debugfn "$f" [ -f "${debugfn}" ] && continue -@@ -200,8 +220,11 @@ while read nlinks inum f; do +@@ -231,8 +251,11 @@ while read nlinks inum f; do fi echo "extracting debug info from $f" @@ -63,12 +63,12 @@ + mode=$(stat -c %a "$f") + chmod +w "$f" + id=$($(DEBUGEDIT=$(which debugedit 2>/dev/null); \ -+ echo ${DEBUGEDIT:-/usr/lib/rpm/debugedit}) -b "$RPM_BUILD_DIR" \ -+ -d /usr/src/debug -i -l "$SOURCEFILE" "$f") || exit - if [ -z "$id" ]; then - echo >&2 "*** ${strict_error}: No build ID note found in $f" - $strict && exit 2 -@@ -218,13 +241,25 @@ while read nlinks inum f; do ++ echo ${DEBUGEDIT:-/usr/lib/rpm/debugedit}) -b "$RPM_BUILD_DIR" \ ++ -d /usr/src/debug -i -l "$SOURCEFILE" "$f") || exit + if [ $nlinks -gt 1 ]; then + eval linkedid_$inum=\$id + fi +@@ -252,13 +275,25 @@ while read nlinks inum f; do esac mkdir -p "${debugdn}" @@ -101,7 +101,7 @@ if [ -n "$id" ]; then make_id_link "$id" "$dn/$(basename $f)" -@@ -253,12 +288,14 @@ if [ -s "$SOURCEFILE" ]; then +@@ -287,12 +322,14 @@ if [ -s "$SOURCEFILE" ]; then # stupid cpio creates new directories in mode 0700, fixup find "${RPM_BUILD_ROOT}/usr/src/debug" -type d -print0 | xargs --no-run-if-empty -0 chmod a+rx ++++++ findlang.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,7 +1,5 @@ -Index: scripts/find-lang.sh -=================================================================== ---- scripts/find-lang.sh.orig -+++ scripts/find-lang.sh +--- ./scripts/find-lang.sh.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./scripts/find-lang.sh 2012-06-01 12:35:41.000000000 +0000 @@ -28,10 +28,10 @@ the top of the tree containing the files PACKAGE_NAME is the %{name} of the package. This should also be the basename of the .mo files. the output is written to @@ -42,27 +40,35 @@ --with-qt ) QT= shift -@@ -97,33 +105,40 @@ while test $# -gt 0 ; do +@@ -97,13 +105,19 @@ while test $# -gt 0 ; do esac done +if ! test -s $MO_NAME ; then + echo "%defattr (644, root, root, 755)" > $MO_NAME +fi -+ +MO_NAME_NEW=$MO_NAME.tmp.$$ +rm -f $MO_NAME_NEW + - find $TOP_DIR -type f -o -type l|sed ' + find "$TOP_DIR" -type f -o -type l|sed ' s:'"$TOP_DIR"':: '"$ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*\.mo$\):%lang(\2) \1\2\3: '"$NO_ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*/'"$NAME"'\.mo$\):%lang(\2) \1\2\3: s:^\([^%].*\):: s:%lang(C) :: -/^$/d' > $MO_NAME ++/^$/d' > $MO_NAME_NEW + + find "$TOP_DIR" -type d|sed ' + s:'"$TOP_DIR"':: +@@ -111,27 +125,27 @@ s:'"$TOP_DIR"':: + '"$ALL_NAME$GNOME"'s:\(.*/share/help/\)\([^/_]\+\)\([^/]*\)\(/[a-zA-Z0-9.\_\-]\+\)$:%lang(\2) %doc \1\2\3\4/: + s:^\([^%].*\):: + s:%lang(C) :: +-/^$/d' >> $MO_NAME +/^$/d' >> $MO_NAME_NEW - find $TOP_DIR -type d|sed ' + find "$TOP_DIR" -type d|sed ' s:'"$TOP_DIR"':: -'"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'$\):%dir \1: +'"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'$\):%dir %doc \1: @@ -80,7 +86,7 @@ -/^$/d' >> $MO_NAME +/^$/d' >> $MO_NAME_NEW - find $TOP_DIR -type d|sed ' + find "$TOP_DIR" -type d|sed ' s:'"$TOP_DIR"':: '"$NO_ALL_NAME$GNOME"'s:\(.*/omf/'"$NAME"'$\):%dir \1: '"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+$\):%dir \1: @@ -88,9 +94,9 @@ -/^$/d' >> $MO_NAME +/^$/d' >> $MO_NAME_NEW - find $TOP_DIR -type f|sed ' + find "$TOP_DIR" -type f|sed ' s:'"$TOP_DIR"':: -@@ -131,7 +146,7 @@ s:'"$TOP_DIR"':: +@@ -139,7 +153,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]\+-\([^/.]\+\)\.omf\):%lang(\2) \1: s:^[^%].*:: s:%lang(C) :: @@ -99,7 +105,7 @@ KDE3_HTML=`kde-config --expandvars --install html 2>/dev/null` if [ x"$KDE3_HTML" != x -a -d "$TOP_DIR$KDE3_HTML" ]; then -@@ -143,7 +158,7 @@ s:'"$TOP_DIR"':: +@@ -151,7 +165,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: s:%lang(C) :: @@ -108,7 +114,7 @@ fi KDE4_HTML=`kde4-config --expandvars --install html 2>/dev/null` -@@ -156,7 +171,7 @@ s:'"$TOP_DIR"':: +@@ -164,7 +178,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: s:%lang(C) :: @@ -116,24 +122,24 @@ +/^$/d' >> $MO_NAME_NEW fi - find $TOP_DIR -type f -o -type l|sed ' -@@ -168,7 +183,7 @@ s:'"$TOP_DIR"':: + find "$TOP_DIR" -type f -o -type l|sed ' +@@ -176,7 +190,7 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$QT"'s:^\([^%].*/[^/]\+_\([a-zA-Z]\{2\}\)\.qm$\):%lang(\2) \1: s:^[^%].*:: s:%lang(C) :: -/^$/d' >> $MO_NAME +/^$/d' >> $MO_NAME_NEW - find $TOP_DIR -type d|sed ' + find "$TOP_DIR" -type d|sed ' s:'"$TOP_DIR"':: -@@ -176,17 +191,22 @@ s:'"$TOP_DIR"':: +@@ -184,17 +198,22 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+$\):%lang(\2) \1*: s:^\([^%].*\):: s:%lang(C) :: -/^$/d' >> $MO_NAME +/^$/d' >> $MO_NAME_NEW - find $TOP_DIR -type f -o -type l|sed ' + find "$TOP_DIR" -type f -o -type l|sed ' s:'"$TOP_DIR"':: '"$NO_ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+/'"$NAME"'\.[a-z0-9].*\):%lang(\2) \1*: s:^\([^%].*\):: ++++++ findsupplements.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,10 +1,7 @@ -Add support for supplements to the internal dependency -generator. +Add support for supplements to the internal dependency generator. -Index: build/rpmfc.c -=================================================================== ---- build/rpmfc.c.orig 2011-12-09 14:46:56.296892644 +0100 -+++ build/rpmfc.c 2011-12-09 14:47:08.510313829 +0100 +--- ./build/rpmfc.c.orig 2012-06-01 13:44:21.000000000 +0000 ++++ ./build/rpmfc.c 2012-06-01 14:00:45.000000000 +0000 @@ -57,6 +57,7 @@ struct rpmfc_s { rpmds provides; /*!< (no. provides) package provides */ @@ -13,40 +10,60 @@ }; struct rpmfcTokens_s { -@@ -504,6 +505,14 @@ static int rpmfcHelper(rpmfc fc, unsigne - dsContext = RPMSENSE_FIND_REQUIRES; - tagN = RPMTAG_REQUIRENAME; - break; -+ case 'S': -+ if (fc->skipProv) -+ return 0; -+ depname = "supplements"; -+ depsp = &fc->supplements; -+ dsContext = RPMSENSE_FIND_REQUIRES|RPMSENSE_STRONG|RPMSENSE_MISSINGOK; -+ tagN = RPMTAG_ENHANCESNAME; -+ break; - } - - /* If the entire path is filtered out, there's nothing more to do */ -@@ -779,6 +788,7 @@ rpmfc rpmfcFree(rpmfc fc) - - fc->provides = rpmdsFree(fc->provides); - fc->requires = rpmdsFree(fc->requires); -+ fc->supplements = rpmdsFree(fc->supplements); +@@ -545,6 +546,22 @@ static int rpmfcHelperRequires(rpmfc fc, + return 0; + } + ++/** ++ * Run per-interpreter Supplements: dependency helper. ++ * @param fc file classifier ++ * @param nsdep class name for interpreter (e.g. "perl") ++ * @return 0 ++ */ ++static int rpmfcHelperSupplements(rpmfc fc, const char * nsdep) ++{ ++ if (fc->skipReq) ++ return 0; ++ ++ rpmfcHelper(fc, nsdep, "supplements", &fc->supplements, RPMSENSE_FIND_REQUIRES|RPMSENSE_STRONG|RPMSENSE_MISSINGOK, RPMTAG_ENHANCESNAME); ++ ++ return 0; ++} ++ + /* Only used for elf coloring and controlling RPMTAG_FILECLASS inclusion now */ + static const struct rpmfcTokens_s rpmfcTokens[] = { + { "directory", RPMFC_INCLUDE }, +@@ -762,6 +779,7 @@ rpmfc rpmfcFree(rpmfc fc) + + rpmdsFree(fc->provides); + rpmdsFree(fc->requires); ++ rpmdsFree(fc->supplements); + memset(fc, 0, sizeof(*fc)); /* trash and burn */ + free(fc); } - fc = _free(fc); - return NULL; -@@ -831,6 +841,7 @@ rpmRC rpmfcApply(rpmfc fc) +@@ -793,6 +811,11 @@ rpmds rpmfcRequires(rpmfc fc) + return (fc != NULL ? fc->requires : NULL); + } + ++rpmds rpmfcSupplements(rpmfc fc) ++{ ++ return (fc != NULL ? fc->supplements : NULL); ++} ++ + rpmRC rpmfcApply(rpmfc fc) + { + const char * s; +@@ -814,6 +837,7 @@ rpmRC rpmfcApply(rpmfc fc) for (ARGV_t fattr = fc->fattrs[fc->ix]; fattr && *fattr; fattr++) { - xx += rpmfcHelper(fc, 'P', *fattr); - xx += rpmfcHelper(fc, 'R', *fattr); -+ xx += rpmfcHelper(fc, 'S', *fattr); + rpmfcHelperProvides(fc, *fattr); + rpmfcHelperRequires(fc, *fattr); ++ rpmfcHelperSupplements(fc, *fattr); } } -@@ -873,6 +884,11 @@ rpmRC rpmfcApply(rpmfc fc) +@@ -856,6 +880,11 @@ rpmRC rpmfcApply(rpmfc fc) dix = rpmdsFind(fc->requires, ds); - ds = rpmdsFree(ds); + rpmdsFree(ds); break; + case 'S': + ds = rpmdsSingle(RPMTAG_ENHANCESNAME, N, EVR, Flags); @@ -55,13 +72,13 @@ + break; } - /* XXX assertion incorrect while generating -debuginfo deps. */ -@@ -1384,6 +1400,18 @@ rpmRC rpmfcGenerateDepends(const rpmSpec + if (dix < 0) +@@ -1347,6 +1376,18 @@ rpmRC rpmfcGenerateDepends(const rpmSpec } } + /* Add Supplements: */ -+ if (fc->supplements != NULL && rpmdsCount(fc->supplements) > 0 && !fc->skipReq) { ++ if (!fc->skipReq) { + rpmds pi = rpmdsInit(fc->supplements); + while (rpmdsNext(pi) >= 0) { + rpmsenseFlags flags = rpmdsFlags(pi); @@ -74,4 +91,20 @@ + /* Add dependency dictionary(#dependencies) */ if (rpmtdFromArgi(&td, RPMTAG_DEPENDSDICT, fc->ddictx)) { - assert(rpmtdType(&td) == RPM_INT32_TYPE); + headerPut(pkg->header, &td, HEADERPUT_DEFAULT); +--- ./build/rpmfc.h.orig 2012-06-01 13:53:12.000000000 +0000 ++++ ./build/rpmfc.h 2012-06-01 13:53:44.000000000 +0000 +@@ -106,6 +106,13 @@ rpmds rpmfcProvides(rpmfc fc); + */ + rpmds rpmfcRequires(rpmfc fc); + ++/** \ingroup rpmfc ++ * Retrieve file classification supplements ++ * @param fc file classifier ++ * @return rpmds dependency set of fc requires ++ */ ++rpmds rpmfcSupplements(rpmfc fc); ++ + #ifdef __cplusplus + } + #endif ++++++ headerchk2.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,147 +1,12 @@ ---- lib/header.c.orig 2012-04-17 16:16:29.000000000 +0000 -+++ lib/header.c 2012-04-17 16:53:32.000000000 +0000 -@@ -197,7 +197,7 @@ int headerVerifyInfo(int il, int dl, con - return i; - if (hdrchkAlign(info->type, info->offset)) - return i; -- if (!negate && hdrchkRange(dl, info->offset)) -+ if (hdrchkRange(dl, info->offset)) - return i; - if (hdrchkData(info->count)) - return i; -@@ -837,10 +837,13 @@ Header headerLoad(void * uh) +--- lib/header.c.orig 2012-04-03 13:29:24.000000000 +0000 ++++ lib/header.c 2012-06-01 14:22:12.000000000 +0000 +@@ -900,7 +900,8 @@ Header headerImport(void * blob, unsigne - entry->info.type = htonl(pe->type); - entry->info.count = htonl(pe->count); -+ entry->info.tag = htonl(pe->tag); - -- if (hdrchkType(entry->info.type)) -+ if (!ENTRY_IS_REGION(entry)) - goto errxit; -- if (hdrchkTags(entry->info.count)) -+ if (entry->info.type != REGION_TAG_TYPE) -+ goto errxit; -+ if (entry->info.count != REGION_TAG_COUNT) - goto errxit; - - { int off = ntohl(pe->offset); -@@ -856,7 +859,6 @@ Header headerLoad(void * uh) - ril = rdl/sizeof(*pe); - if (hdrchkTags(ril) || hdrchkData(rdl)) - goto errxit; -- entry->info.tag = htonl(pe->tag); - } else { - ril = il; - rdl = (ril * sizeof(struct entryInfo_s)); -@@ -876,13 +878,12 @@ Header headerLoad(void * uh) - indexEntry newEntry = entry + ril; - int ne = (h->indexUsed - ril); - int rid = entry->info.offset+1; -- int rc; - - /* Load dribble entries from region. */ -- rc = regionSwab(newEntry, ne, 0, pe+ril, dataStart, dataEnd, rid); -- if (rc < 0) -+ rdlen = regionSwab(newEntry, ne, rdlen, pe+ril, -+ dataStart, dataEnd, rid); -+ if (rdlen < 0) - goto errxit; -- rdlen += rc; - - { indexEntry firstEntry = newEntry; - int save = h->indexUsed; -@@ -905,7 +906,7 @@ Header headerLoad(void * uh) - } - } rdlen += REGION_TAG_COUNT; -- /* XXX should be equality test, but dribbles are sometimes a bit off? */ + +- if (rdlen != dl) + /* should be equality test, but can be off if entries are not perfectly aligned */ - if (rdlen > dl) ++ if (rdlen > dl) goto errxit; } ---- lib/package.c.orig 2012-04-17 16:26:00.000000000 +0000 -+++ lib/package.c 2012-04-17 16:26:05.000000000 +0000 -@@ -241,16 +241,23 @@ static rpmRC headerVerify(rpmKeyring key - } - - /* Is there an immutable header region tag? */ -- if (!(entry.info.tag == RPMTAG_HEADERIMMUTABLE -- && entry.info.type == RPM_BIN_TYPE -- && entry.info.count == REGION_TAG_COUNT)) -- { -+ if (!(entry.info.tag == RPMTAG_HEADERIMMUTABLE)) { - rc = RPMRC_NOTFOUND; - goto exit; - } - -- /* Is the offset within the data area? */ -- if (entry.info.offset >= dl) { -+ /* Is the region tag sane? */ -+ if (!(entry.info.type == REGION_TAG_TYPE && -+ entry.info.count == REGION_TAG_COUNT)) { -+ rasprintf(&buf, -+ _("region tag: BAD, tag %d type %d offset %d count %d\n"), -+ entry.info.tag, entry.info.type, -+ entry.info.offset, entry.info.count); -+ goto exit; -+ } -+ -+ /* Is the trailer within the data area? */ -+ if (entry.info.offset + REGION_TAG_COUNT > dl) { - rasprintf(&buf, - _("region offset: BAD, tag %d type %d offset %d count %d\n"), - entry.info.tag, entry.info.type, -@@ -263,10 +270,10 @@ static rpmRC headerVerify(rpmKeyring key - (void) memcpy(&info, regionEnd, REGION_TAG_COUNT); - regionEnd += REGION_TAG_COUNT; - -- xx = headerVerifyInfo(1, dl, &info, &entry.info, 1); -+ xx = headerVerifyInfo(1, il * sizeof(*pe), &info, &entry.info, 1); - if (xx != -1 || - !(entry.info.tag == RPMTAG_HEADERIMMUTABLE -- && entry.info.type == RPM_BIN_TYPE -+ && entry.info.type == REGION_TAG_TYPE - && entry.info.count == REGION_TAG_COUNT)) - { - rasprintf(&buf, ---- lib/signature.c.orig 2012-04-17 16:25:52.000000000 +0000 -+++ lib/signature.c 2012-04-17 16:26:05.000000000 +0000 -@@ -133,12 +133,19 @@ rpmRC rpmReadSignature(FD_t fd, Header * - } - - /* Is there an immutable header region tag? */ -- if (entry.info.tag == RPMTAG_HEADERSIGNATURES -- && entry.info.type == RPM_BIN_TYPE -- && entry.info.count == REGION_TAG_COUNT) -- { -- -- if (entry.info.offset >= dl) { -+ if (entry.info.tag == RPMTAG_HEADERSIGNATURES) { -+ /* Is the region tag sane? */ -+ if (!(entry.info.type == REGION_TAG_TYPE && -+ entry.info.count == REGION_TAG_COUNT)) { -+ rasprintf(&buf, -+ _("region tag: BAD, tag %d type %d offset %d count %d\n"), -+ entry.info.tag, entry.info.type, -+ entry.info.offset, entry.info.count); -+ goto exit; -+ } -+ -+ /* Is the trailer within the data area? */ -+ if (entry.info.offset + REGION_TAG_COUNT > dl) { - rasprintf(&buf, - _("region offset: BAD, tag %d type %d offset %d count %d\n"), - entry.info.tag, entry.info.type, -@@ -157,10 +164,10 @@ rpmRC rpmReadSignature(FD_t fd, Header * - } - dataEnd += REGION_TAG_COUNT; -- xx = headerVerifyInfo(1, dl, &info, &entry.info, 1); -+ xx = headerVerifyInfo(1, il * sizeof(*pe), &info, &entry.info, 1); - if (xx != -1 || - !((entry.info.tag == RPMTAG_HEADERSIGNATURES || entry.info.tag == RPMTAG_HEADERIMAGE) -- && entry.info.type == RPM_BIN_TYPE -+ && entry.info.type == REGION_TAG_TYPE - && entry.info.count == REGION_TAG_COUNT)) - { - rasprintf(&buf, ++++++ langnoc.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,8 +1,6 @@ -Index: macros.in -=================================================================== ---- macros.in.orig -+++ macros.in -@@ -1253,6 +1253,7 @@ EOF +--- ./macros.in.orig 2012-06-01 14:10:18.000000000 +0000 ++++ ./macros.in 2012-06-01 14:10:29.000000000 +0000 +@@ -1204,6 +1204,7 @@ EOF # %files -f %{name}.lang # %find_lang %{_rpmconfigdir}/find-lang.sh %{buildroot} @@ -10,10 +8,8 @@ # Commands + opts to use for retrieving remote files # Proxy opts can be set through --httpproxy/--httpport popt aliases, -Index: scripts/find-lang.sh -=================================================================== ---- scripts/find-lang.sh.orig -+++ scripts/find-lang.sh +--- ./scripts/find-lang.sh.orig 2012-06-01 14:10:18.000000000 +0000 ++++ ./scripts/find-lang.sh 2012-06-01 14:14:47.000000000 +0000 @@ -62,6 +62,8 @@ MO= MO_NAME=$NAME.lang ALL_NAME=# @@ -38,16 +34,16 @@ * ) MO_NAME=${1} shift -@@ -134,6 +144,8 @@ s:'"$TOP_DIR"':: +@@ -133,6 +143,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*\.mo$\):%lang(\2) \1\2\3: '"$NO_ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*/'"$NAME"'\.mo$\):%lang(\2) \1\2\3: s:^\([^%].*\):: +'"$ONLY_C"'/%lang(C)/!d +'"$NO_C"'/%lang(C)/d s:%lang(C) :: - /^$/d' >> $MO_NAME_NEW + /^$/d' > $MO_NAME_NEW -@@ -142,27 +154,32 @@ s:'"$TOP_DIR"':: +@@ -141,19 +153,23 @@ s:'"$TOP_DIR"':: '"$NO_ALL_NAME$GNOME"'s:\(.*/share/help/\)\([^/_]\+\)\([^/]*\)\(/'"$NAME"'\)$:%lang(\2) %doc \1\2\3\4/: '"$ALL_NAME$GNOME"'s:\(.*/share/help/\)\([^/_]\+\)\([^/]*\)\(/[a-zA-Z0-9.\_\-]\+\)$:%lang(\2) %doc \1\2\3\4/: s:^\([^%].*\):: @@ -56,7 +52,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW - find $TOP_DIR -type d|sed ' + find "$TOP_DIR" -type d|sed ' s:'"$TOP_DIR"':: -'"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'$\):%dir %doc \1: +'"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'$\):%lang(C) %dir %doc \1: @@ -73,18 +69,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW - find $TOP_DIR -type d|sed ' - s:'"$TOP_DIR"':: --'"$NO_ALL_NAME$GNOME"'s:\(.*/omf/'"$NAME"'$\):%dir \1: --'"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+$\):%dir \1: -+'"$NO_ALL_NAME$GNOME"'s:\(.*/omf/'"$NAME"'$\):%lang(C) %dir \1: -+'"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+$\):%lang(C) %dir \1: - s:^\([^%].*\):: -+s:%lang(C) :: - /^$/d' >> $MO_NAME_NEW - - find $TOP_DIR -type f|sed ' -@@ -170,6 +187,8 @@ s:'"$TOP_DIR"':: +@@ -169,6 +185,8 @@ s:'"$TOP_DIR"':: '"$NO_ALL_NAME$GNOME"'s:\(.*/omf/'"$NAME"'/'"$NAME"'-\([^/.]\+\)\.omf\):%lang(\2) \1: '"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]\+-\([^/.]\+\)\.omf\):%lang(\2) \1: s:^[^%].*:: @@ -93,7 +78,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW -@@ -182,6 +201,8 @@ s:'"$TOP_DIR"':: +@@ -181,6 +199,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+/\):: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: @@ -102,7 +87,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW fi -@@ -195,6 +216,8 @@ s:'"$TOP_DIR"':: +@@ -194,6 +214,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+/\):: '"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3: s:^\([^%].*\):: @@ -111,7 +96,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW fi -@@ -207,6 +230,8 @@ s:'"$TOP_DIR"':: +@@ -206,6 +228,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$QT"'s:^\([^%].*/[^/]\+_\([a-zA-Z]\{2\}[_@].*\)\.qm$\):%lang(\2) \1: '"$ALL_NAME$QT"'s:^\([^%].*/[^/]\+_\([a-zA-Z]\{2\}\)\.qm$\):%lang(\2) \1: s:^[^%].*:: @@ -120,7 +105,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW -@@ -215,6 +240,8 @@ s:'"$TOP_DIR"':: +@@ -214,6 +238,8 @@ s:'"$TOP_DIR"':: '"$ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+/\):: '"$ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+$\):%lang(\2) \1*: s:^\([^%].*\):: @@ -129,7 +114,7 @@ s:%lang(C) :: /^$/d' >> $MO_NAME_NEW -@@ -222,6 +249,8 @@ find $TOP_DIR -type f -o -type l|sed ' +@@ -221,6 +247,8 @@ find "$TOP_DIR" -type f -o -type l|sed ' s:'"$TOP_DIR"':: '"$NO_ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+/'"$NAME"'\.[a-z0-9].*\):%lang(\2) \1*: s:^\([^%].*\):: ++++++ macrosin.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,6 +1,6 @@ ---- macros.in 2011-07-15 11:32:41.000000000 +0200 -+++ macros.in 2012-01-20 11:02:19.809126991 +0100 -@@ -180,22 +180,22 @@ +--- ./macros.in.orig 2012-05-22 10:53:51.000000000 +0000 ++++ ./macros.in 2012-06-01 12:39:35.000000000 +0000 +@@ -181,22 +181,22 @@ # Template for debug information sub-package. %debug_package \ @@ -29,7 +29,7 @@ # The path to the gzip executable (legacy, use %{__gzip} instead). %_gzipbin %{__gzip} -@@ -232,7 +232,8 @@ +@@ -233,7 +233,8 @@ package or when debugging this package.\ %_tmppath %{_var}/tmp # Path to top of build area. @@ -39,7 +39,7 @@ # The path to the unzip executable (legacy, use %{__unzip} instead). %_unzipbin %{__unzip} -@@ -335,7 +336,7 @@ +@@ -336,7 +337,7 @@ package or when debugging this package.\ # "w7.lzdio" lzma-alone level 7, lzma's default # #%_source_payload w9.gzdio @@ -48,9 +48,9 @@ # Algorithm to use for generating file checksum digests on build. # If not specified or 0, MD5 is used. -@@ -465,16 +466,22 @@ - # Undefined, missing or %{nil} will use package content (if available). - %_verify_file_context_path %{__file_context_path} +@@ -435,16 +436,22 @@ package or when debugging this package.\ + # Directories whose contents should be considered as documentation. + %__docdir_path %{_datadir}/doc:%{_datadir}/man:%{_datadir}/info:%{_datadir}/gtk-doc/html:%{?_docdir}:%{?_mandir}:%{?_infodir}:%{?_javadocdir}:/usr/doc:/usr/man:/usr/info:/usr/X11R6/man +# maxnum,cuttime,minnum +# 2009/03/01 (SLES11 GA) @@ -73,9 +73,9 @@ # # Path to file attribute classifications for automatic dependency -@@ -537,10 +544,10 @@ +@@ -507,10 +514,10 @@ package or when debugging this package.\ # Misc BDB tuning options - %__dbi_other mp_mmapsize=128Mb mp_size=64Mb + %__dbi_other mp_mmapsize=128Mb mp_size=1Mb -%_dbi_config %{?__dbi_other} +%_dbi_config %{?__dbi_other} nofsync @@ -86,7 +86,7 @@ #============================================================================== # ---- GPG/PGP/PGP5 signature macros. -@@ -859,7 +866,7 @@ +@@ -809,7 +816,7 @@ package or when debugging this package.\ %_build_vendor %{_host_vendor} %_build_os %{_host_os} %_host @host@ @@ -95,7 +95,7 @@ %_host_cpu @host_cpu@ %_host_vendor @host_vendor@ %_host_os @host_os@ -@@ -1022,6 +1029,183 @@ +@@ -973,6 +980,183 @@ done \ %python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib(1))") %python_version %(%{__python} -c "import sys; sys.stdout.write(sys.version[:3])") @@ -279,7 +279,7 @@ #------------------------------------------------------------------------------ # arch macro for all Intel i?86 compatibile processors # (Note: This macro (and it's analogues) will probably be obsoleted when -@@ -1032,7 +1216,9 @@ +@@ -983,7 +1167,9 @@ done \ #------------------------------------------------------------------------------ # arch macro for all supported ARM processors @@ -290,7 +290,7 @@ #------------------------------------------------------------------------------ # arch macro for all supported Sparc processors -@@ -1072,3 +1258,26 @@ +@@ -1023,3 +1209,26 @@ done \ # \endverbatim #*/ ++++++ nameversioncompare.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,10 +1,10 @@ Also compare the name and not only the version when checking if two packages are the same. rh#104066 ---- ./lib/depends.c.orig 2011-05-12 12:20:01.000000000 +0000 -+++ ./lib/depends.c 2011-05-12 12:26:25.000000000 +0000 -@@ -95,6 +95,24 @@ static rpmdbMatchIterator rpmtsPrunedIte - return mi; +--- ./lib/depends.c.orig 2012-06-01 10:07:12.000000000 +0000 ++++ ./lib/depends.c 2012-06-01 10:16:13.000000000 +0000 +@@ -144,6 +144,24 @@ static int skipColor(rpm_color_t tscolor + return tscolor && color && ocolor && !(color & ocolor); } +static int rpmNameVersionCompare(Header first, Header second) @@ -25,24 +25,17 @@ + return rpmVersionCompare(first, second); +} + - #define skipColor(_tscolor, _color, _ocolor) \ - ((_tscolor) && (_color) && (_ocolor) && !((_color) & (_ocolor))) - -@@ -111,7 +129,7 @@ static void addUpgradeErasures(rpmts ts, + /* Add erase elements for older packages of same color (if any). */ + static int addUpgradeErasures(rpmts ts, rpm_color_t tscolor, + rpmte p, rpm_color_t hcolor, Header h) +@@ -157,8 +175,8 @@ static int addUpgradeErasures(rpmts ts, + if (skipColor(tscolor, hcolor, headerGetNumber(oh, RPMTAG_HEADERCOLOR))) continue; - /* Skip packages that contain identical NEVR. */ +- /* Skip packages that contain identical NEVR. */ - if (rpmVersionCompare(h, oh) == 0) ++ /* Skip packages that contain identical NEVRA. */ + if (rpmNameVersionCompare(h, oh) == 0) continue; - removePackage(ts, oh, p); -@@ -150,7 +168,7 @@ static void addObsoleteErasures(rpmts ts - * If no obsoletes version info is available, match all names. - */ - if (rpmdsEVR(obsoletes) == NULL -- || rpmdsAnyMatchesDep(oh, obsoletes, _rpmds_nopromote)) { -+ || rpmdsNVRMatchesDep(oh, obsoletes, _rpmds_nopromote)) { - char * ohNEVRA = headerGetAsString(oh, RPMTAG_NEVRA); - rpmlog(RPMLOG_DEBUG, " Obsoletes: %s\t\terases %s\n", - rpmdsDNEVR(obsoletes)+2, ohNEVRA); + if (removePackage(ts, oh, p)) { ++++++ nobuildcolor.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,13 +1,13 @@ Disable file coloring for SUSE systems ---- build/rpmfc.c.orig 2011-05-13 12:35:29.000000000 +0000 -+++ build/rpmfc.c 2011-05-13 13:49:37.000000000 +0000 -@@ -1312,7 +1312,7 @@ rpmRC rpmfcGenerateDepends(const rpmSpec +--- build/rpmfc.c.orig 2012-06-01 13:37:51.000000000 +0000 ++++ build/rpmfc.c 2012-06-01 13:37:21.000000000 +0000 +@@ -1304,7 +1304,7 @@ rpmRC rpmfcGenerateDepends(const rpmSpec goto exit; /* Add per-file colors(#files) */ - if (rpmtdFromArgi(&td, RPMTAG_FILECOLORS, fc->fcolor)) { + if (rpmExpandNumeric("%{?_transaction_color}") != 0 && rpmtdFromArgi(&td, RPMTAG_FILECOLORS, fc->fcolor)) { rpm_color_t *fcolor; - assert(rpmtdType(&td) == RPM_INT32_TYPE); /* XXX Make sure only primary (i.e. Elf32/Elf64) colors are added. */ + while ((fcolor = rpmtdNextUint32(&td))) { ++++++ nomagiccheck.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,11 +1,11 @@ Don't let rpm complain about a missing /etc/magic.mgc file ---- build/rpmfc.c.orig 2011-05-13 16:33:20.000000000 +0000 -+++ build/rpmfc.c 2011-05-13 16:33:55.000000000 +0000 -@@ -896,7 +896,7 @@ rpmRC rpmfcClassify(rpmfc fc, ARGV_t arg +--- ./build/rpmfc.c.orig 2012-06-01 13:42:06.000000000 +0000 ++++ ./build/rpmfc.c 2012-06-01 13:42:30.000000000 +0000 +@@ -900,7 +900,7 @@ static int initAttrs(rpmfc fc) + rpmRC rpmfcClassify(rpmfc fc, ARGV_t argv, rpm_mode_t * fmode) { ARGV_t fcav = NULL; - int xx; - int msflags = MAGIC_CHECK | MAGIC_COMPRESS | MAGIC_NO_CHECK_TOKENS; + int msflags = MAGIC_COMPRESS | MAGIC_NO_CHECK_TOKENS; magic_t ms = NULL; ++++++ obsoletesdeptag.diff ++++++ --- ./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, ++++++ platformin.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,10 +1,8 @@ SUSE specific platform changes. -Index: platform.in -=================================================================== ---- platform.in.orig 2011-12-11 09:27:18.000000000 +0100 -+++ platform.in 2011-12-11 09:29:47.564232873 +0100 -@@ -21,7 +21,7 @@ +--- ./platform.in.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./platform.in 2012-06-01 12:42:30.000000000 +0000 +@@ -29,7 +29,7 @@ %_exec_prefix @exec_prefix@ %_bindir @bindir@ %_sbindir @sbindir@ @@ -13,7 +11,7 @@ %_datarootdir @datarootdir@ %_datadir @datadir@ %_sysconfdir @sysconfdir@ -@@ -33,7 +33,7 @@ +@@ -41,7 +41,7 @@ %_oldincludedir @oldincludedir@ %_infodir @infodir@ %_mandir @mandir@ @@ -22,25 +20,25 @@ # Deprecated misspelling, present for backwards compatibility. %_initrddir %{_initddir} -@@ -143,3 +143,21 @@ - @mandrake@%_gamesdir games - @mandrake@%_gamesbindir %{_prefix}/%{_gamesdir} - @mandrake@%_gamesdatadir %{_datadir}/%{_gamesdir} -+@SuSE@#--------------------------------------------------------------------- -+@SuSE@# Expanded at end of %prep -+@SuSE@# -+@SuSE@%__id_u %{__id} -u -+@SuSE@%__chown_Rhf %{__chown} -Rhf -+@SuSE@%__chgrp_Rhf %{__chgrp} -Rhf -+@SuSE@%_fixowner [ `%{__id_u}` = '0' ] && %{__chown_Rhf} root -+@SuSE@%_fixgroup [ `%{__id_u}` = '0' ] && %{__chgrp_Rhf} root -+@SuSE@%_fixperms %{__chmod} -Rf @FIXPERMS@ -+@SuSE@ -+@SuSE@#--------------------------------------------------------------------- -+@SuSE@# Expanded at start of %build -+@SuSE@# -+@SuSE@%__spec_build_pre %{___build_pre}\ -+@SuSE@%{?buildroot: %__rm -rf "$RPM_BUILD_ROOT"\ -+@SuSE@ %__mkdir_p `dirname "$RPM_BUILD_ROOT"`\ -+@SuSE@ %__mkdir "$RPM_BUILD_ROOT"\ -+@SuSE@} +@@ -78,3 +78,21 @@ + @apple@# + @apple@%_use_internal_dependency_generator 0 + @apple@%__so dylib ++@suse@#--------------------------------------------------------------------- ++@suse@# Expanded at end of %prep ++@suse@# ++@suse@%__id_u %{__id} -u ++@suse@%__chown_Rhf %{__chown} -Rhf ++@suse@%__chgrp_Rhf %{__chgrp} -Rhf ++@suse@%_fixowner [ `%{__id_u}` = '0' ] && %{__chown_Rhf} root ++@suse@%_fixgroup [ `%{__id_u}` = '0' ] && %{__chgrp_Rhf} root ++@suse@%_fixperms %{__chmod} -Rf @FIXPERMS@ ++@suse@ ++@suse@#--------------------------------------------------------------------- ++@suse@# Expanded at start of %build ++@suse@# ++@suse@%__spec_build_pre %{___build_pre}\ ++@suse@%{?buildroot: %__rm -rf "$RPM_BUILD_ROOT"\ ++@suse@ %__mkdir_p `dirname "$RPM_BUILD_ROOT"`\ ++@suse@ %__mkdir "$RPM_BUILD_ROOT"\ ++@suse@} ++++++ refreshtestarch.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,25 +1,21 @@ Also test architecture in "refresh" test when not colored. This allows updates to different architectures. ---- ./lib/psm.c.orig 2010-12-21 09:50:23.000000000 +0000 -+++ ./lib/psm.c 2011-05-11 12:47:13.000000000 +0000 -@@ -723,6 +723,7 @@ static rpmRC rpmpsmStage(rpmpsm psm, pkg +--- ./lib/psm.c.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./lib/psm.c 2012-06-01 10:22:24.000000000 +0000 +@@ -680,13 +680,14 @@ void rpmpsmNotify(rpmpsm psm, int what, + */ + static void markReplacedInstance(rpmts ts, rpmte te) + { ++ /* this must match rpmNameVersionCompare in depends.c */ + rpmdbMatchIterator mi = rpmtsInitIterator(ts, RPMDBI_NAME, rpmteN(te), 0); + rpmdbSetIteratorRE(mi, RPMTAG_EPOCH, RPMMIRE_STRCMP, rpmteE(te)); + rpmdbSetIteratorRE(mi, RPMTAG_VERSION, RPMMIRE_STRCMP, rpmteV(te)); + rpmdbSetIteratorRE(mi, RPMTAG_RELEASE, RPMMIRE_STRCMP, rpmteR(te)); ++ rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, rpmteA(te)); + /* XXX shouldn't we also do this on colorless transactions? */ + if (rpmtsColor(ts)) { +- rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, rpmteA(te)); + rpmdbSetIteratorRE(mi, RPMTAG_OS, RPMMIRE_STRCMP, rpmteO(te)); + } - psm->scriptArg = psm->npkgs_installed + 1; - -+ /* this must match rpmNameVersionCompare in depends.c */ - mi = rpmtsInitIterator(ts, RPMDBI_NAME, rpmteN(psm->te), 0); - xx = rpmdbSetIteratorRE(mi, RPMTAG_EPOCH, RPMMIRE_STRCMP, - rpmteE(psm->te)); -@@ -730,9 +731,9 @@ static rpmRC rpmpsmStage(rpmpsm psm, pkg - rpmteV(psm->te)); - xx = rpmdbSetIteratorRE(mi, RPMTAG_RELEASE, RPMMIRE_STRCMP, - rpmteR(psm->te)); -+ xx = rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, -+ rpmteA(psm->te)); - if (tscolor) { -- xx = rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, -- rpmteA(psm->te)); - xx = rpmdbSetIteratorRE(mi, RPMTAG_OS, RPMMIRE_STRCMP, - rpmteO(psm->te)); - } ++++++ remove-translations.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,17 +1,15 @@ -Index: scripts/find-lang.sh -=================================================================== ---- scripts/find-lang.sh.orig -+++ scripts/find-lang.sh -@@ -112,6 +112,23 @@ fi +--- ./scripts/find-lang.sh.orig 2012-06-01 13:28:40.000000000 +0000 ++++ ./scripts/find-lang.sh 2012-06-01 13:30:43.000000000 +0000 +@@ -111,6 +111,23 @@ fi MO_NAME_NEW=$MO_NAME.tmp.$$ rm -f $MO_NAME_NEW +# remove languages we do not yet support - but give out statistics -+find $TOP_DIR/usr/share/locale/ -maxdepth 1 -type d | sed 's:'"$TOP_DIR"/usr/share/locale/'::; /^$/d' | while read dir; do ++find "$TOP_DIR/usr/share/locale/" -maxdepth 1 -type d | sed 's:'"$TOP_DIR"/usr/share/locale/'::; /^$/d' | while read dir; do + if ! rpm -ql filesystem | egrep -q "/usr/share/locale/$dir"$; then + find $TOP_DIR/usr/share/locale/$dir -name *.mo | sed 's:'"$TOP_DIR"'::' | while read file; do -+ echo -n "removing translation $file: " -+ msgunfmt "$TOP_DIR/$file" | msgfmt --statistics -o /dev/null - ++ echo -n "removing translation $file: " ++ msgunfmt "$TOP_DIR/$file" | msgfmt --statistics -o /dev/null - + done + rm -rf $TOP_DIR/usr/share/locale/$dir + fi @@ -23,6 +21,6 @@ + fi +done + - find $TOP_DIR -type f -o -type l|sed ' + find "$TOP_DIR" -type f -o -type l|sed ' s:'"$TOP_DIR"':: '"$ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*\.mo$\):%lang(\2) \1\2\3: ++++++ repackage-nomd5.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:26.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:26.000000000 +0200 @@ -1,31 +1,32 @@ Don't complain about a bad md5 sum for repackaged rpms. ---- ./lib/psm.c.orig 2011-05-11 14:27:32.000000000 +0000 -+++ ./lib/psm.c 2011-05-11 16:32:11.000000000 +0000 -@@ -811,6 +811,7 @@ static rpmRC rpmpsmStage(rpmpsm psm, pkg - case PSM_PROCESS: - if (psm->goal == PKG_INSTALL) { - FD_t payload = NULL; -+ rpmtransFlags oldtsflags; +--- ./lib/psm.c.orig 2012-06-01 13:18:24.000000000 +0000 ++++ ./lib/psm.c 2012-06-01 13:22:48.000000000 +0000 +@@ -813,12 +813,17 @@ static rpmRC rpmpsmStage(rpmpsm psm, pkg + rpmpsmNotify(psm, RPMCALLBACK_INST_PROGRESS, 0); - if (rpmtsFlags(ts) & RPMTRANS_FLAG_JUSTDB) break; + if (rpmfiFC(fi) > 0 && !(rpmtsFlags(ts) & RPMTRANS_FLAG_JUSTDB)) { ++ rpmtransFlags oldtsflags; + FD_t payload = rpmtePayload(psm->te); + if (payload == NULL) { + rc = RPMRC_FAIL; + break; + } -@@ -828,6 +829,9 @@ static rpmRC rpmpsmStage(rpmpsm psm, pkg - break; - } ++ oldtsflags = rpmtsFlags(ts); ++ if (headerIsEntry(fi->h, RPMTAG_REMOVETID)) ++ (void) rpmtsSetFlags(ts, oldtsflags | RPMTRANS_FLAG_NOMD5); ++ + fsmrc = rpmfsmRun(FSM_PKGINSTALL, psm->ts, psm->te, psm->fi, + payload, psm, NULL, &psm->failedFile); + +@@ -827,6 +832,9 @@ static rpmRC rpmpsmStage(rpmpsm psm, pkg + rpmswAdd(rpmtsOp(psm->ts, RPMTS_OP_DIGEST), + fdOp(payload, FDSTAT_DIGEST)); -+ oldtsflags = rpmtsFlags(ts); -+ if (headerIsEntry(fi->h, RPMTAG_REMOVETID)) -+ (void) rpmtsSetFlags(ts, oldtsflags | RPMTRANS_FLAG_NOMD5); - rc = fsmSetup(rpmfiFSM(fi), FSM_PKGINSTALL, ts, psm->te, fi, - payload, NULL, &psm->failedFile); - (void) rpmswAdd(rpmtsOp(ts, RPMTS_OP_UNCOMPRESS), -@@ -835,6 +839,8 @@ static rpmRC rpmpsmStage(rpmpsm psm, pkg - (void) rpmswAdd(rpmtsOp(ts, RPMTS_OP_DIGEST), - fdOp(payload, FDSTAT_DIGEST)); - xx = fsmTeardown(rpmfiFSM(fi)); -+ if (headerIsEntry(fi->h, RPMTAG_REMOVETID)) -+ (void) rpmtsSetFlags(ts, oldtsflags); ++ if (headerIsEntry(fi->h, RPMTAG_REMOVETID)) ++ (void) rpmtsSetFlags(ts, oldtsflags); ++ + Fclose(payload); + } - saveerrno = errno; /* XXX FIXME: Fclose with libio destroys errno */ - xx = Fclose(payload); ++++++ rpm-4.9.1.2.tar.bz2 -> rpm-4.10.0.tar.bz2 ++++++ ++++ 220302 lines of diff (skipped) ++++++ rpm-beecrypt.diff ++++++ ++++ 1842 lines (skipped) ++++ between /work/SRC/openSUSE:Factory/rpm/rpm-beecrypt.diff ++++ and /work/SRC/openSUSE:Factory/.rpm.new/rpm-beecrypt.diff ++++++ rpm-suse_macros ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:27.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:27.000000000 +0200 @@ -87,22 +87,6 @@ fi \ %nil -# macro: run_suseconfig_fonts -# call SuSEconfig modules necessary for font setup -# options: -# -c (the fonts are CJK fonts, also do setup which is only needed -# for CJK) -%run_suseconfig_fonts(c) \ - if test -z "$YAST_IS_RUNNING" ; then \ - if test -x /sbin/conf.d/SuSEconfig.fonts ; then \ - %run_suseconfig -m fonts \ - fi \ - %{-c:if test -x /sbin/conf.d/SuSEconfig.ghostscript-cjk ; then \ - %run_suseconfig -m ghostscript-cjk \ - fi} \ - fi \ - %nil - %set_permissions(f:) \ if [ -x /usr/bin/chkstat ]; then \ /usr/bin/chkstat -n --set --system %{**} \ ++++++ rpmrc.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:27.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:27.000000000 +0200 @@ -1,5 +1,5 @@ ---- rpmrc.in.orig 2011-09-30 08:38:11.410453344 +0200 -+++ rpmrc.in 2011-09-30 14:10:00.149253193 +0200 +--- ./rpmrc.in.orig 2012-04-20 06:46:30.000000000 +0000 ++++ ./rpmrc.in 2012-06-01 12:46:22.000000000 +0000 @@ -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,15 +41,16 @@ +@@ -41,16 +41,17 @@ optflags: sparc64v -O2 -g -m64 -mtune=ni optflags: m68k -O2 -g -fomit-frame-pointer @@ -37,6 +37,7 @@ -optflags: ppciseries -O2 -g -fsigned-char -optflags: ppcpseries -O2 -g -fsigned-char -optflags: ppc64 -O2 -g -fsigned-char +-optflags: ppc64p7 -O3 -mtune=power7 -mcpu=power7 -g -fsigned-char +optflags: ppc -O2 -g -m32 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables +optflags: ppc8260 -O2 -g -m32 +optflags: ppc8560 -O2 -g -m32 @@ -44,13 +45,14 @@ +optflags: ppciseries -O2 -g -m32 +optflags: ppcpseries -O2 -g -m32 +optflags: ppc64 -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables ++optflags: ppc64p7 -O3 -mtune=power7 -mcpu=power7 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables optflags: parisc -O2 -g -mpa-risc-1-0 +optflags: hppa -O2 -g -mpa-risc-1-0 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 -@@ -66,6 +67,7 @@ +@@ -67,6 +68,7 @@ optflags: armv5tel -O2 -g -march=armv5te optflags: armv5tejl -O2 -g -march=armv5te optflags: armv6l -O2 -g -march=armv6 optflags: armv7l -O2 -g -march=armv7 @@ -58,7 +60,7 @@ optflags: atarist -O2 -g -fomit-frame-pointer optflags: atariste -O2 -g -fomit-frame-pointer -@@ -75,8 +77,8 @@ +@@ -76,8 +78,8 @@ optflags: atariclone -O2 -g -fomit-frame optflags: milan -O2 -g -fomit-frame-pointer optflags: hades -O2 -g -fomit-frame-pointer @@ -69,7 +71,7 @@ optflags: sh3 -O2 -g optflags: sh4 -O2 -g -mieee -@@ -140,6 +142,7 @@ +@@ -141,6 +143,7 @@ arch_canon: armv5tel: armv5tel 12 arch_canon: armv5tejl: armv5tejl 12 arch_canon: armv6l: armv6l 12 arch_canon: armv7l: armv7l 12 @@ -77,7 +79,7 @@ arch_canon: m68kmint: m68kmint 13 arch_canon: atarist: m68kmint 13 -@@ -200,17 +203,17 @@ +@@ -202,17 +205,17 @@ os_canon: MacOSX: macosx 21 ############################################################# # For a given uname().machine, the default build arch @@ -103,15 +105,15 @@ buildarchtranslate: i486: i386 buildarchtranslate: i386: i386 -@@ -239,6 +242,7 @@ - buildarchtranslate: ppcpseries: ppc +@@ -242,6 +245,7 @@ buildarchtranslate: ppcpseries: ppc buildarchtranslate: ppc64iseries: ppc64 buildarchtranslate: ppc64pseries: ppc64 + buildarchtranslate: ppc64p7: ppc64 +buildarchtranslate: powerpc64: ppc64 buildarchtranslate: armv3l: armv3l buildarchtranslate: armv4b: armv4b -@@ -248,6 +252,7 @@ +@@ -251,6 +255,7 @@ buildarchtranslate: armv5tel: armv5tel buildarchtranslate: armv5tejl: armv5tejl buildarchtranslate: armv6l: armv6l buildarchtranslate: armv7l: armv7l @@ -119,7 +121,7 @@ buildarchtranslate: atarist: m68kmint buildarchtranslate: atariste: m68kmint -@@ -270,6 +275,15 @@ +@@ -273,6 +278,15 @@ buildarchtranslate: sh3: sh3 buildarchtranslate: sh4: sh4 buildarchtranslate: sh4a: sh4 @@ -135,7 +137,7 @@ ############################################################# # Architecture compatibility -@@ -325,14 +339,19 @@ +@@ -329,14 +343,19 @@ arch_compat: mipsel: noarch arch_compat: hppa2.0: hppa1.2 arch_compat: hppa1.2: hppa1.1 arch_compat: hppa1.1: hppa1.0 @@ -157,7 +159,7 @@ arch_compat: armv4tl: armv4l arch_compat: armv4l: armv3l arch_compat: armv3l: noarch -@@ -349,9 +368,9 @@ +@@ -353,9 +372,9 @@ arch_compat: i370: noarch arch_compat: s390: noarch arch_compat: s390x: s390 noarch @@ -169,7 +171,7 @@ arch_compat: amd64: x86_64 athlon noarch arch_compat: ia32e: x86_64 athlon noarch -@@ -433,6 +452,7 @@ +@@ -438,6 +457,7 @@ buildarch_compat: mips: noarch buildarch_compat: mipsel: noarch buildarch_compat: armv4b: noarch @@ -177,7 +179,7 @@ buildarch_compat: armv7l: armv6l buildarch_compat: armv6l: armv5tejl buildarch_compat: armv5tejl: armv5tel -@@ -444,7 +464,8 @@ +@@ -449,7 +469,8 @@ buildarch_compat: armv3l: noarch buildarch_compat: hppa2.0: hppa1.2 buildarch_compat: hppa1.2: hppa1.1 buildarch_compat: hppa1.1: hppa1.0 ++++++ rpmrctests.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:27.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:27.000000000 +0200 @@ -1,57 +1,32 @@ Patch machine detection code: detect transmeta, rename parisc to hppa. [#52713] ---- ./lib/rpmrc.c.orig 2010-12-03 12:11:57.000000000 +0000 -+++ ./lib/rpmrc.c 2011-05-11 12:48:02.000000000 +0000 -@@ -1,9 +1,6 @@ - #include "system.h" - - #include <stdarg.h> --#if defined(__linux__) && defined(__powerpc__) --#include <setjmp.h> --#endif - - #if HAVE_SYS_UTSNAME_H - #include <sys/utsname.h> -@@ -788,6 +785,14 @@ static inline int RPMClass(void) +--- ./lib/rpmrc.c.orig 2012-06-01 10:38:24.000000000 +0000 ++++ ./lib/rpmrc.c 2012-06-01 10:44:59.000000000 +0000 +@@ -786,6 +786,14 @@ static inline int RPMClass(void) cpu = (tfms>>8)&15; + if (cpu == 5 -+ && cpuid_ecx(0)=='68xM' -+ && cpuid_edx(0)=='Teni' ++ && cpuid_ecx(0) == '68xM' ++ && cpuid_edx(0) == 'Teni' + && (cpuid_edx(1) & ((1<<8)|(1<<15))) == ((1<<8)|(1<<15))) { + sigaction(SIGILL, &oldsa, NULL); -+ return 6; /* has CX8 and CMOV */ ++ return 6; /* has CX8 and CMOV */ + } + sigaction(SIGILL, &oldsa, NULL); if (cpu < 6) -@@ -924,15 +929,6 @@ static int is_geode() - } - #endif - --#if defined(__linux__) && defined(__powerpc__) --static jmp_buf mfspr_jmpbuf; -- --static void mfspr_ill(int notused) --{ -- longjmp(mfspr_jmpbuf, -1); --} --#endif -- - /** - */ - static void defaultMachine(const char ** arch, -@@ -1059,6 +1055,11 @@ static void defaultMachine(const char ** - /* big endian */ +@@ -1023,6 +1031,12 @@ static void defaultMachine(const char ** strcpy(un.machine, "mips"); # endif -+ /* in linux, lets rename parisc to hppa */ + +#if defined(__linux__) -+ if (!strcmp(un.machine,"parisc")) -+ strcpy(un.machine,"hppa"); ++ /* in linux, lets rename parisc to hppa */ ++ if (rstreq(un.machine, "parisc")) ++ strcpy(un.machine, "hppa"); +#endif - ++ # if defined(__hpux) && defined(_SC_CPU_VERSION) { + # if !defined(CPU_PA_RISC1_2) ++++++ suspendlock.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:27.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:27.000000000 +0200 @@ -2,9 +2,9 @@ read access in scriptlets. Only needed for DB_PRIVATE (aka global) locking. ---- ./lib/backend/db3.c.orig 2011-05-12 10:24:20.000000000 +0000 -+++ ./lib/backend/db3.c 2011-05-12 10:26:14.000000000 +0000 -@@ -640,3 +640,59 @@ int dbiOpen(rpmdb rdb, rpmDbiTagVal rpmt +--- ./lib/backend/db3.c.orig 2012-06-01 10:50:11.000000000 +0000 ++++ ./lib/backend/db3.c 2012-06-01 10:50:19.000000000 +0000 +@@ -628,3 +628,59 @@ int dbiOpen(rpmdb rdb, rpmDbiTagVal rpmt return rc; } @@ -64,11 +64,11 @@ + return rc; +} + ---- ./lib/backend/dbi.h.orig 2010-12-21 09:48:21.000000000 +0000 -+++ ./lib/backend/dbi.h 2011-05-12 10:24:57.000000000 +0000 -@@ -263,6 +263,24 @@ int dbiFlags(dbiIndex dbi); - RPM_GNUC_INTERNAL - const char * dbiName(dbiIndex dbi); +--- ./lib/backend/dbi.h.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./lib/backend/dbi.h 2012-06-01 10:53:43.000000000 +0000 +@@ -90,6 +90,24 @@ struct dbiIndex_s { + extern "C" { + #endif +/** \ingroup dbi + * Suspend the exclusive lock on the dbi @@ -88,27 +88,27 @@ +RPM_GNUC_INTERNAL +int dbiResumeDBLock(dbiIndex dbi, unsigned int flags); + - #ifdef __cplusplus - } - #endif ---- ./lib/psm.c.orig 2011-05-12 10:23:47.000000000 +0000 -+++ ./lib/psm.c 2011-05-12 10:24:57.000000000 +0000 -@@ -412,10 +412,12 @@ static rpmRC runScript(rpmpsm psm, ARGV_ - script->tag != RPMTAG_VERIFYSCRIPT); - int selinux = !(rpmtsFlags(psm->ts) & RPMTRANS_FLAG_NOCONTEXTS); + + RPM_GNUC_INTERNAL + /* Globally enable/disable fsync in the backend */ +--- ./lib/psm.c.orig 2012-06-01 10:50:11.000000000 +0000 ++++ ./lib/psm.c 2012-06-01 10:51:34.000000000 +0000 +@@ -419,10 +419,12 @@ static rpmRC runScript(rpmpsm psm, ARGV_ + if (sfd == NULL) + sfd = rpmtsScriptFd(psm->ts); + rpmtsSuspendResumeDBLock(psm->ts, 0); rpmswEnter(rpmtsOp(psm->ts, RPMTS_OP_SCRIPTLETS), 0); - rc = rpmScriptRun(script, arg1, arg2, rpmtsScriptFd(psm->ts), + rc = rpmScriptRun(script, arg1, arg2, sfd, prefixes, warn_only, selinux); rpmswExit(rpmtsOp(psm->ts, RPMTS_OP_SCRIPTLETS), 0); + rpmtsSuspendResumeDBLock(psm->ts, 1); - /* - * Notify callback for all errors. "total" abused for warning/error, ---- ./lib/rpmdb.c.orig 2011-05-12 10:23:47.000000000 +0000 -+++ ./lib/rpmdb.c 2011-05-12 10:24:57.000000000 +0000 -@@ -674,6 +674,12 @@ int rpmdbSync(rpmdb db) + /* Map warn-only errors to "notfound" for script stop callback */ + stoprc = (rc != RPMRC_OK && warn_only) ? RPMRC_NOTFOUND : rc; +--- ./lib/rpmdb.c.orig 2012-06-01 10:50:11.000000000 +0000 ++++ ./lib/rpmdb.c 2012-06-01 10:50:19.000000000 +0000 +@@ -769,6 +769,12 @@ int rpmdbSync(rpmdb db) return dbiForeach(db->_dbi, dbiSync, 0); } @@ -121,8 +121,8 @@ static rpmdb newRpmdb(const char * root, const char * home, int mode, int perms, int flags) { ---- ./lib/rpmts.c.orig 2010-12-22 11:17:20.000000000 +0000 -+++ ./lib/rpmts.c 2011-05-12 10:24:57.000000000 +0000 +--- ./lib/rpmts.c.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./lib/rpmts.c 2012-06-01 10:50:19.000000000 +0000 @@ -95,6 +95,11 @@ int rpmtsOpenDB(rpmts ts, int dbmode) return rc; } @@ -135,8 +135,8 @@ int rpmtsInitDB(rpmts ts, int dbmode) { rpmlock lock = rpmtsAcquireLock(ts); ---- ./lib/rpmts.h.orig 2010-12-21 09:50:50.000000000 +0000 -+++ ./lib/rpmts.h 2011-05-12 10:24:57.000000000 +0000 +--- ./lib/rpmts.h.orig 2012-03-20 08:07:25.000000000 +0000 ++++ ./lib/rpmts.h 2012-06-01 10:50:19.000000000 +0000 @@ -423,6 +423,8 @@ rpmdb rpmtsGetRdb(rpmts ts); void * rpmtsNotify(rpmts ts, rpmte te, rpmCallbackType what, rpm_loff_t amount, rpm_loff_t total); ++++++ waitlock.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:27.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:27.000000000 +0200 @@ -1,9 +1,9 @@ Fix global (DB_PRIVATE) lock code: fix recursion counter, retry failed lock operations for up to 3 minutes. ---- ./lib/backend/db3.c.orig 2011-03-02 06:40:10.000000000 +0000 -+++ ./lib/backend/db3.c 2011-05-12 10:24:20.000000000 +0000 -@@ -432,6 +432,8 @@ int dbiVerify(dbiIndex dbi, unsigned int +--- ./lib/backend/db3.c.orig 2012-05-04 09:47:17.000000000 +0000 ++++ ./lib/backend/db3.c 2012-06-01 10:47:01.000000000 +0000 +@@ -422,6 +422,8 @@ int dbiVerify(dbiIndex dbi, unsigned int return rc; } @@ -12,7 +12,7 @@ int dbiClose(dbiIndex dbi, unsigned int flags) { rpmdb rdb = dbi->dbi_rpmdb; -@@ -451,6 +453,8 @@ int dbiClose(dbiIndex dbi, unsigned int +@@ -439,6 +441,8 @@ int dbiClose(dbiIndex dbi, unsigned int rpmlog(RPMLOG_DEBUG, "closed db index %s/%s\n", dbhome, dbi->dbi_file); @@ -20,8 +20,8 @@ + _lockdbfd--; } - xx = db_fini(rdb, dbhome ? dbhome : ""); -@@ -490,6 +494,7 @@ static int dbiFlock(dbiIndex dbi, int mo + db_fini(rdb, dbhome ? dbhome : ""); +@@ -478,6 +482,7 @@ static int dbiFlock(dbiIndex dbi, int mo rc = 1; } else { const char *dbhome = rpmdbHome(dbi->dbi_rpmdb); @@ -29,7 +29,7 @@ struct flock l; memset(&l, 0, sizeof(l)); l.l_whence = 0; -@@ -499,20 +504,38 @@ static int dbiFlock(dbiIndex dbi, int mo +@@ -487,20 +492,38 @@ static int dbiFlock(dbiIndex dbi, int mo ? F_RDLCK : F_WRLCK; l.l_pid = 0; @@ -82,7 +82,7 @@ } } return rc; -@@ -529,7 +552,6 @@ int dbiOpen(rpmdb rdb, rpmDbiTagVal rpmt +@@ -517,7 +540,6 @@ int dbiOpen(rpmdb rdb, rpmDbiTagVal rpmt DB * db = NULL; DBTYPE dbtype = DB_UNKNOWN; uint32_t oflags; @@ -90,7 +90,7 @@ if (dbip) *dbip = NULL; -@@ -603,7 +625,10 @@ int dbiOpen(rpmdb rdb, rpmDbiTagVal rpmt +@@ -591,7 +613,10 @@ int dbiOpen(rpmdb rdb, rpmDbiTagVal rpmt dbi->dbi_db = db; dbi->dbi_oflags = oflags; ++++++ weakdeps.diff ++++++ --- /var/tmp/diff_new_pack.3d7Kql/_old 2012-09-22 09:25:27.000000000 +0200 +++ /var/tmp/diff_new_pack.3d7Kql/_new 2012-09-22 09:25:27.000000000 +0200 @@ -14,9 +14,9 @@ Needs extcond.diff for query operations. ---- ./build/parsePreamble.c.orig 2011-01-25 13:52:28.000000000 +0000 -+++ ./build/parsePreamble.c 2011-05-11 14:09:07.000000000 +0000 -@@ -310,6 +310,8 @@ static struct tokenBits_s const installS +--- ./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 { "verify", RPMSENSE_SCRIPT_VERIFY }, { "pretrans", RPMSENSE_PRETRANS }, { "posttrans", RPMSENSE_POSTTRANS }, @@ -25,9 +25,9 @@ { NULL, 0 } }; -@@ -790,6 +792,18 @@ static int handlePreambleTag(rpmSpec spe - if ((rc = parseRCPOT(spec, pkg, field, tag, 0, tagflags))) - return rc; +@@ -816,6 +818,18 @@ static rpmRC handlePreambleTag(rpmSpec s + if (parseRCPOT(spec, pkg, field, tag, 0, tagflags)) + goto exit; break; + case RPMTAG_SUGGESTSFLAGS: + case RPMTAG_ENHANCESFLAGS: @@ -44,7 +44,7 @@ case RPMTAG_EXCLUDEARCH: case RPMTAG_EXCLUSIVEARCH: case RPMTAG_EXCLUDEOS: -@@ -895,6 +909,14 @@ static struct PreambleRec_s const preamb +@@ -924,6 +938,14 @@ static struct PreambleRec_s const preamb {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,8 +59,8 @@ {0, 0, 0, 0} }; ---- ./build/parseReqs.c.orig 2010-12-13 14:01:56.000000000 +0000 -+++ ./build/parseReqs.c 2011-05-11 14:16:43.000000000 +0000 +--- ./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 nametag = RPMTAG_CONFLICTNAME; h = spec->buildRestrictions; @@ -82,8 +82,8 @@ } for (r = field; *r != '\0'; r = re) { ---- ./build/reqprov.c.orig 2010-12-13 14:01:56.000000000 +0000 -+++ ./build/reqprov.c 2011-05-11 14:15:02.000000000 +0000 +--- ./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, indextag = RPMTAG_TRIGGERINDEX; extra = Flags & RPMSENSE_TRIGGER; @@ -101,9 +101,9 @@ case RPMTAG_REQUIRENAME: default: tagN = RPMTAG_REQUIRENAME; ---- ./build/rpmfc.c.orig 2011-02-28 09:57:21.000000000 +0000 -+++ ./build/rpmfc.c 2011-05-11 13:58:33.000000000 +0000 -@@ -1075,6 +1075,12 @@ static struct DepMsg_s depMsgs[] = { +--- ./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[] = { { "Obsoletes", { "%{?__find_obsoletes}", NULL, NULL, NULL }, RPMTAG_OBSOLETENAME, RPMTAG_OBSOLETEVERSION, RPMTAG_OBSOLETEFLAGS, 0, -1 }, @@ -117,7 +117,7 @@ }; @@ -1160,6 +1166,14 @@ static rpmRC rpmfcGenerateDependsHelper( - failnonzero = 0; + continue; tagflags = RPMSENSE_FIND_REQUIRES; break; + case RPMTAG_ENHANCESFLAGS: @@ -131,13 +131,13 @@ default: continue; break; ---- ./lib/formats.c.orig 2011-01-25 13:52:28.000000000 +0000 -+++ ./lib/formats.c 2011-05-11 14:02:09.000000000 +0000 -@@ -560,6 +560,24 @@ static char * depflagsFormat(rpmtd td, c +--- ./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) return val; } -+static char * depflag_strongFormat(rpmtd td, char * formatPrefix) ++static char * depflag_strongFormat(rpmtd td) +{ + char * val = NULL; + @@ -145,12 +145,7 @@ + val = xstrdup(_("(not a number)")); + } else { + uint64_t anint = rpmtdGetNumber(td); -+ char buf[10]; -+ buf[0] = '\0'; -+ if (anint & RPMSENSE_STRONG) -+ strcat(buf, "strong"); -+ strcat(formatPrefix, "s"); -+ rasprintf(&val, formatPrefix, buf); ++ val = xstrdup(anint & RPMSENSE_STRONG ? "strong" : ""); + } + return val; +} @@ -158,7 +153,7 @@ /** * Return tag container array size. * @param td tag data container -@@ -672,6 +690,7 @@ static const struct headerFormatFunc_s r +@@ -587,6 +600,7 @@ static const struct headerFormatFunc_s r { RPMTD_FORMAT_VFLAGS, "vflags", vflagsFormat }, { RPMTD_FORMAT_EXPAND, "expand", expandFormat }, { RPMTD_FORMAT_FSTATUS, "fstatus", fstatusFormat }, @@ -166,8 +161,8 @@ { -1, NULL, NULL } }; ---- ./lib/rpmds.c.orig 2011-02-15 13:04:04.000000000 +0000 -+++ ./lib/rpmds.c 2011-05-11 13:58:33.000000000 +0000 +--- ./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, t = "Trigger"; evr = RPMTAG_TRIGGERVERSION; @@ -179,8 +174,8 @@ } else { rc = 1; } ---- ./lib/rpmds.h.orig 2011-05-11 09:15:33.000000000 +0000 -+++ ./lib/rpmds.h 2011-05-11 14:01:07.000000000 +0000 +--- ./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 { RPMSENSE_RPMLIB = (1 << 24), /*!< rpmlib(feature) dependency. */ RPMSENSE_TRIGGERPREIN = (1 << 25), /*!< %triggerprein dependency. */ @@ -198,11 +193,11 @@ RPMSENSE_RPMLIB | \ RPMSENSE_KEYRING | \ RPMSENSE_PRETRANS | \ ---- ./lib/rpmtag.h.orig 2010-12-13 14:01:56.000000000 +0000 -+++ ./lib/rpmtag.h 2011-05-11 13:58:33.000000000 +0000 +--- ./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 { - RPMTAG_PRETRANSPROG = 1153, /* s */ - RPMTAG_POSTTRANSPROG = 1154, /* s */ + RPMTAG_PRETRANSPROG = 1153, /* s[] */ + RPMTAG_POSTTRANSPROG = 1154, /* s[] */ RPMTAG_DISTTAG = 1155, /* s */ - RPMTAG_SUGGESTSNAME = 1156, /* s[] extension (unimplemented) */ -#define RPMTAG_SUGGESTS RPMTAG_SUGGESTSNAME /* s[] (unimplemented) */ @@ -223,9 +218,9 @@ RPMTAG_PRIORITY = 1162, /* i[] extension placeholder (unimplemented) */ RPMTAG_CVSID = 1163, /* s (unimplemented) */ #define RPMTAG_SVNID RPMTAG_CVSID /* s (unimplemented) */ ---- ./lib/rpmtd.h.orig 2010-12-03 12:11:57.000000000 +0000 -+++ ./lib/rpmtd.h 2011-05-11 14:00:06.000000000 +0000 -@@ -220,6 +220,7 @@ typedef enum rpmtdFormats_e { +--- ./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 { 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) */ @@ -233,9 +228,9 @@ } rpmtdFormats; /** \ingroup rpmtd ---- ./python/rpmmodule.c.orig 2010-12-03 12:11:57.000000000 +0000 -+++ ./python/rpmmodule.c 2011-05-11 14:19:37.000000000 +0000 -@@ -376,6 +376,7 @@ static int initModule(PyObject *m) +--- ./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) REGISTER_ENUM(RPMSENSE_RPMLIB); REGISTER_ENUM(RPMSENSE_TRIGGERPREIN); REGISTER_ENUM(RPMSENSE_KEYRING); @@ -243,9 +238,9 @@ REGISTER_ENUM(RPMSENSE_CONFIG); REGISTER_ENUM(RPMTRANS_FLAG_TEST); ---- ./rpmpopt.in.orig 2011-01-11 07:04:51.000000000 +0000 -+++ ./rpmpopt.in 2011-05-11 14:18:47.000000000 +0000 -@@ -65,6 +65,22 @@ rpm alias --requires --qf \ +--- ./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 \ --POPTdesc=$"list capabilities required by package(s)" rpm alias -R --requires @@ -268,3 +263,27 @@ 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 + DISTURL + DSAHEADER + E ++ENHANCES ++ENHANCESFLAGS ++ENHANCESNAME ++ENHANCESVERSION + EPOCH + EPOCHNUM + EVR +@@ -219,6 +223,10 @@ SOURCE + SOURCEPACKAGE + SOURCEPKGID + SOURCERPM ++SUGGESTS ++SUGGESTSFLAGS ++SUGGESTSNAME ++SUGGESTSVERSION + SUMMARY + TRIGGERCONDS + TRIGGERFLAGS -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org