[Mageia-sysadm] Mass rebuild

nicolas vigier boklm at mars-attacks.org
Thu Dec 6 13:59:21 CET 2012


On Wed, 05 Dec 2012, Pascal Terjan wrote:

> 
> I am testing it, there are not that many failing but I guess that will
> be over a hundred so it would be good to test in the code if it
> succeeded
> 
> Good news is that several of them does not seem to have ever been
> uploaded so they don't matter
> 
> Some of them have release %mkrel 0 and the code fails to handle that
> but this should be easy to fix (Unable to extract release number from
> value '0'), that would fix a lot of the ones in the list
> 
>         croak "Unable to extract release number from value '$value'"
>             unless $number;
> 
> Changing it to unless defined($number); should do the trick
> 
> Beginning of the list (until c) with unpatched code:
> 
> [pterjan at chopin cauldron-auto]$ for s in */*.spec; do perl
> -mYouri::Package::RPM::Updater -e
> "Youri::Package::RPM::Updater->new()->update_from_spec('$s')"
> >/dev/null 2>&1 ; svn diff $s | grep -q . || echo $s; done
> CharLS/CharLS.spec
> akonadi/akonadi.spec
> alsa-oss/alsa-oss.spec
> antlr3/antlr3.spec
> avant-window-navigator/avant-window-navigator.spec
> awn-extras-applets/awn-extras-applets.spec
> axis14/axis14.spec
> b43-tools/b43-tools.spec
> barbecue/barbecue.spec
> biew/biew.spec
> cagibi/cagibi.spec
> ceylon/ceylon.spec
> cglib21/cglib21.spec
> chmsee/chmsee.spec
> cnetworkmanager/cnetworkmanager.spec
> create/create.spec
> cross-mipsel-gcc/cross-mipsel-gcc.spec
> cross-ppc-binutils/cross-ppc-binutils.spec
> 
> Same after adding defined():
> 
> [pterjan at chopin cauldron-auto]$ for s in */*.spec; do perl
> -mYouri::Package::RPM::Updater -e
> "Youri::Package::RPM::Updater->new()->update_from_spec('$s')"
> >/dev/null 2>&1 ; svn diff $s | grep -q . || echo $s; done
> alsa-oss/alsa-oss.spec
> antlr3/antlr3.spec
> axis14/axis14.spec
> b43-tools/b43-tools.spec
> biew/biew.spec
> chmsee/chmsee.spec
> cross-mipsel-gcc/cross-mipsel-gcc.spec
> cross-ppc-binutils/cross-ppc-binutils.spec

Most of them seems to have a release like this :

  Release:	%mkrel 0.7.git%{git_commit_date}

or :

  %define something %mkrel 7
  Release: %something

(with %something other than %release or %rel)

Maybe we can change those packages to always have a %rel or %release
macro defined for the part that needs to be bumped in case of rebuild ? 

For b43-tools this would be :

Index: SPECS/b43-tools.spec
===================================================================
--- SPECS/b43-tools.spec        (revision 40891)
+++ SPECS/b43-tools.spec        (working copy)
@@ -3,10 +3,11 @@
 %define git_commit 8dc01d7b658dc04c5c500640854c6dba547a3118
 %define git_commit_date 20090125
 
+%define rel 7
 
 Name:          b43-tools
 Version:       0
-Release:       %mkrel 0.7.git%{git_commit_date}
+Release:       %mkrel 0.%{rel}.git%{git_commit_date}
 Summary:       Tools for the Broadcom 43xx series WLAN chip
 Group:         System/Configuration/Networking
 # assembler — GPLv2




More information about the Mageia-sysadm mailing list