X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=build-everything-in-mock.sh;h=782bea26f72a147074593cc16da03523cba63d6a;hb=ed0dc8864c3a0994fa7da8ae198745bab134ddd4;hp=6b079ad2da334a1acd607309fc82496137dcedd5;hpb=3d2e33bc4c25b39c083e7f811cebeaa2602b2884;p=fedora-mingw.git diff --git a/build-everything-in-mock.sh b/build-everything-in-mock.sh index 6b079ad..782bea2 100755 --- a/build-everything-in-mock.sh +++ b/build-everything-in-mock.sh @@ -1,21 +1,56 @@ -#!/bin/sh - +#!/bin/bash - -DIST=fedora-9 +set -e -specs=`perl show-build-order.pl | - grep -v '^#' | - grep -Eo '[^[:space:]]+/mingw-[^[:space:]]+\.spec'` +# These are the packages we don't want to build yet: +nobuild=$(grep -v '^#' IGNORE) -rm -f buildall.log -echo -e "Specfiles in build order:\n$specs\n\n" >> buildall.log +# Keep going - don't stop when smock hits an error. +keepgoing=--keepgoing -pwd=`pwd` +rm -f */*.src.rpm -for spec in $specs -do - set -e - dir=`dirname $spec` - srcrpm=`rpmbuild --define "_sourcedir $pwd/$dir" -bs $spec | - awk '{print $2}'` - smock/smock $DIST $srcrpm -done 2>&1 | tee -a buildall.log +# If any extra SRPMS need to be considered, list them here. Otherwise +# leave this empty. +srpms="" + +for dir in *; do + if ! echo "$nobuild" | grep -sq "^$dir\$"; then + if [ -d $dir -a -f $dir/*.spec ]; then + if ! rpmbuild -bs --define "_sourcedir $(pwd)/$dir" --define "_srcrpmdir $(pwd)/$dir" $dir/*.spec; then + echo "Failed to create a source RPM in directory $dir." + echo "If you want to ignore this directory, you should add" + echo "it to the IGNORE file in the top level directory." + exit 1 + fi + srpms="$srpms $(pwd)/$dir/*.src.rpm" + fi + fi +done + +# Rawhide build everything: + +smock/smock.pl \ + --arch=i386 \ + --arch=x86_64 \ + --distro=fedora-rawhide \ + $keepgoing \ + $srpms + +# In Fedora 10 don't try to build the OCaml RPMs since they +# require OCaml 3.11 which was not in Fedora 10: + +srpms_no_ocaml="" +for f in $srpms; do + case $f in + *ocaml* | *virt-top*) ;; + *) srpms_no_ocaml="$srpms_no_ocaml $f" ;; + esac +done + +smock/smock.pl \ + --arch=i386 \ + --arch=x86_64 \ + --distro=fedora-10 \ + $keepgoing \ + $srpms_no_ocaml