opam-version: "2.0" license: "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception" synopsis: "OCaml 5.0.0, with ThreadSanitizer instrumentation" maintainer: [ "David Allsopp " "Florian Angeletti " ] authors: ["Xavier Leroy" "Damien Doligez" "Alain Frisch" "Jacques Garrigue" "Didier Rémy" "Jérôme Vouillon" "Anmol Sahoo" "Olivier Nicole" "Fabrice Buoro"] homepage: "https://github.com/ocaml-multicore/ocaml-tsan" bug-reports: "https://github.com/ocaml-multicore/ocaml-tsan/issues" dev-repo: "git+https://github.com/ocaml-multicore/ocaml-tsan.git#5.0.0+tsan" depends: [ "ocaml" {= "5.0.0" & post} "base-unix" {post} "base-bigarray" {post} "base-threads" {post} "base-domains" {post} "base-nnp" {post} "ocaml-beta" {opam-version < "2.1.0"} ] conflict-class: "ocaml-core-compiler" flags: [ compiler avoid-version ] setenv: CAML_LD_LIBRARY_PATH = "%{lib}%/stublibs" build-env: [ [LSAN_OPTIONS = "detect_leaks=0,exitcode=0"] [ASAN_OPTIONS = "detect_leaks=0,exitcode=0"] ] build: [ [ "./configure" "--prefix=%{prefix}%" "--docdir=%{doc}%/ocaml" "-C" "--disable-flat-float-array" {ocaml-option-no-flat-float-array:installed} "--enable-flambda" {ocaml-option-flambda:installed} "--enable-frame-pointers" {ocaml-option-fp:installed} "CC=cc" {!ocaml-option-32bit:installed & !ocaml-option-musl:installed & (os="openbsd"|os="macos")} "CC=musl-gcc" {ocaml-option-musl:installed & os-distribution!="alpine"} "CFLAGS=-Os" {ocaml-option-musl:installed} "--enable-tsan" "ASPP=musl-gcc -c" {ocaml-option-musl:installed & os-distribution!="alpine"} "LIBS=-static" {ocaml-option-static:installed} "--disable-warn-error" ] [make "-j%{jobs}%"] ] install: [make "install"] url { src: "https://github.com/ocaml-multicore/ocaml-tsan/archive/5.0.0+tsan.tar.gz" } conflicts: [ "ocaml-option-afl" "ocaml-option-bytecode-only" "ocaml-option-32bit" "ocaml-option-leak-sanitizer" "ocaml-option-address-sanitizer" ] depopts: [ "ocaml-option-32bit" "ocaml-option-afl" "ocaml-option-bytecode-only" "ocaml-option-no-flat-float-array" "ocaml-option-flambda" "ocaml-option-musl" "ocaml-option-leak-sanitizer" "ocaml-option-address-sanitizer" "ocaml-option-static" ] extra-source "ocaml-variants.install" { src: "https://raw.githubusercontent.com/ocaml/opam-source-archives/main/patches/ocaml-variants/ocaml-variants.install" checksum: [ "sha256=79f2a1a5044a91350a0eb6ce12e261a72a2855c094c425cddf3860e58c486678" "md5=3e969b841df1f51ca448e6e6295cb451" ] } available: os != "win32"