From ab201ebc3d8b92a77f204634e22566b8351f9319 Mon Sep 17 00:00:00 2001 From: Pascal Terjan Date: Sun, 12 Oct 2014 12:57:40 +0100 Subject: Remove old src.rpm before recreating it (mga#14243) --- lib/Iurt/Urpmi.pm | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'lib/Iurt/Urpmi.pm') diff --git a/lib/Iurt/Urpmi.pm b/lib/Iurt/Urpmi.pm index e2f305d..c8f3bbd 100644 --- a/lib/Iurt/Urpmi.pm +++ b/lib/Iurt/Urpmi.pm @@ -629,7 +629,11 @@ sub recreate_srpm { $spec = $file; } } - } + } + + # Delete old src.rpm, we will create it again + sudo($config, '--rm', $oldsrpm) or die "$program_name: could not delete $oldsrpm ($!)"; + # 20060515 This should not be necessairy any more if urpmi *.spec works, but it doesn't # my $ret = perform_command(qq(chroot $chroot_tmp su $luser -c "rpmbuild --nodeps -bs $with_flags /home/$luser/rpmbuild/SPECS/$spec"), @@ -645,13 +649,7 @@ sub recreate_srpm { # return 0 unless $ret; - # we can not ask rpm the generated srpm name - # we can not rely on build time (one of the src.rpm may have been built on a machine with wrong time) - # let's say that if we have several one, we want the non original one - my $file = $oldsrpm; - foreach my $f (glob "$chroot_tmp/home/$luser/rpmbuild/SRPMS/$name-*.src.rpm") { - $file = $f if $f ne $oldsrpm; - } + my $file = (glob "$chroot_tmp/home/$luser/rpmbuild/SRPMS/$name-*.src.rpm")[0]; my ($new_srpm) = basename($file); my $prefix = get_package_prefix($srpm); my $newfile = "$chroot_tmp/home/$luser/rpmbuild/SRPMS/$prefix$new_srpm"; -- cgit v1.2.1