Hello community,

here is the log from the commit of package build for openSUSE:Factory checked 
in at 2018-01-29 14:54:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/build (Old)
 and      /work/SRC/openSUSE:Factory/.build.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "build"

Mon Jan 29 14:54:50 2018 rev:112 rq:569349 version:20180124

Changes:
--------
--- /work/SRC/openSUSE:Factory/build/build.changes      2017-11-30 
12:32:00.751106385 +0100
+++ /work/SRC/openSUSE:Factory/.build.new/build.changes 2018-01-29 
14:54:51.989785343 +0100
@@ -1,0 +2,5 @@
+Wed Jan 24 16:04:35 UTC 2018 - adr...@suse.de
+
+- Fix picking of right changes file for changelog generation (boo#1077145)
+
+-------------------------------------------------------------------
@@ -685,0 +691,5 @@
+
+-------------------------------------------------------------------
+Thu Jan 20 10:18:09 UTC 2011 - lnus...@suse.de
+
+- force use of bsdtar for VMs (bnc#665768, CVE-2010-4226)

Old:
----
  obs-build-20171128.tar.gz

New:
----
  obs-build-20180124.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ build-mkbaselibs-sle.spec ++++++
--- /var/tmp/diff_new_pack.yW1uEV/_old  2018-01-29 14:54:52.841745541 +0100
+++ /var/tmp/diff_new_pack.yW1uEV/_new  2018-01-29 14:54:52.845745353 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package build-mkbaselibs-sle
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,7 @@
 Summary:        Tools to generate base lib packages
 License:        GPL-2.0+
 Group:          Development/Tools/Building
-Version:        20171128
+Version:        20180124
 Release:        0
 #!BuildIgnore:  build-mkbaselibs
 #!BuildIgnore:  build-mkbaselibs-sle
@@ -45,13 +45,13 @@
 %build
 
 %install
-install -m 0755 -d $RPM_BUILD_ROOT/usr/lib/build
+install -m 0755 -d %{buildroot}/usr/lib/build
 install -m 0755 mkbaselibs \
-                $RPM_BUILD_ROOT/usr/lib/build/mkbaselibs
+                %{buildroot}/usr/lib/build/mkbaselibs
 install -m 0644 baselibs_configs/baselibs_global-deb.conf \
-                $RPM_BUILD_ROOT/usr/lib/build/baselibs_global-deb.conf
+                %{buildroot}/usr/lib/build/baselibs_global-deb.conf
 install -m 0644 baselibs_configs/baselibs_global.conf \
-                $RPM_BUILD_ROOT/usr/lib/build/baselibs_global.conf
+                %{buildroot}/usr/lib/build/baselibs_global.conf
 
 %files
 %defattr(-,root,root)

++++++ build.spec ++++++
--- /var/tmp/diff_new_pack.yW1uEV/_old  2018-01-29 14:54:52.865744420 +0100
+++ /var/tmp/diff_new_pack.yW1uEV/_new  2018-01-29 14:54:52.865744420 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package build
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -22,7 +22,7 @@
 Summary:        A Script to Build SUSE Linux RPMs
 License:        GPL-2.0+ and GPL-2.0
 Group:          Development/Tools/Building
-Version:        20171128
+Version:        20180124
 Release:        0
 Source:         obs-build-%{version}.tar.gz
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
@@ -124,18 +124,18 @@
 %install
 # initvm
 %if 0%{?suse_version}
-make DESTDIR=$RPM_BUILD_ROOT initvm-install
-strip $RPM_BUILD_ROOT/usr/lib/build/initvm.*
+make DESTDIR=%{buildroot} initvm-install
+strip %{buildroot}/usr/lib/build/initvm.*
 export NO_BRP_STRIP_DEBUG="true"
-chmod 0644 $RPM_BUILD_ROOT/usr/lib/build/initvm.*
+chmod 0644 %{buildroot}/usr/lib/build/initvm.*
 %endif
 
 # main
-make DESTDIR=$RPM_BUILD_ROOT install
+make DESTDIR=%{buildroot} install
 
 # tweak default config on suse
 %if 0%{?suse_version}
-cd $RPM_BUILD_ROOT/usr/lib/build/configs/
+cd %{buildroot}/usr/lib/build/configs/
 SUSE_V=%{?suse_version}
 SLE_V=%{?sle_version}
 %if 0%{?sle_version} && 0%{?is_opensuse} && %suse_version == 1315
@@ -164,7 +164,7 @@
 
 # tweak baselibs config on suse
 %if 0%{?suse_version}
-cd $RPM_BUILD_ROOT/usr/lib/build
+cd %{buildroot}/usr/lib/build
 %if %suse_version == 1500
 # SLE 15 / Leap 15
 ln -sf baselibs_configs/baselibs_global-sle15.conf baselibs_global.conf
@@ -181,12 +181,12 @@
   echo "WARNING: Not building as root, tests did not run!"
   exit 0
 fi
-if [ ! -f "$RPM_BUILD_ROOT/usr/lib/build/configs/default.conf" ]; then
+if [ ! -f "%{buildroot}/usr/lib/build/configs/default.conf" ]; then
   echo "WARNING: No default config, tests did not run!"
   exit 0
 fi
 # get back the default.conf link
-cp -av $RPM_BUILD_ROOT/usr/lib/build/configs/default.conf configs/
+cp -av %{buildroot}/usr/lib/build/configs/default.conf configs/
 # do not get confused when building this already with build:
 export BUILD_IGNORE_2ND_STAGE=1
 # use our own build code

++++++ PKGBUILD ++++++
--- /var/tmp/diff_new_pack.yW1uEV/_old  2018-01-29 14:54:52.897742925 +0100
+++ /var/tmp/diff_new_pack.yW1uEV/_new  2018-01-29 14:54:52.901742738 +0100
@@ -1,5 +1,5 @@
 pkgname=build
-pkgver=20171128
+pkgver=20180124
 pkgrel=0
 pkgdesc="Build packages in sandbox"
 arch=('i686' 'x86_64')

++++++ build.dsc ++++++
--- /var/tmp/diff_new_pack.yW1uEV/_old  2018-01-29 14:54:52.933741243 +0100
+++ /var/tmp/diff_new_pack.yW1uEV/_new  2018-01-29 14:54:52.937741056 +0100
@@ -1,6 +1,6 @@
 Format: 1.0
 Source: build
-Version: 20171128
+Version: 20180124
 Binary: build
 Maintainer: Adrian Schroeter <adr...@suse.de>
 Architecture: all

++++++ debian.changelog ++++++
--- /var/tmp/diff_new_pack.yW1uEV/_old  2018-01-29 14:54:52.957740122 +0100
+++ /var/tmp/diff_new_pack.yW1uEV/_new  2018-01-29 14:54:52.961739935 +0100
@@ -1,4 +1,4 @@
-build (20171128) unstable; urgency=low
+build (20180124) unstable; urgency=low
 
   * Update to current git trunk
     - add sles11sp2 build config and adapt autodetection

++++++ obs-build-20171128.tar.gz -> obs-build-20180124.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/Build/Rpm.pm 
new/obs-build-20180124/Build/Rpm.pm
--- old/obs-build-20171128/Build/Rpm.pm 2017-11-28 14:28:12.000000000 +0100
+++ new/obs-build-20180124/Build/Rpm.pm 2018-01-24 17:02:47.000000000 +0100
@@ -1262,6 +1262,31 @@
   return $r;
 }
 
+my @testcaseops = ('', '&', '|', '<IF>', '<UNLESS>', '<ELSE>', '+', '-');
+
+sub testcaseformat_rec {
+  my ($r, $addparens) = @_;
+  my $op = $r->[0];
+  return $r->[1] unless $op;
+  my $top = $testcaseops[$op];
+  my $r1 = testcaseformat_rec($r->[1], 1);
+  if (($op == 3 || $op == 4) && @$r == 4) {
+    $r1 = "$r1 $top " . testcaseformat_rec($r->[2], 1);
+    $top = 'ELSE';
+  }
+  my $addparens2 = 1;
+  $addparens2 = 0 if $r->[2]->[0] == $op && ($op == 1 || $op == 2 || $op == 6);
+  my $r2 = testcaseformat_rec($r->[-1], $addparens2);
+  return $addparens ? "($r1 $top $r2)" : "$r1 $top $r2";
+}
+
+sub testcaseformat {
+  my ($dep) = @_;
+  my $r = parse_rich_dep($dep);
+  return $dep unless $r;
+  return testcaseformat_rec($r);
+}
+
 sub shiftrich {
   my ($s) = @_;
   # FIXME: do this right!
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/Build/Rpmmd.pm 
new/obs-build-20180124/Build/Rpmmd.pm
--- old/obs-build-20171128/Build/Rpmmd.pm       2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/Build/Rpmmd.pm       2018-01-24 17:02:47.000000000 
+0100
@@ -22,6 +22,8 @@
 
 use strict;
 
+use Build::Rpm;
+
 use XML::Parser;
 
 sub generic_parse {
@@ -186,6 +188,7 @@
     $evr .= "-$attr{'rel'}" if defined $attr{'rel'};
     $dep .= " $flagmap{$attr{'flags'}} $evr";
   }
+  $dep = Build::Rpm::testcaseformat($dep) if ($dep =~ /^\(/) && ($c->[0]->[5] 
|| {})->{'testcaseformat'};
   my $data = $c->[0]->[4];
   push @{$data->{$h->{'_tag'}}}, $dep;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/Build/SimpleXML.pm 
new/obs-build-20180124/Build/SimpleXML.pm
--- old/obs-build-20171128/Build/SimpleXML.pm   2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/Build/SimpleXML.pm   2018-01-24 17:02:47.000000000 
+0100
@@ -27,11 +27,14 @@
 # must not rely on external libraries
 #
 sub parse {
-  my ($xml) = @_;
+  my ($xml, %opts) = @_;
 
+  my $record = $opts{'record'};
+  my $order = $opts{'order'};
   my @nodestack;
   my $node = {};
   my $c = '';
+  my $xmllen = length($xml);
   $xml =~ s/^\s*\<\?.*?\?\>//s;
   while ($xml =~ /^(.*?)\</s) {
     if ($1 ne '') {
@@ -42,6 +45,7 @@
       die("bad xml, missing end of comment\n") unless $xml =~ s/.*?-->//s;
       next;
     }
+    my $elstart = length($xml);
     die("bad xml\n") unless $xml =~ /(.*?\>)/s;
     my $tag = $1;
     $xml = substr($xml, length($tag));
@@ -73,10 +77,16 @@
     }
     if ($mode == 0 || $mode == 2) {
       my $n = {};
-      push @{$node->{$tag}}, $n;
-      for (sort keys %atts) {
-       $n->{$_} = $atts{$_};
+      if ($record) {
+        $n->{'_start'} = $xmllen - $elstart;
+        $n->{'_end'} = $xmllen - length($xml) if $mode == 2;
+      }
+      if ($order) {
+        push @{$node->{'_order'}}, $tag;
+        push @{$n->{'_order'}}, (splice(@tag, 0, 2))[0] while @tag;
       }
+      push @{$node->{$tag}}, $n;
+      $n->{$_} = $atts{$_} for sort keys %atts;
       if ($mode == 0) {
        push @nodestack, [ $tag, $node, $c ];
        $c = '';
@@ -88,6 +98,7 @@
       $c =~ s/^\s*//s;
       $c =~ s/\s*$//s;
       $node->{'_content'} = $c if $c ne '';
+      $node->{'_end'} = $xmllen - length($xml) if $record;
       $node = $nodestack[-1]->[1];
       $c = $nodestack[-1]->[2];
       pop @nodestack;
@@ -100,4 +111,55 @@
   return $node;
 }
 
+sub unparse_keys {
+  my ($d) = @_;
+  my @k = grep {$_ ne '_start' && $_ ne '_end' && $_ ne '_order' && $_ ne 
'_content'} sort keys %$d;
+  return @k unless $d->{'_order'};
+  my %k = map {$_ => 1} @k;
+  my @ko;
+  for (@{$d->{'_order'}}) {
+    push @ko, $_ if delete $k{$_};
+  }
+  return (@ko, grep {$k{$_}} @k);
+}
+
+sub unparse_escape {
+  my ($d) = @_;
+  $d =~ s/&/&amp;/sg;
+  $d =~ s/</&lt;/sg;
+  $d =~ s/>/&gt;/sg;
+  $d =~ s/"/&quot;/sg;
+  return $d;
+}
+
+sub unparse {
+  my ($d, %opts) = @_;
+
+  my $r = '';
+  my $indent = $opts{'ugly'} ? '' : $opts{'indent'} || '';
+  my $nl = $opts{'ugly'} ? '' : "\n";
+  my @k = unparse_keys($d);
+  my @e = grep {ref($d->{$_}) ne ''} @k;
+  for my $e (@e) {
+    my $en = unparse_escape($e);
+    my $de = $d->{$e};
+    $de = [ $de ] unless ref($de) eq 'ARRAY';
+    for my $se (@$de) {
+      my @sk = unparse_keys($se);
+      my @sa = grep {ref($se->{$_}) eq ''} @sk;
+      my @se = grep {ref($se->{$_}) ne ''} @sk;
+      $r .= "$indent<$en";
+      for my $sa (@sa) {
+       $r .= " ".unparse_escape($sa);
+       $r .= '="'.unparse_escape($se->{$sa}).'"' if defined $se->{$sa};
+      }
+      $r .= ">";
+      $r .= unparse_escape($se->{'_content'}) if defined $se->{'_content'};
+      $r .= $nl . unparse($se, %opts, 'indent' => "  $indent") . "$indent" if 
@se;
+      $r .= "</$en>$nl";
+    }
+  }
+  return $r;
+}
+
 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/Build/Susetags.pm 
new/obs-build-20180124/Build/Susetags.pm
--- old/obs-build-20171128/Build/Susetags.pm    2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/Build/Susetags.pm    2018-01-24 17:02:47.000000000 
+0100
@@ -22,6 +22,8 @@
 
 use strict;
 
+use Build::Rpm;
+
 # compatibility to old OBS code
 sub parse_obs_compat {
   my ($file, undef, undef, @arches) = @_;
@@ -115,6 +117,7 @@
        chomp;
        last if /^-\Q$tag\E/;
        next if $tag eq 'Req' && /^rpmlib\(/;
+       $_ = Build::Rpm::testcaseformat($_) if /^\(/ && 
$options{'testcaseformat'};
        push @{$cur->{$tmap{$tag}}}, $_;
       }
     } elsif ($tag eq 'Pkg') {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/build-recipe-appimage 
new/obs-build-20180124/build-recipe-appimage
--- old/obs-build-20171128/build-recipe-appimage        2017-11-28 
14:28:12.000000000 +0100
+++ new/obs-build-20180124/build-recipe-appimage        2018-01-24 
17:02:47.000000000 +0100
@@ -54,7 +54,7 @@
 
 recipe_build_appimage() {
     local ARCH DEB
-    if [ -x /bin/rpm ]; then
+    if [ -x "$BUILD_ROOT/bin/rpm" ]; then
         ARCH=$(chroot $BUILD_ROOT su -c "rpm --eval '%{_target_cpu}'")
     else
         ARCH=$(chroot $BUILD_ROOT su -c "dpkg-architecture -qDEB_BUILD_ARCH")
@@ -76,10 +76,12 @@
         fi
         if test -z "$DEB" -a ! -d "$BUILD_ROOT/.build.binaries/repodata" ; then
            echo "creating repository metadata..."
-            if [ -x /usr/bin/createrepo_c ]; then 
-                createrepo_c $BUILD_ROOT/.build.binaries
+            if [ -x "$BUILD_ROOT/usr/bin/createrepo_c" ]; then 
+                chroot "$BUILD_ROOT" /usr/bin/createrepo_c /.build.binaries
+            elif [ -x "$BUILD_ROOT/usr/bin/createrepo" ]; then
+                chroot "$BUILD_ROOT" /usr/bin/createrepo /.build.binaries
             else
-                createrepo $BUILD_ROOT/.build.binaries
+                cleanup_and_exit 1 "No createrepo found in build root"
             fi
         fi
     fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/build-recipe-kiwi 
new/obs-build-20180124/build-recipe-kiwi
--- old/obs-build-20171128/build-recipe-kiwi    2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/build-recipe-kiwi    2018-01-24 17:02:47.000000000 
+0100
@@ -513,7 +513,7 @@
            -l=|--logfile=*) KIWI_MAIN_PARAMETERS="$KIWI_MAIN_PARAMETERS 
--logfile ${i#*=}" ;;
            -d=*|--dest-dir=*) KIWI_BUILD_PARAMETERS="$KIWI_BUILD_PARAMETERS 
--target-dir ${i#*=}" ;;
            --root=*) echo "WARNING: ignored unsupported kiwi option $i" ;; # 
unsupported for system build...
-           --ignore-repos) KIWI_BUILD_PARAMETERS="$KIWI_BUILD_PARAMETERS 
--ignore-repos" ;;
+           --ignore-repos) KIWI_BUILD_PARAMETERS="$KIWI_BUILD_PARAMETERS 
--ignore-repos-used-for-build" ;;
            --recycle-root) KIWI_BUILD_PARAMETERS="$KIWI_BUILD_PARAMETERS 
--allow-existing-root" ;;
            --add-repo=*) add_repo_url[${#add_repo_url[@]}]="${i#*=}" ;;
            --add-repotype=*) add_repo_type[${#add_repo_type[@]}]="${i#*=}" ;;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/build-vm 
new/obs-build-20180124/build-vm
--- old/obs-build-20171128/build-vm     2017-11-28 14:28:12.000000000 +0100
+++ new/obs-build-20180124/build-vm     2018-01-24 17:02:47.000000000 +0100
@@ -759,7 +759,7 @@
        unset start_time
        if test ! -w /root ; then
            # remove setuid bit if files belong to user to make e.g. mount work
-           find $BUILD_ROOT/{bin,sbin,usr/bin,usr/sbin} -type f -uid $UID 
-perm +4000 -print0 | xargs -0 --no-run-if-empty chmod -s
+           find $BUILD_ROOT/{bin,sbin,usr/bin,usr/sbin} -type f -uid $UID 
-perm /4000 -print0 | xargs -0 --no-run-if-empty chmod -s
        fi
        copy_oldpackages
     fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/changelog2spec 
new/obs-build-20180124/changelog2spec
--- old/obs-build-20171128/changelog2spec       2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/changelog2spec       2018-01-24 17:02:47.000000000 
+0100
@@ -45,6 +45,11 @@
 my $target = 'rpm';
 
 while (@ARGV) {
+  if ($ARGV[0] eq '--selftest') {
+    shift;
+    print map_changes(@ARGV);
+    exit 0;
+  }
   if ($ARGV[0] eq '--test') {
     $test = 1;
     shift @ARGV;
@@ -75,15 +80,24 @@
   opendir(D, $dir) || die("$dir: $!\n");
   my @changes = grep {/\.changes$/} readdir(D);
   closedir(D);
+  my $changesfile=map_changes($file, @changes);
+  exit(1) unless $changesfile;
+  @ARGV = ("$dir/$changesfile");
+}
+
+sub map_changes
+{
+  my ($file, @changes) = @_;
   @changes = sort {length($a) <=> length($b) || $a cmp $b} @changes;
   # support _service: prefixes, they need to be stripped
   $file =~ s/^_service:.*://;
   my %changes = map {/^((?:_service:.*:)?(.*?))$/ ? ($2, $1) : ($_, $_)} 
@changes;
   @changes = keys %changes;
-  exit(1) unless @changes;     # nothing to do
+  return undef unless @changes;        # nothing to do
+  @changes = sort {length($a) <=> length($b) || $a cmp $b} @changes;
   if (@changes > 1) {
     while ($file ne '') {
-      my @c = grep {/\Q$file\E/} @changes;
+      my @c = grep {/\Q${file}.changes\E/} @changes;
       if (@c) {
        @changes = @c;
        last;
@@ -91,7 +105,7 @@
       last unless $file =~ s/[-.][^-.]*$//;
     }
   }
-  @ARGV = ("$dir/$changes{$changes[0]}");
+  return $changes{$changes[0]};
 }
 
 sub parse_suse {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/computeblocklists 
new/obs-build-20180124/computeblocklists
--- old/obs-build-20171128/computeblocklists    2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/computeblocklists    2018-01-24 17:02:47.000000000 
+0100
@@ -120,7 +120,6 @@
     next;
   } elsif (-d _) {
     print STDERR "$file\n" if $opt_verbose && $opt_verbose > 1;
-    my @stat = stat(_);
     print "d $n\n";
     next;
   } elsif (!-f _) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/configs/sl15.0.conf 
new/obs-build-20180124/configs/sl15.0.conf
--- old/obs-build-20171128/configs/sl15.0.conf  2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/configs/sl15.0.conf  2018-01-24 17:02:47.000000000 
+0100
@@ -59,9 +59,6 @@
 # Build all packages with -pie enabled
 Required: gcc-PIE
 
-# needed for su's default config - perhaps we should use a simplified form?
-Support: pam-modules 
-
 # the basic stuff
 Support: perl build-mkbaselibs
 Support: brp-check-suse post-build-checks rpmlint-Factory
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/configs/sle15.0.conf 
new/obs-build-20180124/configs/sle15.0.conf
--- old/obs-build-20171128/configs/sle15.0.conf 2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/configs/sle15.0.conf 2018-01-24 17:02:47.000000000 
+0100
@@ -66,8 +66,6 @@
 Required: rpm-build
 Required: gcc-PIE
 
-Support: pam-modules
-
 Support: perl build-mkbaselibs
 Support: brp-check-suse post-build-checks rpmlint-Factory
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/createrepomddeps 
new/obs-build-20180124/createrepomddeps
--- old/obs-build-20171128/createrepomddeps     2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/createrepomddeps     2018-01-24 17:02:47.000000000 
+0100
@@ -114,7 +114,7 @@
     if (-e $u) {
       $cached = 1;
       $cached = 0 if exists($f->{'size'}) && $f->{'size'} != (-s _);
-      $cached = 0 if !exists($f->{'size'}) && $u !~ /[0-9a-f]{32}-primary/;
+      $cached = 0 if !$opt_zypp && !exists($f->{'size'}) && $u !~ 
/[0-9a-f]{32}-primary/;
     }
     if (!$cached) {
       die("zypp repo $url is not up to date, please refresh first\n") if 
$opt_zypp;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/dist/build-mkbaselibs-sle.spec 
new/obs-build-20180124/dist/build-mkbaselibs-sle.spec
--- old/obs-build-20171128/dist/build-mkbaselibs-sle.spec       2017-11-28 
14:28:12.000000000 +0100
+++ new/obs-build-20180124/dist/build-mkbaselibs-sle.spec       2018-01-24 
17:02:47.000000000 +0100
@@ -45,13 +45,13 @@
 %build
 
 %install
-install -m 0755 -d $RPM_BUILD_ROOT/usr/lib/build
+install -m 0755 -d %{buildroot}/usr/lib/build
 install -m 0755 mkbaselibs \
-                $RPM_BUILD_ROOT/usr/lib/build/mkbaselibs
+                %{buildroot}/usr/lib/build/mkbaselibs
 install -m 0644 baselibs_configs/baselibs_global-deb.conf \
-                $RPM_BUILD_ROOT/usr/lib/build/baselibs_global-deb.conf
+                %{buildroot}/usr/lib/build/baselibs_global-deb.conf
 install -m 0644 baselibs_configs/baselibs_global.conf \
-                $RPM_BUILD_ROOT/usr/lib/build/baselibs_global.conf
+                %{buildroot}/usr/lib/build/baselibs_global.conf
 
 %files
 %defattr(-,root,root)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/dist/build.changes 
new/obs-build-20180124/dist/build.changes
--- old/obs-build-20171128/dist/build.changes   2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/dist/build.changes   2018-01-24 17:02:47.000000000 
+0100
@@ -1,4 +1,14 @@
 -------------------------------------------------------------------
+Tue Nov 28 13:33:11 UTC 2017 - adr...@suse.de
+
+- Fixed Dockerfile repository parsing
+- Improve file name check extractbuild
+- track release number of containers
+- Define SOURCEURL and PATCHURL macros
+- Keep preinstalled packages
+- add libidn2 and libunistring to preinstall for archlinux
+
+-------------------------------------------------------------------
 Tue Nov 21 09:12:41 UTC 2017 - co...@suse.com
 
 - buildignore the sle flavor of mkbaselibs for sle
@@ -675,6 +685,11 @@
 - do not use loop device anymore when using block devices directly
 
 -------------------------------------------------------------------
+Thu Jan 20 10:18:09 UTC 2011 - lnus...@suse.de
+
+- force use of bsdtar for VMs (bnc#665768, CVE-2010-4226)
+
+-------------------------------------------------------------------
 Thu Nov 11 12:24:13 UTC 2010 - adr...@suse.de
 
 - workaround for distros with appstart like Ubuntu 10.10
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/dist/build.spec 
new/obs-build-20180124/dist/build.spec
--- old/obs-build-20171128/dist/build.spec      2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/dist/build.spec      2018-01-24 17:02:47.000000000 
+0100
@@ -124,18 +124,18 @@
 %install
 # initvm
 %if 0%{?suse_version}
-make DESTDIR=$RPM_BUILD_ROOT initvm-install
-strip $RPM_BUILD_ROOT/usr/lib/build/initvm.*
+make DESTDIR=%{buildroot} initvm-install
+strip %{buildroot}/usr/lib/build/initvm.*
 export NO_BRP_STRIP_DEBUG="true"
-chmod 0644 $RPM_BUILD_ROOT/usr/lib/build/initvm.*
+chmod 0644 %{buildroot}/usr/lib/build/initvm.*
 %endif
 
 # main
-make DESTDIR=$RPM_BUILD_ROOT install
+make DESTDIR=%{buildroot} install
 
 # tweak default config on suse
 %if 0%{?suse_version}
-cd $RPM_BUILD_ROOT/usr/lib/build/configs/
+cd %{buildroot}/usr/lib/build/configs/
 SUSE_V=%{?suse_version}
 SLE_V=%{?sle_version}
 %if 0%{?sle_version} && 0%{?is_opensuse} && %suse_version == 1315
@@ -164,7 +164,7 @@
 
 # tweak baselibs config on suse
 %if 0%{?suse_version}
-cd $RPM_BUILD_ROOT/usr/lib/build
+cd %{buildroot}/usr/lib/build
 %if %suse_version == 1500
 # SLE 15 / Leap 15
 ln -sf baselibs_configs/baselibs_global-sle15.conf baselibs_global.conf
@@ -181,12 +181,12 @@
   echo "WARNING: Not building as root, tests did not run!"
   exit 0
 fi
-if [ ! -f "$RPM_BUILD_ROOT/usr/lib/build/configs/default.conf" ]; then
+if [ ! -f "%{buildroot}/usr/lib/build/configs/default.conf" ]; then
   echo "WARNING: No default config, tests did not run!"
   exit 0
 fi
 # get back the default.conf link
-cp -av $RPM_BUILD_ROOT/usr/lib/build/configs/default.conf configs/
+cp -av %{buildroot}/usr/lib/build/configs/default.conf configs/
 # do not get confused when building this already with build:
 export BUILD_IGNORE_2ND_STAGE=1
 # use our own build code
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/expanddeps 
new/obs-build-20180124/expanddeps
--- old/obs-build-20171128/expanddeps   2017-11-28 14:28:12.000000000 +0100
+++ new/obs-build-20180124/expanddeps   2018-01-24 17:02:47.000000000 +0100
@@ -161,8 +161,6 @@
     $pkgP = $2;
   } elsif (/^R:(.*?)-\d+\/\d+\/\d+: (.*)$/) {
     $pkgR = $2;
-  } elsif (/^r:(.*?)-\d+\/\d+\/\d+: (.*)$/) {
-    $pkgr = $2;
   } elsif (/^C:(.*?)-\d+\/\d+\/\d+: (.*)$/) {
     $pkgC = $2;
   } elsif (/^O:(.*?)-\d+\/\d+\/\d+: (.*)$/) {
@@ -172,27 +170,28 @@
   } elsif (/^s:(.*?)-\d+\/\d+\/\d+: (.*)$/) {
     $pkgs = $2;
   } elsif (/^I:(.*?)-\d+\/\d+\/\d+: (.*)$/) {
-    next if $packs_done{$1};
-    my ($i, $newid) = ($1, $2);
-    undef $i unless !$ids{$i} || $verscmp->($ids{$i}, $newid) < 0;
-    undef $i unless defined($pkgF) && defined($pkgP);
-    if (defined $i) {
-      $i =~ /^(.*)\.([^\.]+)$/ or die;
-      push @{$packs_arch{$2}}, $1;
-      $ids{$i}  = $newid;
-      $fn{$i}   = $pkgF;
-      $prov{$i} = $pkgP;
-      delete $req{$i};
-      delete $rec{$i};
-      delete $con{$i};
-      delete $obs{$i};
-      delete $rec{$i};
-      delete $sup{$i};
-      $req{$i}  = $pkgR;
-      $con{$i}  = $pkgC if defined $pkgC;
-      $obs{$i}  = $pkgO if defined $pkgO;
-      $rec{$i}  = $pkgr if defined $pkgr;
-      $sup{$i}  = $pkgs if defined $pkgs;
+    if (!$packs_done{$1}) {
+      my ($i, $newid) = ($1, $2);
+      undef $i unless !$ids{$i} || $verscmp->($ids{$i}, $newid) < 0;
+      undef $i unless defined($pkgF) && defined($pkgP);
+      if (defined $i) {
+       $i =~ /^(.*)\.([^\.]+)$/ or die;
+       push @{$packs_arch{$2}}, $1;
+       $ids{$i}  = $newid;
+       $fn{$i}   = $pkgF;
+       $prov{$i} = $pkgP;
+       delete $req{$i};
+       delete $rec{$i};
+       delete $con{$i};
+       delete $obs{$i};
+       delete $rec{$i};
+       delete $sup{$i};
+       $req{$i}  = $pkgR;
+       $con{$i}  = $pkgC if defined $pkgC;
+       $obs{$i}  = $pkgO if defined $pkgO;
+       $rec{$i}  = $pkgr if defined $pkgr;
+       $sup{$i}  = $pkgs if defined $pkgs;
+      }
     }
     undef $pkgF;
     undef $pkgP;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/extractbuild 
new/obs-build-20180124/extractbuild
--- old/obs-build-20171128/extractbuild 2017-11-28 14:28:12.000000000 +0100
+++ new/obs-build-20180124/extractbuild 2018-01-24 17:02:47.000000000 +0100
@@ -154,5 +154,5 @@
   }
   close(O) || die("$file: close error: $!\n");
   # sanity check
-  die "$file: invalid file size ($filesize byes left)\n" if $filesize != 0;
+  die "$file: invalid file size ($filesize bytes left)\n" if $filesize != 0;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/substitutedeps 
new/obs-build-20180124/substitutedeps
--- old/obs-build-20171128/substitutedeps       2017-11-28 14:28:12.000000000 
+0100
+++ new/obs-build-20180124/substitutedeps       2018-01-24 17:02:47.000000000 
+0100
@@ -282,7 +282,7 @@
     # all compat stuff done. we return to your scheduled program
   }
 
-  if (!$used || ($line !~ /^(?:Build)?Requires:/i)) {
+  if (!$used || ($line !~ 
/^(?:Requires|BuildRequires|PreReq)(?:\([^\)]+\))?:/i)) {
     print F "$line\n";
     next;
   }
@@ -293,7 +293,7 @@
   }
 
   my $isbuildrequires = 0;
-  $isbuildrequires = 1 if $line =~ /^BuildRequires:/i;
+  $isbuildrequires = 1 if $line =~ /^BuildRequires/i;
   my $r = $line;
   $r =~ s/^[^:]*:\s*//;
   my @deps = $r =~ /([^\s\[,]+)(\s+[<=>]+\s+[^\s\[,]+)?[\s,]*/g;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-build-20171128/t/changelog2spec.t 
new/obs-build-20180124/t/changelog2spec.t
--- old/obs-build-20171128/t/changelog2spec.t   1970-01-01 01:00:00.000000000 
+0100
+++ new/obs-build-20180124/t/changelog2spec.t   2018-01-24 17:02:47.000000000 
+0100
@@ -0,0 +1,33 @@
+#!/usr/bin/perl -w
+
+use strict;
+use Test::More tests => 11;
+
+sub onetest(@)
+{
+  my $expected = shift;
+  my $actual = `./changelog2spec --selftest @_`;
+  is($actual, $expected, "changelog2spec --selftest @_");
+}
+
+my @tests=(
+  # format is 1:specfile 2:expected-changes 3++:list-of-changes-files
+  [qw"rpm rpm python-rpm rpm"],
+  [qw"python-rpm python-rpm python-rpm rpm"],
+  [qw"antlr antlr antlr antlr-bootstrap"],
+  [qw"antlr anyunrelated anyunrelated"],
+  [qw"antlr-bootstrap antlr-bootstrap antlr antlr-bootstrap"],
+  [qw"antlr-bootstrap antlr antlr"],
+  [qw"antlr-bootstrap antlr antlr antlr-other"],
+  [qw"foo _service:obs_scm:foo foo _service:obs_scm:foo"],
+  [qw"_service:obs_scm:foo _service:obs_scm:foo foo _service:obs_scm:foo"],
+  [qw"_service:obs_scm:foo foo foo foo-bar"],
+  [qw"_service:obs_scm:foo-bar foo foo foo-other"],
+);
+for my $t (@tests) {
+  my @tmp=@$t;
+  my $file=shift(@tmp);
+  foreach(0..$#tmp) {$tmp[$_].=".changes"}
+  my $expected=shift(@tmp);
+  onetest($expected, $file, @tmp);
+}


Reply via email to