opa: build with OCaml 4.03
This commit is contained in:
parent
8305cce210
commit
2ccfc2962e
@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "1qs91rq9xrafv2mf2v415k8lv91ab3ycz0xkpjh1mng5ca3pjlf3";
|
sha256 = "1qs91rq9xrafv2mf2v415k8lv91ab3ycz0xkpjh1mng5ca3pjlf3";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [ ./ocaml-4.03.patch ];
|
||||||
|
|
||||||
# Paths so the opa compiler code generation will use the same programs as were
|
# Paths so the opa compiler code generation will use the same programs as were
|
||||||
# used to build opa.
|
# used to build opa.
|
||||||
codeGeneratorPaths = stdenv.lib.makeBinPath [ ocamlPackages.ocaml gcc binutils gnumake nodejs ];
|
codeGeneratorPaths = stdenv.lib.makeBinPath [ ocamlPackages.ocaml gcc binutils gnumake nodejs ];
|
||||||
@ -34,6 +36,8 @@ stdenv.mkDerivation rec {
|
|||||||
done
|
done
|
||||||
export CAMLP4O=${ocamlPackages.camlp4}/bin/camlp4o
|
export CAMLP4O=${ocamlPackages.camlp4}/bin/camlp4o
|
||||||
export CAMLP4ORF=${ocamlPackages.camlp4}/bin/camlp4orf
|
export CAMLP4ORF=${ocamlPackages.camlp4}/bin/camlp4orf
|
||||||
|
export OCAMLBUILD=${ocamlPackages.ocamlbuild}/bin/ocamlbuild
|
||||||
|
substituteInPlace _tags --replace ', warn_error_A' ""
|
||||||
'';
|
'';
|
||||||
|
|
||||||
prefixKey = "-prefix ";
|
prefixKey = "-prefix ";
|
||||||
|
35
pkgs/development/compilers/opa/ocaml-4.03.patch
Normal file
35
pkgs/development/compilers/opa/ocaml-4.03.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
--- a/compiler/passes/surfaceAstRenaming.ml
|
||||||
|
+++ b/compiler/passes/surfaceAstRenaming.ml
|
||||||
|
@@ -1110,7 +1110,7 @@ let find_opt_local_or_global name all_env =
|
||||||
|
| None -> find_opt_global name all_env
|
||||||
|
| v -> v
|
||||||
|
|
||||||
|
-let path_expr_to_module_aux p = function
|
||||||
|
+let path_expr_to_module_aux p : _ -> _ result = function
|
||||||
|
| Some (OpenedIdent (tree, ident, path)) ->
|
||||||
|
(match Tree.get_path_opt tree p with
|
||||||
|
(* the path is not in the tree, which means a 'dot' access
|
||||||
|
diff --git a/ocamllib/libbase/baseInt64.mli b/ocamllib/libbase/baseInt64.mli
|
||||||
|
index fb544706..734437f9 100644
|
||||||
|
--- a/ocamllib/libbase/baseInt64.mli
|
||||||
|
+++ b/ocamllib/libbase/baseInt64.mli
|
||||||
|
@@ -40,7 +40,9 @@ external shift_right_logical : int64 -> int -> int64 = "%int64_lsr"
|
||||||
|
external of_int : int -> int64 = "%int64_of_int"
|
||||||
|
external to_int : int64 -> int = "%int64_to_int"
|
||||||
|
external of_float : float -> int64 = "caml_int64_of_float"
|
||||||
|
+ "caml_int64_of_float_unboxed" [@@unboxed] [@@noalloc]
|
||||||
|
external to_float : int64 -> float = "caml_int64_to_float"
|
||||||
|
+ "caml_int64_to_float_unboxed" [@@unboxed] [@@noalloc]
|
||||||
|
external of_int32 : int32 -> int64 = "%int64_of_int32"
|
||||||
|
external to_int32 : int64 -> int32 = "%int64_to_int32"
|
||||||
|
external of_nativeint : nativeint -> int64 = "%int64_of_nativeint"
|
||||||
|
@@ -48,7 +50,9 @@ external to_nativeint : int64 -> nativeint = "%int64_to_nativeint"
|
||||||
|
external of_string : string -> int64 = "caml_int64_of_string"
|
||||||
|
val to_string : int64 -> string
|
||||||
|
external bits_of_float : float -> int64 = "caml_int64_bits_of_float"
|
||||||
|
+ "caml_int64_bits_of_float_unboxed" [@@unboxed] [@@noalloc]
|
||||||
|
external float_of_bits : int64 -> float = "caml_int64_float_of_bits"
|
||||||
|
+ "caml_int64_float_of_bits_unboxed" [@@unboxed] [@@noalloc]
|
||||||
|
type t = int64
|
||||||
|
val compare : t -> t -> int
|
||||||
|
external format : string -> int64 -> string = "caml_int64_format"
|
@ -9698,7 +9698,7 @@ in
|
|||||||
ocsigen-i18n = callPackage ../development/tools/ocaml/ocsigen-i18n { };
|
ocsigen-i18n = callPackage ../development/tools/ocaml/ocsigen-i18n { };
|
||||||
|
|
||||||
opa = callPackage ../development/compilers/opa {
|
opa = callPackage ../development/compilers/opa {
|
||||||
ocamlPackages = ocaml-ng.ocamlPackages_4_02;
|
ocamlPackages = ocaml-ng.ocamlPackages_4_03;
|
||||||
};
|
};
|
||||||
|
|
||||||
opaline = callPackage ../development/tools/ocaml/opaline { };
|
opaline = callPackage ../development/tools/ocaml/opaline { };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user