summary refs log tree commit diff
path: root/pkgs/development/compilers/ocaml
diff options
context:
space:
mode:
authorWeijia Wang <9713184+wegank@users.noreply.github.com>2023-01-12 14:17:40 +0100
committerPeter Hoeg <peter@hoeg.com>2023-01-19 13:55:44 +0800
commit64a4e05f0d2932619fa8b4642d89ea97512771e8 (patch)
tree4a84bceff903dd8490949fe2e8bb937fa583b57f /pkgs/development/compilers/ocaml
parent551ee766e89a755fb5e0316a4f497eddbd88f277 (diff)
downloadnixpkgs-64a4e05f0d2932619fa8b4642d89ea97512771e8.tar
nixpkgs-64a4e05f0d2932619fa8b4642d89ea97512771e8.tar.gz
nixpkgs-64a4e05f0d2932619fa8b4642d89ea97512771e8.tar.bz2
nixpkgs-64a4e05f0d2932619fa8b4642d89ea97512771e8.tar.lz
nixpkgs-64a4e05f0d2932619fa8b4642d89ea97512771e8.tar.xz
nixpkgs-64a4e05f0d2932619fa8b4642d89ea97512771e8.tar.zst
nixpkgs-64a4e05f0d2932619fa8b4642d89ea97512771e8.zip
ocaml: add unsafe string support
Diffstat (limited to 'pkgs/development/compilers/ocaml')
-rw-r--r--pkgs/development/compilers/ocaml/generic.nix6
1 files changed, 6 insertions, 0 deletions
diff --git a/pkgs/development/compilers/ocaml/generic.nix b/pkgs/development/compilers/ocaml/generic.nix
index d3c15b8aa4e..ea89458c078 100644
--- a/pkgs/development/compilers/ocaml/generic.nix
+++ b/pkgs/development/compilers/ocaml/generic.nix
@@ -11,12 +11,14 @@ in
 , aflSupport ? false
 , flambdaSupport ? false
 , spaceTimeSupport ? false
+, unsafeStringSupport ? false
 }:
 
 assert useX11 -> safeX11 stdenv;
 assert aflSupport -> lib.versionAtLeast version "4.05";
 assert flambdaSupport -> lib.versionAtLeast version "4.03";
 assert spaceTimeSupport -> lib.versionAtLeast version "4.04";
+assert unsafeStringSupport -> lib.versionAtLeast version "4.06" && lib.versionOlder version "5.0";
 
 let
   src = args.src or (fetchurl {
@@ -59,6 +61,10 @@ stdenv.mkDerivation (args // {
   ++ optional aflSupport (flags "--with-afl" "-afl-instrument")
   ++ optional flambdaSupport (flags "--enable-flambda" "-flambda")
   ++ optional spaceTimeSupport (flags "--enable-spacetime" "-spacetime")
+  ++ optionals unsafeStringSupport [
+    "--disable-force-safe-string"
+    "DEFAULT_STRING=unsafe"
+  ]
   ++ optional (stdenv.hostPlatform.isStatic && (lib.versionOlder version "4.08")) "-no-shared-libs"
   ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform && lib.versionOlder version "4.08") [
     "-host ${stdenv.hostPlatform.config}"