mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 14:54:29 +01:00
opa: build with OCaml 4.03
This commit is contained in:
parent
8305cce210
commit
2ccfc2962e
3 changed files with 41 additions and 2 deletions
|
@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1qs91rq9xrafv2mf2v415k8lv91ab3ycz0xkpjh1mng5ca3pjlf3";
|
||||
};
|
||||
|
||||
patches = [ ./ocaml-4.03.patch ];
|
||||
|
||||
# Paths so the opa compiler code generation will use the same programs as were
|
||||
# used to build opa.
|
||||
codeGeneratorPaths = stdenv.lib.makeBinPath [ ocamlPackages.ocaml gcc binutils gnumake nodejs ];
|
||||
|
@ -23,7 +25,7 @@ stdenv.mkDerivation rec {
|
|||
patchShebangs .
|
||||
(
|
||||
cat ./compiler/buildinfos/buildInfos.ml.pre
|
||||
./compiler/buildinfos/generate_buildinfos.sh . --release --version ./compiler/buildinfos/version_major.txt
|
||||
./compiler/buildinfos/generate_buildinfos.sh . --release --version ./compiler/buildinfos/version_major.txt
|
||||
echo let opa_git_version = ${version}
|
||||
echo 'let opa_git_sha = "xxxx"'
|
||||
cat ./compiler/buildinfos/buildInfos.ml.post
|
||||
|
@ -34,6 +36,8 @@ stdenv.mkDerivation rec {
|
|||
done
|
||||
export CAMLP4O=${ocamlPackages.camlp4}/bin/camlp4o
|
||||
export CAMLP4ORF=${ocamlPackages.camlp4}/bin/camlp4orf
|
||||
export OCAMLBUILD=${ocamlPackages.ocamlbuild}/bin/ocamlbuild
|
||||
substituteInPlace _tags --replace ', warn_error_A' ""
|
||||
'';
|
||||
|
||||
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 { };
|
||||
|
||||
opa = callPackage ../development/compilers/opa {
|
||||
ocamlPackages = ocaml-ng.ocamlPackages_4_02;
|
||||
ocamlPackages = ocaml-ng.ocamlPackages_4_03;
|
||||
};
|
||||
|
||||
opaline = callPackage ../development/tools/ocaml/opaline { };
|
||||
|
|
Loading…
Reference in a new issue