X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=Goalfile;h=00a3f57c456f76b94850c679beb43c11ebbab2fe;hb=d1bb652d1272d8725af78e43211ec374d79d98bd;hp=9da8611088796abe2c30fe12044ba90083de2230;hpb=342e582283f9a9746c92970259280497b672f73a;p=fedora-ocaml-rebuild.git diff --git a/Goalfile b/Goalfile index 9da8611..00a3f57 100644 --- a/Goalfile +++ b/Goalfile @@ -4,18 +4,19 @@ include "fedora.gl" let fedora-dir = "%HOME/d/fedora" -let fedora-branch = "master" -#let fedora-branch = "f32" -let fedora-tag = "f33-build-side-20855" +let fedora-branch = "rawhide" +#let fedora-branch = "f34" +let fedora-tag = "f40-build-side-79788" # The magic string that must appear in %changelog when the # package has been rebuilt. -let fedora-rebuild-name = "Update all OCaml dependencies for RPM 4.16." +let fedora-rebuild-name = "OCaml 5.1.1 + s390x code gen fix for Fedora 40" -# Packages that are blocked. Any dependent packages are also blocked -# automatically. -# XXX Not implemented, use ignore for now. -#let fedora-blocked = [ "ocaml-camlp4" ] +# %fedora-retry-failed: +# If set to 1 then failed builds are retried automatically. +# If set to 0 then failed builds must be manually restarted. +# Normally you want this to be 0. +let fedora-retry-failed = "0" # Packages that are ignored, which means they are treated as if # they have been rebuilt. @@ -23,35 +24,33 @@ let fedora-ignored = [ "ocaml-srpm-macros", "ocaml", ] -# All OCaml-related source package names -let other-packages = [ - "alt-ergo", "apron", "brltty", "coccinelle", - "graphviz", "haxe", "hevea", "hivex", - "libguestfs", "libnbd", "opam", - "virt-top", "virt-v2v", - "z3", - - # For Coq: - "coq", "frama-c", - "why3", "zenon", - "flocq", - - # Causes a cyclic dependency between libnbd <-> nbdkit. We need - # to fix this in goals itself, but in the meantime disable nbdkit - # and build it by hand. - # "nbdkit", - - # https://bugzilla.redhat.com/show_bug.cgi?id=1797853 - # "plplot", - - # https://bugzilla.redhat.com/show_bug.cgi?id=1799570 - #"laby", -] +# Include the full list of packages for either Fedora or ELN. +include "./fedora-packages.gl" +#include "./eln-packages.gl" +# Get the list of source packages. pure function get-source-packages () returning strings = { cd %fedora-dir - for f in ocaml* %other-packages; do - [ -f $f/%fedora-branch/$f.spec ] && echo "$f" + for pkg in %packages; do + spec=$pkg/%fedora-branch/$pkg.spec + if [ -f $spec ]; then + # Check that the spec file excludes i686. + # Only implement this check for ocaml-* packages, as the + # other packages are more complicated. + if [[ "$spec" =~ ^ocaml ]] && + ! rpmspec -P $spec | grep -sq 'ExcludeArch:.*i386' ; then + echo "ERROR: $pkg does not ExcludeArch: %%{ix86}" >&2 + exit 1 + fi + # OK to rebuild this package. + echo "$pkg" + elif [ -f $pkg/%fedora-branch/dead.package ]; then + echo "WARNING: $pkg: is a dead package, ignored" >&2 + else + echo "ERROR: $pkg: package is not checked out locally" >&2 + # This does NOT exit the script, why??? + exit 1 + fi done } let fedora-source-packages = get-source-packages ()