5 let fedora-dir = "%HOME/d/fedora"
7 let fedora-branch = "rawhide"
8 #let fedora-branch = "f34"
9 let fedora-tag = "f36-build-side-50311"
11 # The magic string that must appear in %changelog when the
12 # package has been rebuilt.
13 let fedora-rebuild-name = "OCaml 4.13.1 rebuild to remove package notes"
15 # Packages that are ignored, which means they are treated as if
16 # they have been rebuilt.
17 let fedora-ignored = [
18 "ocaml-srpm-macros", "ocaml",
21 # All OCaml-related source package names
31 "ocaml-bigarray-compat",
43 "ocaml-charinfo-width",
47 "ocaml-compiler-libs-janestreet",
74 "ocaml-jane-street-headers",
75 # "ocaml-jsonm", https://bugzilla.redhat.com/show_bug.cgi?id=1183825
95 "ocaml-migrate-parsetree",
109 "ocaml-ocplib-endian",
110 "ocaml-ocplib-simplex",
115 "ocaml-opam-file-format",
126 "ocaml-ppx-custom-printf",
127 "ocaml-ppx-derivers",
128 "ocaml-ppx-deriving",
129 "ocaml-ppx-deriving-yojson",
130 "ocaml-ppx-enumerate",
132 "ocaml-ppx-fields-conv",
135 "ocaml-ppx-inline-test",
136 "ocaml-ppx-js-style",
140 "ocaml-ppx-sexp-conv",
141 "ocaml-ppx-variants-conv",
142 "ocaml-psmt2-frontend",
174 "ocaml-xmlrpc-light",
197 # plplot dependencies cannot be installed:
198 # https://bugzilla.redhat.com/show_bug.cgi?id=2050480
209 # Causes a cyclic dependency between libnbd <-> nbdkit. We need
210 # to fix this in goals itself, but in the meantime disable nbdkit
211 # and build it by hand.
215 # Get the list of source packages.
216 pure function get-source-packages () returning strings = {
218 for pkg in %packages; do
219 spec=$pkg/%fedora-branch/$pkg.spec
220 if [ -f $spec ]; then
221 # Check that all spec files have disabled the broken
222 # "package notes" misfeature.
223 if ! grep -sq "%%undefine _package_note_flags" $spec ; then
224 echo "ERROR: $pkg does not %%undefine _package_note_flags"
227 # OK to rebuild this package.
229 elif [ -f $pkg/%fedora-branch/dead.package ]; then
230 echo "WARNING: $pkg: is a dead package, ignored" >&2
232 echo "$pkg: package is not checked out locally" >&2
237 let fedora-source-packages = get-source-packages ()
239 # Main goal: Rebuild all packages in Koji.
240 goal all = : wrap ("is-koji-built", fedora-source-packages)