about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/compilers/ocaml
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/compilers/ocaml')
-rw-r--r--nixpkgs/pkgs/development/compilers/ocaml/4.08.nix12
-rw-r--r--nixpkgs/pkgs/development/compilers/ocaml/generic.nix6
2 files changed, 16 insertions, 2 deletions
diff --git a/nixpkgs/pkgs/development/compilers/ocaml/4.08.nix b/nixpkgs/pkgs/development/compilers/ocaml/4.08.nix
new file mode 100644
index 000000000000..c6d0a114974f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/ocaml/4.08.nix
@@ -0,0 +1,12 @@
+import ./generic.nix {
+  major_version = "4";
+  minor_version = "08";
+  patch_version = "0+beta1";
+  sha256 = "1jgvp4pyhrg27wqpsx88kacw3ymjiz44nms9lzbh5s8pp05z5f5f";
+
+  # If the executable is stripped it does not work
+  dontStrip = true;
+
+  # Breaks build with Clang
+  hardeningDisable = [ "strictoverflow" ];
+}
diff --git a/nixpkgs/pkgs/development/compilers/ocaml/generic.nix b/nixpkgs/pkgs/development/compilers/ocaml/generic.nix
index 7ada5b804e35..0085739147bf 100644
--- a/nixpkgs/pkgs/development/compilers/ocaml/generic.nix
+++ b/nixpkgs/pkgs/development/compilers/ocaml/generic.nix
@@ -41,8 +41,10 @@ stdenv.mkDerivation (args // rec {
   };
 
   prefixKey = "-prefix ";
-  configureFlags = optionals useX11 [ "-x11lib" x11lib
-                                      "-x11include" x11inc ]
+  configureFlags = optionals useX11 (
+    if stdenv.lib.versionAtLeast version "4.08"
+    then [ "--x-libraries=${x11lib}" "--x-includes=${x11inc}"]
+    else [ "-x11lib" x11lib "-x11include" x11inc ])
   ++ optional flambdaSupport "-flambda"
   ;