X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=Goalfile;h=773505dad8a834915768b404af66fe6c8b816339;hb=cd1332078e18fb1be2691f34d5e4e65432015378;hp=80229631890e5de9463f7cd5e427d6f97a24b066;hpb=8bd3d2b6a5d8e01b5e1fd6b77f0e1fb03f6027d9;p=fedora-ocaml-rebuild.git diff --git a/Goalfile b/Goalfile index 8022963..773505d 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 = "f33-build-side-19773" -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 = "f38-build-side-62208" # The magic string that must appear in %changelog when the # package has been rebuilt. -let fedora-rebuild-name = "OCaml 4.10.0 final." +let fedora-rebuild-name = "Rebuild OCaml packages for F38" -# 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 = "1" # Packages that are ignored, which means they are treated as if # they have been rebuilt. @@ -27,34 +25,231 @@ let fedora-ignored = [ ] # All OCaml-related source package names -let other-packages = [ - "alt-ergo", "apron", "brltty", - "graphviz", "hevea", "hivex", - "libguestfs", "libnbd", "nbdkit", +let packages = [ + "ocaml-alcotest", + "ocaml-ancient", + "ocaml-astring", + "ocaml-atd", + "ocaml-augeas", + "ocaml-autoconf", + "ocaml-base", + "ocaml-base64", + "ocaml-benchmark", + "ocaml-bigarray-compat", + "ocaml-biniou", + "ocaml-bin-prot", + "ocaml-bisect-ppx", + "ocaml-bos", + "ocaml-cairo", + "ocaml-calendar", + "ocaml-camlbz2", + "ocaml-camlidl", + "ocaml-camlimages", + "ocaml-camlp-streams", + "ocaml-camlp5", + "ocaml-camomile", + "ocaml-charinfo-width", + "ocaml-cil", + "ocaml-cinaps", + "ocaml-cmdliner", + "ocaml-compiler-libs-janestreet", + "ocaml-cppo", + "ocaml-cryptokit", + "ocaml-csexp", + "ocaml-csv", + "ocaml-ctypes", + "ocaml-cudf", + "ocaml-curl", + "ocaml-curses", + "ocaml-dbus", + "ocaml-dose3", + # Cyclic dependency ocaml-dune -> ocaml-pp -> ocaml-dune + #"ocaml-dune", + "ocaml-easy-format", + "ocaml-expat", + "ocaml-extlib", + "ocaml-facile", + "ocaml-fieldslib", + "ocaml-fileutils", + "ocaml-findlib", + "ocaml-fmt", + "ocaml-fpath", + "ocaml-gen", + "ocaml-gettext", + "ocaml-graphics", + "ocaml-gsl", + "ocamlify", + "ocaml-integers", + "ocaml-jane-street-headers", + "ocaml-jst-config", + "ocaml-lablgl", + "ocaml-lablgtk", + "ocaml-lablgtk3", + "ocaml-labltk", + "ocaml-lacaml", + "ocaml-lambda-term", + "ocaml-libvirt", + "ocaml-logs", + "ocaml-luv", + "ocaml-lwt", + "ocaml-lwt-log", + "ocaml-markup", + "ocaml-mccs", + "ocaml-mdx", + "ocaml-menhir", + "ocaml-merlin", + "ocaml-mew", + "ocaml-mew-vi", + "ocaml-migrate-parsetree", + "ocaml-mlgmpidl", + "ocaml-mlmpfr", + "ocaml-mmap", + "ocaml-mtime", + "ocamlmod", + "ocaml-mysql", + "ocaml-newt", + "ocaml-num", + "ocaml-obuild", + "ocaml-ocamlbuild", + "ocaml-ocamlgraph", + "ocaml-ocamlnet", + "ocaml-ocp-indent", + "ocaml-ocplib-endian", + "ocaml-ocplib-simplex", + "ocaml-octavius", + "ocaml-odoc", + "ocaml-odoc-parser", + "ocaml-omake", + "ocaml-opam-file-format", + "ocaml-ounit", + "ocaml-parmap", + "ocaml-parsexp", + "ocaml-pcre", + "ocaml-perl4caml", + "ocaml-postgresql", + "ocaml-pp", + "ocaml-ppx-assert", + "ocaml-ppx-base", + "ocaml-ppx-cold", + "ocaml-ppx-compare", + "ocaml-ppx-custom-printf", + "ocaml-ppx-derivers", + "ocaml-ppx-deriving", + "ocaml-ppx-deriving-yaml", + "ocaml-ppx-deriving-yojson", + "ocaml-ppx-enumerate", + "ocaml-ppx-expect", + "ocaml-ppx-fields-conv", + "ocaml-ppx-globalize", + "ocaml-ppx-hash", + "ocaml-ppx-here", + "ocaml-ppx-import", + "ocaml-ppx-inline-test", + "ocaml-ppx-js-style", + "ocaml-ppx-let", + "ocaml-ppxlib", + "ocaml-ppx-optcomp", + "ocaml-ppx-sexp-conv", + "ocaml-ppx-stable-witness", + "ocaml-ppx-variants-conv", + "ocaml-psmt2-frontend", + "ocaml-ptmap", + "ocaml-pyml", + "ocaml-qcheck", + "ocaml-qtest", + "ocaml-re", + "ocaml-react", + "ocaml-res", + "ocaml-result", + "ocaml-rresult", + "ocaml-SDL", + "ocaml-sedlex", + "ocaml-seq", + "ocaml-sexplib", + "ocaml-sexplib0", + "ocaml-sha", + "ocaml-sqlite", + "ocaml-ssl", + "ocaml-stdcompat", + "ocaml-stdio", + "ocaml-time-now", + "ocaml-topkg", + "ocaml-tplib", + "ocaml-trie", + "ocaml-tyxml", + "ocaml-uucd", + "ocaml-uucp", + "ocaml-uunf", + "ocaml-uuseg", + "ocaml-uutf", + "ocaml-variantslib", + "ocaml-version", + "ocaml-xml-light", + "ocaml-xmlm", + "ocaml-xmlrpc-light", + "ocaml-yaml", + "ocaml-yojson", + "ocaml-zarith", + "ocaml-zed", + "ocaml-zip", + "ocaml-zmq", + + "alt-ergo", + "apron", + "brltty", + "coccinelle", + "coq", + "flocq", + "frama-c", + "gappalib-coq", + "graphviz", + "haxe", + "hevea", + "hivex", + "laby", + "libguestfs", + "libnbd", "opam", "plplot", - "virt-top", "virt-v2v", + "prooftree", + "supermin", + "swig", + "utop", + "virt-top", + "virt-v2v", + "why3", "z3", + "zenon", - # 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", + # 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", ] + +# 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 all spec files have disabled the broken + # "package notes" misfeature. + if ! grep -sq "%%undefine _package_note_flags" $spec ; then + echo "ERROR: $pkg does not %%undefine _package_note_flags" >&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 "$pkg: package is not checked out locally" >&2 + 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)