X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=Goalfile;h=00a3f57c456f76b94850c679beb43c11ebbab2fe;hb=d1bb652d1272d8725af78e43211ec374d79d98bd;hp=478a6f3119914187babe41105811c7872383be40;hpb=86a789ee2ca98f68d928c21c19258de3817b6cf5;p=fedora-ocaml-rebuild.git diff --git a/Goalfile b/Goalfile index 478a6f3..00a3f57 100644 --- a/Goalfile +++ b/Goalfile @@ -4,21 +4,19 @@ 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 = "f40-build-side-79788" # 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.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. @@ -26,35 +24,36 @@ let fedora-ignored = [ "ocaml-srpm-macros", "ocaml", ] -# All OCaml-related source package names -let other-packages = [ - "alt-ergo", "apron", "brltty", - "graphviz", "hevea", "hivex", - "libguestfs", "libnbd", "nbdkit", - "opam", - "plplot", - "virt-top", "virt-v2v", - "z3", - - # no OCaml code, but needs to be rebuilt after Coq - #"flocq" - - # Coq problems: - # https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/6I2CB4KNAZXH6TKX5WQZJ3ZQGBIOCNJK/ - # "coq", "frama-c", "gappalib-coq", - # "why3", "zenon", - # "flocq", - - # Coccinelle uses -unsafe-string. - # "coccinelle", -] +# 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 in Koji. -goal all = : wrap ("*koji-built", fedora-source-packages) +goal all = : wrap ("is-koji-built", fedora-source-packages)