let fedora-branch = "rawhide"
#let fedora-branch = "f34"
-let fedora-tag = "f37-build-side-54560"
+let fedora-tag = "f39-build-side-69760"
# The magic string that must appear in %changelog when the
# package has been rebuilt.
-let fedora-rebuild-name = "OCaml 4.14.0 rebuild"
+let fedora-rebuild-name = "OCaml 5.0 rebuild for Fedora 39"
+
+# %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.
let fedora-ignored = [
"ocaml-srpm-macros", "ocaml",
-
- # These use rpmautospec and must be rebuilt by hand for now.
- # XXX eventually need to fix stdlib/fedora.gl to deal with these
- "ocaml-base64",
- "ocaml-dose3",
- "ocaml-opam-file-format",
- "opam",
]
# All OCaml-related source package names
let packages = [
"ocaml-alcotest",
- "ocaml-ancient",
"ocaml-astring",
+ "ocaml-atd",
"ocaml-augeas",
"ocaml-autoconf",
"ocaml-base",
"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-curses",
"ocaml-dbus",
"ocaml-dose3",
- "ocaml-dune",
+ # Cyclic dependency ocaml-dune -> ocaml-pp -> ocaml-dune
+ #"ocaml-dune",
"ocaml-easy-format",
"ocaml-expat",
"ocaml-extlib",
"ocamlify",
"ocaml-integers",
"ocaml-jane-street-headers",
-# "ocaml-jsonm", https://bugzilla.redhat.com/show_bug.cgi?id=1183825
"ocaml-jst-config",
"ocaml-lablgl",
"ocaml-lablgtk",
"ocaml-logs",
"ocaml-luv",
"ocaml-lwt",
- "ocaml-lwt-log",
"ocaml-markup",
"ocaml-mccs",
"ocaml-mdx",
"ocaml-merlin",
"ocaml-mew",
"ocaml-mew-vi",
- "ocaml-migrate-parsetree",
"ocaml-mlgmpidl",
"ocaml-mlmpfr",
- "ocaml-mmap",
"ocaml-mtime",
"ocamlmod",
"ocaml-mysql",
"ocaml-pcre",
"ocaml-perl4caml",
"ocaml-postgresql",
+ "ocaml-pp",
"ocaml-ppx-assert",
"ocaml-ppx-base",
"ocaml-ppx-cold",
"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-rresult",
"ocaml-SDL",
"ocaml-sedlex",
- "ocaml-seq",
"ocaml-sexplib",
"ocaml-sexplib0",
"ocaml-sha",
"ocaml-sqlite",
"ocaml-ssl",
"ocaml-stdcompat",
- "ocaml-stdint",
"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",
"haxe",
"hevea",
"hivex",
- "laby",
"libguestfs",
"libnbd",
"opam",
"plplot",
"prooftree",
"supermin",
+ "swig",
"utop",
"virt-top",
"virt-v2v",
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"
+ # 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.