diff --git a/packages/ocaml-variants/ocaml-variants.4.14.1+BER/opam b/packages/ocaml-variants/ocaml-variants.4.14.1+BER/opam index 015a91aefc82..26582e83b0cd 100644 --- a/packages/ocaml-variants/ocaml-variants.4.14.1+BER/opam +++ b/packages/ocaml-variants/ocaml-variants.4.14.1+BER/opam @@ -77,4 +77,8 @@ depopts: [ "ocaml-option-nnp" "ocaml-option-nnpchecker" ] -available: !(os = "macos" & arch = "arm64") & os != "win32" +conflicts: [ + "ocaml-option-32bit" + "ocaml-option-bytecode-only" +] +available: os != "win32" diff --git a/packages/ocaml-variants/ocaml-variants.5.3.0+BER/opam b/packages/ocaml-variants/ocaml-variants.5.3.0+BER/opam index abcb3838658e..0f763f0c34ce 100644 --- a/packages/ocaml-variants/ocaml-variants.5.3.0+BER/opam +++ b/packages/ocaml-variants/ocaml-variants.5.3.0+BER/opam @@ -13,7 +13,13 @@ depends: [ "base-unix" {post} "base-bigarray" {post} "base-threads" {post} + "base-domains" {post} + "base-nnp" {post} + "base-effects" {post} "base-metaocaml-ocamlfind" {post} + + # All the 32-bit architectures are bytecode-only + "ocaml-option-bytecode-only" {arch != "arm64" & arch != "x86_64" & arch != "s390x" & arch != "riscv64" & arch != "ppc64"} ] conflict-class: "ocaml-core-compiler" flags: compiler @@ -26,27 +32,25 @@ build: [ "-C" "--with-afl" {ocaml-option-afl:installed} "--disable-native-compiler" {ocaml-option-bytecode-only:installed} - "--disable-force-safe-string" {ocaml-option-default-unsafe-string:installed} - "DEFAULT_STRING=unsafe" {ocaml-option-default-unsafe-string:installed} "--disable-flat-float-array" {ocaml-option-no-flat-float-array:installed} "--enable-flambda" {ocaml-option-flambda:installed} "--enable-frame-pointers" {ocaml-option-fp:installed} - "--disable-naked-pointers" {ocaml-option-nnp:installed} - "--enable-naked-pointers-checker" {ocaml-option-nnpchecker:installed} - "CC=cc" {!ocaml-option-32bit:installed & !ocaml-option-musl:installed & (os="openbsd"|os="macos")} + "--without-zstd" {ocaml-option-no-compression:installed} + "--enable-tsan" {ocaml-option-tsan:installed} + "CC=cc" {!ocaml-option-32bit:installed & !ocaml-option-musl:installed & (os = "openbsd" | os = "macos")} + "CC=clang" {ocaml-option-tsan:installed & (os="macos")} "CC=musl-gcc" {ocaml-option-musl:installed & os-distribution!="alpine"} - "CFLAGS=-Os" {ocaml-option-musl:installed} + "CFLAGS=-Os" {ocaml-option-musl:installed & arch != "arm64"} + "CFLAGS=-Os -mno-outline-atomics" {ocaml-option-musl:installed & arch = "arm64"} + "LDFLAGS=-Wl,--no-as-needed,-ldl" {ocaml-option-leak-sanitizer:installed | (ocaml-option-address-sanitizer:installed & os!="macos")} + "CC=gcc -ldl -fsanitize=leak -fno-omit-frame-pointer -O1 -g" {ocaml-option-leak-sanitizer:installed} + "CC=gcc -ldl -fsanitize=address -fno-omit-frame-pointer -O1 -g" {ocaml-option-address-sanitizer:installed & os!="macos"} + "CC=clang -fsanitize=address -fno-omit-frame-pointer -O1 -g" {ocaml-option-address-sanitizer:installed & os="macos"} "CC=gcc -m32" {ocaml-option-32bit:installed & os="linux"} "CC=gcc -Wl,-read_only_relocs,suppress -arch i386 -m32" {ocaml-option-32bit:installed & os="macos"} - "ASPP=cc -c" {!ocaml-option-32bit:installed & !ocaml-option-musl:installed & (os="openbsd"|os="macos")} "ASPP=musl-gcc -c" {ocaml-option-musl:installed & os-distribution!="alpine"} - "ASPP=gcc -m32 -c" {ocaml-option-32bit:installed & os="linux"} - "ASPP=gcc -arch i386 -m32 -c" {ocaml-option-32bit:installed & os="macos"} - "AS=as --32" {ocaml-option-32bit:installed & os="linux"} - "AS=as -arch i386" {ocaml-option-32bit:installed & os="macos"} "--host=i386-linux" {ocaml-option-32bit:installed & os="linux"} "--host=i386-apple-darwin13.2.0" {ocaml-option-32bit:installed & os="macos"} - "PARTIALLD=ld -r -melf_i386" {ocaml-option-32bit:installed & os="linux"} "LIBS=-static" {ocaml-option-static:installed} "--disable-warn-error" ] @@ -67,13 +71,18 @@ depopts: [ "ocaml-option-32bit" "ocaml-option-afl" "ocaml-option-bytecode-only" - "ocaml-option-default-unsafe-string" "ocaml-option-no-flat-float-array" "ocaml-option-flambda" "ocaml-option-fp" + "ocaml-option-no-compression" "ocaml-option-musl" + "ocaml-option-leak-sanitizer" + "ocaml-option-address-sanitizer" "ocaml-option-static" - "ocaml-option-nnp" - "ocaml-option-nnpchecker" + "ocaml-option-tsan" ] -available: !(os = "macos" & arch = "arm64") & os != "win32" & arch != "arm32" & arch != "x86_32" +conflicts: [ + "ocaml-option-32bit" + "ocaml-option-bytecode-only" +] +available: os != "win32"