X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=Goalfile;h=ad820ec27b98a631c876d95eb9685f0ae1e40fd8;hb=949581153ac77eca0d1d4ccedc52d2ef78c7f032;hp=35909e0987af4191cd3150320700d8cfcfaf2b6f;hpb=3a10c0c2da969efc3b9b3aa153aac7dcc673c0fe;p=fedora-ocaml-rebuild.git diff --git a/Goalfile b/Goalfile index 35909e0..ad820ec 100644 --- a/Goalfile +++ b/Goalfile @@ -4,59 +4,56 @@ include "fedora.gl" let fedora-dir = "%HOME/d/fedora" -let fedora-branch = "master" -let fedora-tag = "f32-build-side-18015" -let koji = "koji" -#let koji = "koji -p riscv64" -let fedpkg = "fedpkg" -#let fedpkg = "fedpkg --user-config %HOME/d/fedora-ocaml-rebuild/fedpkg-user-config" +let fedora-branch = "rawhide" +#let fedora-branch = "f34" +let fedora-tag = "f41-build-side-91297" # The magic string that must appear in %changelog when the # package has been rebuilt. -let fedora-rebuild-name = "OCaml 4.10.0+beta1 rebuild." +let fedora-rebuild-name = "OCaml 5.2.0 ppc64le fix" -# 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. -let fedora-ignored = [ "ocaml-srpm-macros", "ocaml", - # These ones are only needed because blocked is not working - "ocaml-camlp4", - "cduce", - "guestfs-browser", - "ocaml-bin-prot", - "ocaml-bisect", - "ocaml-bitstring", - "ocaml-deriving", - "ocaml-json-static", - "ocaml-mikmatch", - "ocaml-openin", - "ocaml-pa-monad", - "ocaml-pgocaml", - "ocaml-sexplib", - "ocaml-type-conv", - "ocamldsort", +let fedora-ignored = [ + "ocaml-srpm-macros", "ocaml", ] -# All OCaml-related source package names -let other-packages = [ - "alt-ergo", "apron", "brltty", "coccinelle", "coq", - "frama-c", "gappalib-coq", "graphviz", "hevea", "hivex", - "libguestfs", "libnbd", "nbdkit", "opam", "plplot", - "virt-top", "virt-v2v", "why3", "z3", - # no OCaml code, but needs to be rebuilt after Coq - "flocq" -] +# 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 () -# Main goal: Rebuild all packages. -goal all = : wrap ("*koji-built", fedora-source-packages) +# Main goal: Rebuild all packages in Koji. +goal all = : wrap ("is-koji-built", fedora-source-packages)