From 648894813fc1d838c3bd25597f2a9d13b00ab328 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Wed, 21 Oct 2020 18:39:52 +0800 Subject: [PATCH 01/14] tweak --- jscomp/depends/binary_ast.ml | 5 ++--- lib/4.06.1/whole_compiler.ml | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/jscomp/depends/binary_ast.ml b/jscomp/depends/binary_ast.ml index bdf5e4e8bb..2609b7ccec 100644 --- a/jscomp/depends/binary_ast.ml +++ b/jscomp/depends/binary_ast.ml @@ -53,17 +53,16 @@ let magic_sep_char = '\n' 1. for performance , easy skipping and calcuate the length 2. cut dependency, otherwise its type is {!Ast_extract.Set_string.t} *) -let write_ast (type t) ~(sourcefile : string) ~output (kind : t kind) ( pt : t) : unit = - let oc = open_out_bin output in +let write_ast (type t) ~(sourcefile : string) ~output (kind : t kind) ( pt : t) : unit = let output_set = Ast_extract.read_parse_and_extract kind pt in let buf = Ext_buffer.create 1000 in - Ext_buffer.add_char buf magic_sep_char; Set_string.iter (fun s -> if s <> "" && s.[0] <> '*' then begin (* filter *predef* *) Ext_buffer.add_string_char buf s magic_sep_char; end ) output_set ; + let oc = open_out_bin output in output_binary_int oc (Ext_buffer.length buf); Ext_buffer.output_buffer oc buf; output_string oc sourcefile; diff --git a/lib/4.06.1/whole_compiler.ml b/lib/4.06.1/whole_compiler.ml index 8513c8c849..44894a571a 100644 --- a/lib/4.06.1/whole_compiler.ml +++ b/lib/4.06.1/whole_compiler.ml @@ -367109,17 +367109,16 @@ let magic_sep_char = '\n' 1. for performance , easy skipping and calcuate the length 2. cut dependency, otherwise its type is {!Ast_extract.Set_string.t} *) -let write_ast (type t) ~(sourcefile : string) ~output (kind : t kind) ( pt : t) : unit = - let oc = open_out_bin output in +let write_ast (type t) ~(sourcefile : string) ~output (kind : t kind) ( pt : t) : unit = let output_set = Ast_extract.read_parse_and_extract kind pt in let buf = Ext_buffer.create 1000 in - Ext_buffer.add_char buf magic_sep_char; Set_string.iter (fun s -> if s <> "" && s.[0] <> '*' then begin (* filter *predef* *) Ext_buffer.add_string_char buf s magic_sep_char; end ) output_set ; + let oc = open_out_bin output in output_binary_int oc (Ext_buffer.length buf); Ext_buffer.output_buffer oc buf; output_string oc sourcefile; From 09052c78f8e2511da24401b13d6e02b4fa4b5937 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Wed, 21 Oct 2020 18:40:35 +0800 Subject: [PATCH 02/14] update the build engine with minimal work --- ninja | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ninja b/ninja index 23e51a1477..910d41c937 160000 --- a/ninja +++ b/ninja @@ -1 +1 @@ -Subproject commit 23e51a1477cb018ec778a75c5ba585df8d6d860c +Subproject commit 910d41c937789f3b1e0bdfbd386136c716a21397 From d13b2a5aa976afba8293920e75977878b31b893c Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Wed, 21 Oct 2020 11:47:11 +0100 Subject: [PATCH 03/14] update build engine --- linux/ninja.exe | Bin 171080 -> 171080 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/linux/ninja.exe b/linux/ninja.exe index 46335e2e620ef52107ea08d844c6bf9f1113ecec..342294e6403674e48640ff22038f5c3d7f9f5286 100755 GIT binary patch delta 41540 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 oA9wSa9VTKlj;NYf2rqFOaK4? delta 43576 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 Date: Wed, 21 Oct 2020 18:57:49 +0800 Subject: [PATCH 04/14] fix CI --- scripts/ninjaFactory.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/ninjaFactory.js b/scripts/ninjaFactory.js index 43f54ed2bf..7bb93102b9 100644 --- a/scripts/ninjaFactory.js +++ b/scripts/ninjaFactory.js @@ -22,13 +22,13 @@ rule cc } description = Making $out # build bspp.exe: cc bspp.mli bspp.ml -build ../${process.platform}/bsb$ext: cc $INCL/bsb.mli $INCL/bsb.ml +o ../${process.platform}/bsb$ext: cc $INCL/bsb.mli $INCL/bsb.ml flags = $flags -unboxed-types unix.cmxa str.cmxa -build ../${process.platform}/bsb_helper$ext: cc $INCL/bsb_helper.mli $INCL/bsb_helper.ml +o ../${process.platform}/bsb_helper$ext: cc $INCL/bsb_helper.mli $INCL/bsb_helper.ml flags = $flags -unboxed-types -w -a -build ../${process.platform}/refmt$ext: cc $INCL/refmt_main3.mli $INCL/refmt_main3.ml +o ../${process.platform}/refmt$ext: cc $INCL/refmt_main3.mli $INCL/refmt_main3.ml flags = $flags -w -40-30 -no-alias-deps -I +compiler-libs ocamlcommon.cmxa -build ../${process.platform}/bsc$ext: cc $INCL/whole_compiler.mli $INCL/whole_compiler.ml +o ../${process.platform}/bsc$ext: cc $INCL/whole_compiler.mli $INCL/whole_compiler.ml flags = $flags -w A-4-9-48-40-45-41-44-50-21-30-32-34-37-27-60-42 -warn-error A `; } From 273835351fb277314d6e47e0fd0db8b222e89b53 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Wed, 21 Oct 2020 12:06:03 +0100 Subject: [PATCH 05/14] upate build engine --- linux/ninja.exe | Bin 171080 -> 171080 bytes ninja | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/linux/ninja.exe b/linux/ninja.exe index 342294e6403674e48640ff22038f5c3d7f9f5286..c71788af66abb39f53401a29db294790d8b1774e 100755 GIT binary patch delta 15576 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 Hx1|3A&h-1u diff --git a/ninja b/ninja index 910d41c937..178de53a1b 160000 --- a/ninja +++ b/ninja @@ -1 +1 @@ -Subproject commit 910d41c937789f3b1e0bdfbd386136c716a21397 +Subproject commit 178de53a1b666793fce33983ce19490979b04a04 From 8be22846d219047600f8bd4ccecc58f90d934a0e Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Wed, 21 Oct 2020 19:01:29 +0800 Subject: [PATCH 06/14] FIX CI --- jscomp/others/release.ninja | 272 +++--- jscomp/runtime/release.ninja | 114 +-- jscomp/stdlib-406/release.ninja | 186 ++-- jscomp/test/build.ninja | 1462 +++++++++++++++---------------- scripts/ninja.js | 48 +- 5 files changed, 1041 insertions(+), 1041 deletions(-) diff --git a/jscomp/others/release.ninja b/jscomp/others/release.ninja index 9ea6d11c58..326fee256e 100644 --- a/jscomp/others/release.ninja +++ b/jscomp/others/release.ninja @@ -10,139 +10,139 @@ rule cc_cmi -build others/belt.cmj others/belt.cmi : cc others/belt.ml | runtime -build others/node.cmj others/node.cmi : cc others/node.ml | runtime -build others/js_OO.cmi others/js_OO.cmj : cc others/js_OO.ml | runtime -build others/js_array.cmi others/js_array.cmj : cc others/js_array.ml | others/js_array2.cmj runtime -build others/js_array2.cmi others/js_array2.cmj : cc others/js_array2.ml | runtime -build others/js_cast.cmj : cc_cmi others/js_cast.ml | others/js_cast.cmi runtime -build others/js_cast.cmi : cc others/js_cast.mli | runtime -build others/js_console.cmi others/js_console.cmj : cc others/js_console.ml | runtime -build others/js_date.cmi others/js_date.cmj : cc others/js_date.ml | runtime -build others/js_dict.cmj : cc_cmi others/js_dict.ml | others/js_array2.cmj others/js_dict.cmi runtime -build others/js_dict.cmi : cc others/js_dict.mli | runtime -build others/js_exn.cmj : cc_cmi others/js_exn.ml | others/js_exn.cmi runtime -build others/js_exn.cmi : cc others/js_exn.mli | runtime -build others/js_float.cmi others/js_float.cmj : cc others/js_float.ml | runtime -build others/js_global.cmi others/js_global.cmj : cc others/js_global.ml | runtime -build others/js_int.cmi others/js_int.cmj : cc others/js_int.ml | runtime -build others/js_json.cmj : cc_cmi others/js_json.ml | others/js_array2.cmj others/js_dict.cmj others/js_json.cmi others/js_string.cmj others/js_types.cmj runtime -build others/js_json.cmi : cc others/js_json.mli | others/js_dict.cmi others/js_null.cmi others/js_string.cmj others/js_types.cmi runtime -build others/js_list.cmj : cc_cmi others/js_list.ml | others/js_array2.cmj others/js_list.cmi others/js_vector.cmj runtime -build others/js_list.cmi : cc others/js_list.mli | others/js_vector.cmi runtime -build others/js_mapperRt.cmj : cc_cmi others/js_mapperRt.ml | others/js_mapperRt.cmi runtime -build others/js_mapperRt.cmi : cc others/js_mapperRt.mli | runtime -build others/js_math.cmi others/js_math.cmj : cc others/js_math.ml | others/js_int.cmj runtime -build others/js_null.cmj : cc_cmi others/js_null.ml | others/js_exn.cmj others/js_null.cmi runtime -build others/js_null.cmi : cc others/js_null.mli | runtime -build others/js_null_undefined.cmj : cc_cmi others/js_null_undefined.ml | others/js_null_undefined.cmi runtime -build others/js_null_undefined.cmi : cc others/js_null_undefined.mli | runtime -build others/js_obj.cmi others/js_obj.cmj : cc others/js_obj.ml | runtime -build others/js_option.cmj : cc_cmi others/js_option.ml | others/js_exn.cmj others/js_option.cmi runtime -build others/js_option.cmi : cc others/js_option.mli | runtime -build others/js_promise.cmi others/js_promise.cmj : cc others/js_promise.ml | runtime -build others/js_re.cmi others/js_re.cmj : cc others/js_re.ml | runtime -build others/js_result.cmj : cc_cmi others/js_result.ml | others/js_result.cmi runtime -build others/js_result.cmi : cc others/js_result.mli | runtime -build others/js_string.cmi others/js_string.cmj : cc others/js_string.ml | others/js_array2.cmj others/js_re.cmj runtime -build others/js_string2.cmi others/js_string2.cmj : cc others/js_string2.ml | others/js_array2.cmj others/js_re.cmj runtime -build others/js_typed_array.cmi others/js_typed_array.cmj : cc others/js_typed_array.ml | others/js_typed_array2.cmj runtime -build others/js_typed_array2.cmi others/js_typed_array2.cmj : cc others/js_typed_array2.ml | runtime -build others/js_types.cmj : cc_cmi others/js_types.ml | others/js_null.cmj others/js_types.cmi runtime -build others/js_types.cmi : cc others/js_types.mli | runtime -build others/js_undefined.cmj : cc_cmi others/js_undefined.ml | others/js_exn.cmj others/js_undefined.cmi runtime -build others/js_undefined.cmi : cc others/js_undefined.mli | runtime -build others/js_vector.cmj : cc_cmi others/js_vector.ml | others/js_array2.cmj others/js_vector.cmi runtime -build others/js_vector.cmi : cc others/js_vector.mli | runtime -build js_pkg : phony others/js_OO.cmi others/js_OO.cmj others/js_array.cmi others/js_array.cmj others/js_array2.cmi others/js_array2.cmj others/js_cast.cmi others/js_cast.cmj others/js_console.cmi others/js_console.cmj others/js_date.cmi others/js_date.cmj others/js_dict.cmi others/js_dict.cmj others/js_exn.cmi others/js_exn.cmj others/js_float.cmi others/js_float.cmj others/js_global.cmi others/js_global.cmj others/js_int.cmi others/js_int.cmj others/js_json.cmi others/js_json.cmj others/js_list.cmi others/js_list.cmj others/js_mapperRt.cmi others/js_mapperRt.cmj others/js_math.cmi others/js_math.cmj others/js_null.cmi others/js_null.cmj others/js_null_undefined.cmi others/js_null_undefined.cmj others/js_obj.cmi others/js_obj.cmj others/js_option.cmi others/js_option.cmj others/js_promise.cmi others/js_promise.cmj others/js_re.cmi others/js_re.cmj others/js_result.cmi others/js_result.cmj others/js_string.cmi others/js_string.cmj others/js_string2.cmi others/js_string2.cmj others/js_typed_array.cmi others/js_typed_array.cmj others/js_typed_array2.cmi others/js_typed_array2.cmj others/js_types.cmi others/js_types.cmj others/js_undefined.cmi others/js_undefined.cmj others/js_vector.cmi others/js_vector.cmj -build others/belt_Array.cmj : cc_cmi others/belt_Array.ml | others/belt.cmi others/belt_Array.cmi others/js_math.cmj js_pkg runtime -build others/belt_Array.cmi : cc others/belt_Array.mli | runtime -build others/belt_Float.cmj : cc_cmi others/belt_Float.ml | others/belt.cmi others/belt_Float.cmi js_pkg runtime -build others/belt_Float.cmi : cc others/belt_Float.mli | runtime -build others/belt_HashMap.cmj : cc_cmi others/belt_HashMap.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashMap.cmi others/belt_HashMapInt.cmj others/belt_HashMapString.cmj others/belt_Id.cmj others/belt_internalBuckets.cmj others/belt_internalBucketsType.cmj js_pkg runtime -build others/belt_HashMap.cmi : cc others/belt_HashMap.mli | others/belt.cmi others/belt_HashMapInt.cmi others/belt_HashMapString.cmi others/belt_Id.cmi js_pkg runtime -build others/belt_HashMapInt.cmj : cc_cmi others/belt_HashMapInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashMapInt.cmi others/belt_internalBuckets.cmj others/belt_internalBucketsType.cmj js_pkg runtime -build others/belt_HashMapInt.cmi : cc others/belt_HashMapInt.mli | runtime -build others/belt_HashMapString.cmj : cc_cmi others/belt_HashMapString.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashMapString.cmi others/belt_internalBuckets.cmj others/belt_internalBucketsType.cmj js_pkg runtime -build others/belt_HashMapString.cmi : cc others/belt_HashMapString.mli | runtime -build others/belt_HashSet.cmj : cc_cmi others/belt_HashSet.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashSet.cmi others/belt_HashSetInt.cmj others/belt_HashSetString.cmj others/belt_Id.cmj others/belt_internalBucketsType.cmj others/belt_internalSetBuckets.cmj js_pkg runtime -build others/belt_HashSet.cmi : cc others/belt_HashSet.mli | others/belt.cmi others/belt_HashSetInt.cmi others/belt_HashSetString.cmi others/belt_Id.cmi js_pkg runtime -build others/belt_HashSetInt.cmj : cc_cmi others/belt_HashSetInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashSetInt.cmi others/belt_internalBucketsType.cmj others/belt_internalSetBuckets.cmj js_pkg runtime -build others/belt_HashSetInt.cmi : cc others/belt_HashSetInt.mli | runtime -build others/belt_HashSetString.cmj : cc_cmi others/belt_HashSetString.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashSetString.cmi others/belt_internalBucketsType.cmj others/belt_internalSetBuckets.cmj js_pkg runtime -build others/belt_HashSetString.cmi : cc others/belt_HashSetString.mli | runtime -build others/belt_Id.cmj : cc_cmi others/belt_Id.ml | others/belt.cmi others/belt_Id.cmi js_pkg runtime -build others/belt_Id.cmi : cc others/belt_Id.mli | runtime -build others/belt_Int.cmj : cc_cmi others/belt_Int.ml | others/belt.cmi others/belt_Int.cmi js_pkg runtime -build others/belt_Int.cmi : cc others/belt_Int.mli | runtime -build others/belt_List.cmj : cc_cmi others/belt_List.ml | others/belt.cmi others/belt_Array.cmj others/belt_List.cmi others/belt_SortArray.cmj js_pkg runtime -build others/belt_List.cmi : cc others/belt_List.mli | runtime -build others/belt_Map.cmj : cc_cmi others/belt_Map.ml | others/belt.cmi others/belt_Id.cmj others/belt_Map.cmi others/belt_MapDict.cmj others/belt_MapInt.cmj others/belt_MapString.cmj js_pkg runtime -build others/belt_Map.cmi : cc others/belt_Map.mli | others/belt.cmi others/belt_Id.cmi others/belt_MapDict.cmi others/belt_MapInt.cmi others/belt_MapString.cmi js_pkg runtime -build others/belt_MapDict.cmj : cc_cmi others/belt_MapDict.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_MapDict.cmi others/belt_internalAVLtree.cmj js_pkg runtime -build others/belt_MapDict.cmi : cc others/belt_MapDict.mli | others/belt.cmi others/belt_Id.cmi js_pkg runtime -build others/belt_MapInt.cmj : cc_cmi others/belt_MapInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_MapInt.cmi others/belt_internalAVLtree.cmj others/belt_internalMapInt.cmj js_pkg runtime -build others/belt_MapInt.cmi : cc others/belt_MapInt.mli | runtime -build others/belt_MapString.cmj : cc_cmi others/belt_MapString.ml | others/belt.cmi others/belt_Array.cmj others/belt_MapString.cmi others/belt_internalAVLtree.cmj others/belt_internalMapString.cmj js_pkg runtime -build others/belt_MapString.cmi : cc others/belt_MapString.mli | runtime -build others/belt_MutableMap.cmj : cc_cmi others/belt_MutableMap.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_MutableMap.cmi others/belt_MutableMapInt.cmj others/belt_MutableMapString.cmj others/belt_internalAVLtree.cmj js_pkg runtime -build others/belt_MutableMap.cmi : cc others/belt_MutableMap.mli | others/belt.cmi others/belt_Id.cmi others/belt_MutableMapInt.cmi others/belt_MutableMapString.cmi js_pkg runtime -build others/belt_MutableMapInt.cmj : cc_cmi others/belt_MutableMapInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableMapInt.cmi others/belt_internalAVLtree.cmj others/belt_internalMapInt.cmj js_pkg runtime -build others/belt_MutableMapInt.cmi : cc others/belt_MutableMapInt.mli | runtime -build others/belt_MutableMapString.cmj : cc_cmi others/belt_MutableMapString.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableMapString.cmi others/belt_internalAVLtree.cmj others/belt_internalMapString.cmj js_pkg runtime -build others/belt_MutableMapString.cmi : cc others/belt_MutableMapString.mli | runtime -build others/belt_MutableQueue.cmj : cc_cmi others/belt_MutableQueue.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableQueue.cmi js_pkg runtime -build others/belt_MutableQueue.cmi : cc others/belt_MutableQueue.mli | runtime -build others/belt_MutableSet.cmj : cc_cmi others/belt_MutableSet.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_MutableSet.cmi others/belt_MutableSetInt.cmj others/belt_MutableSetString.cmj others/belt_SortArray.cmj others/belt_internalAVLset.cmj js_pkg runtime -build others/belt_MutableSet.cmi : cc others/belt_MutableSet.mli | others/belt.cmi others/belt_Id.cmi others/belt_MutableSetInt.cmi others/belt_MutableSetString.cmi js_pkg runtime -build others/belt_MutableSetInt.cmj : cc_cmi others/belt_MutableSetInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableSetInt.cmi others/belt_SortArrayInt.cmj others/belt_internalAVLset.cmj others/belt_internalSetInt.cmj js_pkg runtime -build others/belt_MutableSetInt.cmi : cc others/belt_MutableSetInt.mli | runtime -build others/belt_MutableSetString.cmj : cc_cmi others/belt_MutableSetString.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableSetString.cmi others/belt_SortArrayString.cmj others/belt_internalAVLset.cmj others/belt_internalSetString.cmj js_pkg runtime -build others/belt_MutableSetString.cmi : cc others/belt_MutableSetString.mli | runtime -build others/belt_MutableStack.cmj : cc_cmi others/belt_MutableStack.ml | others/belt.cmi others/belt_MutableStack.cmi js_pkg runtime -build others/belt_MutableStack.cmi : cc others/belt_MutableStack.mli | runtime -build others/belt_Option.cmj : cc_cmi others/belt_Option.ml | others/belt.cmi others/belt_Option.cmi js_pkg runtime -build others/belt_Option.cmi : cc others/belt_Option.mli | runtime -build others/belt_Range.cmj : cc_cmi others/belt_Range.ml | others/belt.cmi others/belt_Range.cmi js_pkg runtime -build others/belt_Range.cmi : cc others/belt_Range.mli | runtime -build others/belt_Result.cmj : cc_cmi others/belt_Result.ml | others/belt.cmi others/belt_Result.cmi js_pkg runtime -build others/belt_Result.cmi : cc others/belt_Result.mli | runtime -build others/belt_Set.cmj : cc_cmi others/belt_Set.ml | others/belt.cmi others/belt_Id.cmj others/belt_Set.cmi others/belt_SetDict.cmj others/belt_SetInt.cmj others/belt_SetString.cmj js_pkg runtime -build others/belt_Set.cmi : cc others/belt_Set.mli | others/belt.cmi others/belt_Id.cmi others/belt_SetDict.cmi others/belt_SetInt.cmi others/belt_SetString.cmi js_pkg runtime -build others/belt_SetDict.cmj : cc_cmi others/belt_SetDict.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_SetDict.cmi others/belt_internalAVLset.cmj js_pkg runtime -build others/belt_SetDict.cmi : cc others/belt_SetDict.mli | others/belt.cmi others/belt_Id.cmi js_pkg runtime -build others/belt_SetInt.cmj : cc_cmi others/belt_SetInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_SetInt.cmi others/belt_internalAVLset.cmj others/belt_internalSetInt.cmj js_pkg runtime -build others/belt_SetInt.cmi : cc others/belt_SetInt.mli | runtime -build others/belt_SetString.cmj : cc_cmi others/belt_SetString.ml | others/belt.cmi others/belt_Array.cmj others/belt_SetString.cmi others/belt_internalAVLset.cmj others/belt_internalSetString.cmj js_pkg runtime -build others/belt_SetString.cmi : cc others/belt_SetString.mli | runtime -build others/belt_SortArray.cmj : cc_cmi others/belt_SortArray.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArray.cmi others/belt_SortArrayInt.cmj others/belt_SortArrayString.cmj js_pkg runtime -build others/belt_SortArray.cmi : cc others/belt_SortArray.mli | others/belt.cmi others/belt_SortArrayInt.cmi others/belt_SortArrayString.cmi js_pkg runtime -build others/belt_SortArrayInt.cmj : cc_cmi others/belt_SortArrayInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArrayInt.cmi js_pkg runtime -build others/belt_SortArrayInt.cmi : cc others/belt_SortArrayInt.mli | runtime -build others/belt_SortArrayString.cmj : cc_cmi others/belt_SortArrayString.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArrayString.cmi js_pkg runtime -build others/belt_SortArrayString.cmi : cc others/belt_SortArrayString.mli | runtime -build others/belt_internalAVLset.cmj : cc_cmi others/belt_internalAVLset.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_SortArray.cmj others/belt_internalAVLset.cmi js_pkg runtime -build others/belt_internalAVLset.cmi : cc others/belt_internalAVLset.mli | others/belt.cmi others/belt_Id.cmi js_pkg runtime -build others/belt_internalAVLtree.cmj : cc_cmi others/belt_internalAVLtree.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_SortArray.cmj others/belt_internalAVLtree.cmi js_pkg runtime -build others/belt_internalAVLtree.cmi : cc others/belt_internalAVLtree.mli | others/belt.cmi others/belt_Id.cmi js_pkg runtime -build others/belt_internalBuckets.cmj : cc_cmi others/belt_internalBuckets.ml | others/belt.cmi others/belt_Array.cmj others/belt_internalBuckets.cmi others/belt_internalBucketsType.cmj js_pkg runtime -build others/belt_internalBuckets.cmi : cc others/belt_internalBuckets.mli | others/belt.cmi others/belt_internalBucketsType.cmi js_pkg runtime -build others/belt_internalBucketsType.cmj : cc_cmi others/belt_internalBucketsType.ml | others/belt.cmi others/belt_Array.cmj others/belt_internalBucketsType.cmi js_pkg runtime -build others/belt_internalBucketsType.cmi : cc others/belt_internalBucketsType.mli | runtime -build others/belt_internalMapInt.cmi others/belt_internalMapInt.cmj : cc others/belt_internalMapInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArray.cmj others/belt_internalAVLtree.cmj js_pkg runtime -build others/belt_internalMapString.cmi others/belt_internalMapString.cmj : cc others/belt_internalMapString.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArray.cmj others/belt_internalAVLtree.cmj js_pkg runtime -build others/belt_internalSetBuckets.cmj : cc_cmi others/belt_internalSetBuckets.ml | others/belt.cmi others/belt_Array.cmj others/belt_internalBucketsType.cmj others/belt_internalSetBuckets.cmi js_pkg runtime -build others/belt_internalSetBuckets.cmi : cc others/belt_internalSetBuckets.mli | others/belt.cmi others/belt_internalBucketsType.cmi js_pkg runtime -build others/belt_internalSetInt.cmi others/belt_internalSetInt.cmj : cc others/belt_internalSetInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArrayInt.cmj others/belt_internalAVLset.cmj js_pkg runtime -build others/belt_internalSetString.cmi others/belt_internalSetString.cmj : cc others/belt_internalSetString.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArrayString.cmj others/belt_internalAVLset.cmj js_pkg runtime -build others/dom.cmi others/dom.cmj : cc others/dom.ml | others/dom_storage.cmj others/dom_storage2.cmj js_pkg runtime -build others/dom_storage.cmi others/dom_storage.cmj : cc others/dom_storage.ml | others/dom_storage2.cmj js_pkg runtime -build others/dom_storage2.cmi others/dom_storage2.cmj : cc others/dom_storage2.ml | runtime -build others/node_buffer.cmi others/node_buffer.cmj : cc others/node_buffer.ml | others/node.cmi others/node.cmj js_pkg runtime -build others/node_child_process.cmi others/node_child_process.cmj : cc others/node_child_process.ml | others/node.cmi others/node.cmj js_pkg runtime -build others/node_fs.cmi others/node_fs.cmj : cc others/node_fs.ml | others/js_string.cmj others/node.cmi others/node.cmj js_pkg runtime -build others/node_module.cmi others/node_module.cmj : cc others/node_module.ml | others/js_dict.cmj others/node.cmi others/node.cmj js_pkg runtime -build others/node_path.cmi others/node_path.cmj : cc others/node_path.ml | runtime -build others/node_process.cmj : cc_cmi others/node_process.ml | others/js_dict.cmj others/node.cmi others/node_process.cmi js_pkg runtime -build others/node_process.cmi : cc others/node_process.mli | others/js_dict.cmi others/node.cmi js_pkg runtime -build others : phony others/belt_Array.cmi others/belt_Array.cmj others/belt_Float.cmi others/belt_Float.cmj others/belt_HashMap.cmi others/belt_HashMap.cmj others/belt_HashMapInt.cmi others/belt_HashMapInt.cmj others/belt_HashMapString.cmi others/belt_HashMapString.cmj others/belt_HashSet.cmi others/belt_HashSet.cmj others/belt_HashSetInt.cmi others/belt_HashSetInt.cmj others/belt_HashSetString.cmi others/belt_HashSetString.cmj others/belt_Id.cmi others/belt_Id.cmj others/belt_Int.cmi others/belt_Int.cmj others/belt_List.cmi others/belt_List.cmj others/belt_Map.cmi others/belt_Map.cmj others/belt_MapDict.cmi others/belt_MapDict.cmj others/belt_MapInt.cmi others/belt_MapInt.cmj others/belt_MapString.cmi others/belt_MapString.cmj others/belt_MutableMap.cmi others/belt_MutableMap.cmj others/belt_MutableMapInt.cmi others/belt_MutableMapInt.cmj others/belt_MutableMapString.cmi others/belt_MutableMapString.cmj others/belt_MutableQueue.cmi others/belt_MutableQueue.cmj others/belt_MutableSet.cmi others/belt_MutableSet.cmj others/belt_MutableSetInt.cmi others/belt_MutableSetInt.cmj others/belt_MutableSetString.cmi others/belt_MutableSetString.cmj others/belt_MutableStack.cmi others/belt_MutableStack.cmj others/belt_Option.cmi others/belt_Option.cmj others/belt_Range.cmi others/belt_Range.cmj others/belt_Result.cmi others/belt_Result.cmj others/belt_Set.cmi others/belt_Set.cmj others/belt_SetDict.cmi others/belt_SetDict.cmj others/belt_SetInt.cmi others/belt_SetInt.cmj others/belt_SetString.cmi others/belt_SetString.cmj others/belt_SortArray.cmi others/belt_SortArray.cmj others/belt_SortArrayInt.cmi others/belt_SortArrayInt.cmj others/belt_SortArrayString.cmi others/belt_SortArrayString.cmj others/belt_internalAVLset.cmi others/belt_internalAVLset.cmj others/belt_internalAVLtree.cmi others/belt_internalAVLtree.cmj others/belt_internalBuckets.cmi others/belt_internalBuckets.cmj others/belt_internalBucketsType.cmi others/belt_internalBucketsType.cmj others/belt_internalMapInt.cmi others/belt_internalMapInt.cmj others/belt_internalMapString.cmi others/belt_internalMapString.cmj others/belt_internalSetBuckets.cmi others/belt_internalSetBuckets.cmj others/belt_internalSetInt.cmi others/belt_internalSetInt.cmj others/belt_internalSetString.cmi others/belt_internalSetString.cmj others/dom.cmi others/dom.cmj others/dom_storage.cmi others/dom_storage.cmj others/dom_storage2.cmi others/dom_storage2.cmj others/node_buffer.cmi others/node_buffer.cmj others/node_child_process.cmi others/node_child_process.cmj others/node_fs.cmi others/node_fs.cmj others/node_module.cmi others/node_module.cmj others/node_path.cmi others/node_path.cmj others/node_process.cmi others/node_process.cmj +o others/belt.cmj others/belt.cmi : cc others/belt.ml | runtime +o others/node.cmj others/node.cmi : cc others/node.ml | runtime +o others/js_OO.cmi others/js_OO.cmj : cc others/js_OO.ml | runtime +o others/js_array.cmi others/js_array.cmj : cc others/js_array.ml | others/js_array2.cmj runtime +o others/js_array2.cmi others/js_array2.cmj : cc others/js_array2.ml | runtime +o others/js_cast.cmj : cc_cmi others/js_cast.ml | others/js_cast.cmi runtime +o others/js_cast.cmi : cc others/js_cast.mli | runtime +o others/js_console.cmi others/js_console.cmj : cc others/js_console.ml | runtime +o others/js_date.cmi others/js_date.cmj : cc others/js_date.ml | runtime +o others/js_dict.cmj : cc_cmi others/js_dict.ml | others/js_array2.cmj others/js_dict.cmi runtime +o others/js_dict.cmi : cc others/js_dict.mli | runtime +o others/js_exn.cmj : cc_cmi others/js_exn.ml | others/js_exn.cmi runtime +o others/js_exn.cmi : cc others/js_exn.mli | runtime +o others/js_float.cmi others/js_float.cmj : cc others/js_float.ml | runtime +o others/js_global.cmi others/js_global.cmj : cc others/js_global.ml | runtime +o others/js_int.cmi others/js_int.cmj : cc others/js_int.ml | runtime +o others/js_json.cmj : cc_cmi others/js_json.ml | others/js_array2.cmj others/js_dict.cmj others/js_json.cmi others/js_string.cmj others/js_types.cmj runtime +o others/js_json.cmi : cc others/js_json.mli | others/js_dict.cmi others/js_null.cmi others/js_string.cmj others/js_types.cmi runtime +o others/js_list.cmj : cc_cmi others/js_list.ml | others/js_array2.cmj others/js_list.cmi others/js_vector.cmj runtime +o others/js_list.cmi : cc others/js_list.mli | others/js_vector.cmi runtime +o others/js_mapperRt.cmj : cc_cmi others/js_mapperRt.ml | others/js_mapperRt.cmi runtime +o others/js_mapperRt.cmi : cc others/js_mapperRt.mli | runtime +o others/js_math.cmi others/js_math.cmj : cc others/js_math.ml | others/js_int.cmj runtime +o others/js_null.cmj : cc_cmi others/js_null.ml | others/js_exn.cmj others/js_null.cmi runtime +o others/js_null.cmi : cc others/js_null.mli | runtime +o others/js_null_undefined.cmj : cc_cmi others/js_null_undefined.ml | others/js_null_undefined.cmi runtime +o others/js_null_undefined.cmi : cc others/js_null_undefined.mli | runtime +o others/js_obj.cmi others/js_obj.cmj : cc others/js_obj.ml | runtime +o others/js_option.cmj : cc_cmi others/js_option.ml | others/js_exn.cmj others/js_option.cmi runtime +o others/js_option.cmi : cc others/js_option.mli | runtime +o others/js_promise.cmi others/js_promise.cmj : cc others/js_promise.ml | runtime +o others/js_re.cmi others/js_re.cmj : cc others/js_re.ml | runtime +o others/js_result.cmj : cc_cmi others/js_result.ml | others/js_result.cmi runtime +o others/js_result.cmi : cc others/js_result.mli | runtime +o others/js_string.cmi others/js_string.cmj : cc others/js_string.ml | others/js_array2.cmj others/js_re.cmj runtime +o others/js_string2.cmi others/js_string2.cmj : cc others/js_string2.ml | others/js_array2.cmj others/js_re.cmj runtime +o others/js_typed_array.cmi others/js_typed_array.cmj : cc others/js_typed_array.ml | others/js_typed_array2.cmj runtime +o others/js_typed_array2.cmi others/js_typed_array2.cmj : cc others/js_typed_array2.ml | runtime +o others/js_types.cmj : cc_cmi others/js_types.ml | others/js_null.cmj others/js_types.cmi runtime +o others/js_types.cmi : cc others/js_types.mli | runtime +o others/js_undefined.cmj : cc_cmi others/js_undefined.ml | others/js_exn.cmj others/js_undefined.cmi runtime +o others/js_undefined.cmi : cc others/js_undefined.mli | runtime +o others/js_vector.cmj : cc_cmi others/js_vector.ml | others/js_array2.cmj others/js_vector.cmi runtime +o others/js_vector.cmi : cc others/js_vector.mli | runtime +o js_pkg : phony others/js_OO.cmi others/js_OO.cmj others/js_array.cmi others/js_array.cmj others/js_array2.cmi others/js_array2.cmj others/js_cast.cmi others/js_cast.cmj others/js_console.cmi others/js_console.cmj others/js_date.cmi others/js_date.cmj others/js_dict.cmi others/js_dict.cmj others/js_exn.cmi others/js_exn.cmj others/js_float.cmi others/js_float.cmj others/js_global.cmi others/js_global.cmj others/js_int.cmi others/js_int.cmj others/js_json.cmi others/js_json.cmj others/js_list.cmi others/js_list.cmj others/js_mapperRt.cmi others/js_mapperRt.cmj others/js_math.cmi others/js_math.cmj others/js_null.cmi others/js_null.cmj others/js_null_undefined.cmi others/js_null_undefined.cmj others/js_obj.cmi others/js_obj.cmj others/js_option.cmi others/js_option.cmj others/js_promise.cmi others/js_promise.cmj others/js_re.cmi others/js_re.cmj others/js_result.cmi others/js_result.cmj others/js_string.cmi others/js_string.cmj others/js_string2.cmi others/js_string2.cmj others/js_typed_array.cmi others/js_typed_array.cmj others/js_typed_array2.cmi others/js_typed_array2.cmj others/js_types.cmi others/js_types.cmj others/js_undefined.cmi others/js_undefined.cmj others/js_vector.cmi others/js_vector.cmj +o others/belt_Array.cmj : cc_cmi others/belt_Array.ml | others/belt.cmi others/belt_Array.cmi others/js_math.cmj js_pkg runtime +o others/belt_Array.cmi : cc others/belt_Array.mli | runtime +o others/belt_Float.cmj : cc_cmi others/belt_Float.ml | others/belt.cmi others/belt_Float.cmi js_pkg runtime +o others/belt_Float.cmi : cc others/belt_Float.mli | runtime +o others/belt_HashMap.cmj : cc_cmi others/belt_HashMap.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashMap.cmi others/belt_HashMapInt.cmj others/belt_HashMapString.cmj others/belt_Id.cmj others/belt_internalBuckets.cmj others/belt_internalBucketsType.cmj js_pkg runtime +o others/belt_HashMap.cmi : cc others/belt_HashMap.mli | others/belt.cmi others/belt_HashMapInt.cmi others/belt_HashMapString.cmi others/belt_Id.cmi js_pkg runtime +o others/belt_HashMapInt.cmj : cc_cmi others/belt_HashMapInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashMapInt.cmi others/belt_internalBuckets.cmj others/belt_internalBucketsType.cmj js_pkg runtime +o others/belt_HashMapInt.cmi : cc others/belt_HashMapInt.mli | runtime +o others/belt_HashMapString.cmj : cc_cmi others/belt_HashMapString.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashMapString.cmi others/belt_internalBuckets.cmj others/belt_internalBucketsType.cmj js_pkg runtime +o others/belt_HashMapString.cmi : cc others/belt_HashMapString.mli | runtime +o others/belt_HashSet.cmj : cc_cmi others/belt_HashSet.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashSet.cmi others/belt_HashSetInt.cmj others/belt_HashSetString.cmj others/belt_Id.cmj others/belt_internalBucketsType.cmj others/belt_internalSetBuckets.cmj js_pkg runtime +o others/belt_HashSet.cmi : cc others/belt_HashSet.mli | others/belt.cmi others/belt_HashSetInt.cmi others/belt_HashSetString.cmi others/belt_Id.cmi js_pkg runtime +o others/belt_HashSetInt.cmj : cc_cmi others/belt_HashSetInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashSetInt.cmi others/belt_internalBucketsType.cmj others/belt_internalSetBuckets.cmj js_pkg runtime +o others/belt_HashSetInt.cmi : cc others/belt_HashSetInt.mli | runtime +o others/belt_HashSetString.cmj : cc_cmi others/belt_HashSetString.ml | others/belt.cmi others/belt_Array.cmj others/belt_HashSetString.cmi others/belt_internalBucketsType.cmj others/belt_internalSetBuckets.cmj js_pkg runtime +o others/belt_HashSetString.cmi : cc others/belt_HashSetString.mli | runtime +o others/belt_Id.cmj : cc_cmi others/belt_Id.ml | others/belt.cmi others/belt_Id.cmi js_pkg runtime +o others/belt_Id.cmi : cc others/belt_Id.mli | runtime +o others/belt_Int.cmj : cc_cmi others/belt_Int.ml | others/belt.cmi others/belt_Int.cmi js_pkg runtime +o others/belt_Int.cmi : cc others/belt_Int.mli | runtime +o others/belt_List.cmj : cc_cmi others/belt_List.ml | others/belt.cmi others/belt_Array.cmj others/belt_List.cmi others/belt_SortArray.cmj js_pkg runtime +o others/belt_List.cmi : cc others/belt_List.mli | runtime +o others/belt_Map.cmj : cc_cmi others/belt_Map.ml | others/belt.cmi others/belt_Id.cmj others/belt_Map.cmi others/belt_MapDict.cmj others/belt_MapInt.cmj others/belt_MapString.cmj js_pkg runtime +o others/belt_Map.cmi : cc others/belt_Map.mli | others/belt.cmi others/belt_Id.cmi others/belt_MapDict.cmi others/belt_MapInt.cmi others/belt_MapString.cmi js_pkg runtime +o others/belt_MapDict.cmj : cc_cmi others/belt_MapDict.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_MapDict.cmi others/belt_internalAVLtree.cmj js_pkg runtime +o others/belt_MapDict.cmi : cc others/belt_MapDict.mli | others/belt.cmi others/belt_Id.cmi js_pkg runtime +o others/belt_MapInt.cmj : cc_cmi others/belt_MapInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_MapInt.cmi others/belt_internalAVLtree.cmj others/belt_internalMapInt.cmj js_pkg runtime +o others/belt_MapInt.cmi : cc others/belt_MapInt.mli | runtime +o others/belt_MapString.cmj : cc_cmi others/belt_MapString.ml | others/belt.cmi others/belt_Array.cmj others/belt_MapString.cmi others/belt_internalAVLtree.cmj others/belt_internalMapString.cmj js_pkg runtime +o others/belt_MapString.cmi : cc others/belt_MapString.mli | runtime +o others/belt_MutableMap.cmj : cc_cmi others/belt_MutableMap.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_MutableMap.cmi others/belt_MutableMapInt.cmj others/belt_MutableMapString.cmj others/belt_internalAVLtree.cmj js_pkg runtime +o others/belt_MutableMap.cmi : cc others/belt_MutableMap.mli | others/belt.cmi others/belt_Id.cmi others/belt_MutableMapInt.cmi others/belt_MutableMapString.cmi js_pkg runtime +o others/belt_MutableMapInt.cmj : cc_cmi others/belt_MutableMapInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableMapInt.cmi others/belt_internalAVLtree.cmj others/belt_internalMapInt.cmj js_pkg runtime +o others/belt_MutableMapInt.cmi : cc others/belt_MutableMapInt.mli | runtime +o others/belt_MutableMapString.cmj : cc_cmi others/belt_MutableMapString.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableMapString.cmi others/belt_internalAVLtree.cmj others/belt_internalMapString.cmj js_pkg runtime +o others/belt_MutableMapString.cmi : cc others/belt_MutableMapString.mli | runtime +o others/belt_MutableQueue.cmj : cc_cmi others/belt_MutableQueue.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableQueue.cmi js_pkg runtime +o others/belt_MutableQueue.cmi : cc others/belt_MutableQueue.mli | runtime +o others/belt_MutableSet.cmj : cc_cmi others/belt_MutableSet.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_MutableSet.cmi others/belt_MutableSetInt.cmj others/belt_MutableSetString.cmj others/belt_SortArray.cmj others/belt_internalAVLset.cmj js_pkg runtime +o others/belt_MutableSet.cmi : cc others/belt_MutableSet.mli | others/belt.cmi others/belt_Id.cmi others/belt_MutableSetInt.cmi others/belt_MutableSetString.cmi js_pkg runtime +o others/belt_MutableSetInt.cmj : cc_cmi others/belt_MutableSetInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableSetInt.cmi others/belt_SortArrayInt.cmj others/belt_internalAVLset.cmj others/belt_internalSetInt.cmj js_pkg runtime +o others/belt_MutableSetInt.cmi : cc others/belt_MutableSetInt.mli | runtime +o others/belt_MutableSetString.cmj : cc_cmi others/belt_MutableSetString.ml | others/belt.cmi others/belt_Array.cmj others/belt_MutableSetString.cmi others/belt_SortArrayString.cmj others/belt_internalAVLset.cmj others/belt_internalSetString.cmj js_pkg runtime +o others/belt_MutableSetString.cmi : cc others/belt_MutableSetString.mli | runtime +o others/belt_MutableStack.cmj : cc_cmi others/belt_MutableStack.ml | others/belt.cmi others/belt_MutableStack.cmi js_pkg runtime +o others/belt_MutableStack.cmi : cc others/belt_MutableStack.mli | runtime +o others/belt_Option.cmj : cc_cmi others/belt_Option.ml | others/belt.cmi others/belt_Option.cmi js_pkg runtime +o others/belt_Option.cmi : cc others/belt_Option.mli | runtime +o others/belt_Range.cmj : cc_cmi others/belt_Range.ml | others/belt.cmi others/belt_Range.cmi js_pkg runtime +o others/belt_Range.cmi : cc others/belt_Range.mli | runtime +o others/belt_Result.cmj : cc_cmi others/belt_Result.ml | others/belt.cmi others/belt_Result.cmi js_pkg runtime +o others/belt_Result.cmi : cc others/belt_Result.mli | runtime +o others/belt_Set.cmj : cc_cmi others/belt_Set.ml | others/belt.cmi others/belt_Id.cmj others/belt_Set.cmi others/belt_SetDict.cmj others/belt_SetInt.cmj others/belt_SetString.cmj js_pkg runtime +o others/belt_Set.cmi : cc others/belt_Set.mli | others/belt.cmi others/belt_Id.cmi others/belt_SetDict.cmi others/belt_SetInt.cmi others/belt_SetString.cmi js_pkg runtime +o others/belt_SetDict.cmj : cc_cmi others/belt_SetDict.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_SetDict.cmi others/belt_internalAVLset.cmj js_pkg runtime +o others/belt_SetDict.cmi : cc others/belt_SetDict.mli | others/belt.cmi others/belt_Id.cmi js_pkg runtime +o others/belt_SetInt.cmj : cc_cmi others/belt_SetInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_SetInt.cmi others/belt_internalAVLset.cmj others/belt_internalSetInt.cmj js_pkg runtime +o others/belt_SetInt.cmi : cc others/belt_SetInt.mli | runtime +o others/belt_SetString.cmj : cc_cmi others/belt_SetString.ml | others/belt.cmi others/belt_Array.cmj others/belt_SetString.cmi others/belt_internalAVLset.cmj others/belt_internalSetString.cmj js_pkg runtime +o others/belt_SetString.cmi : cc others/belt_SetString.mli | runtime +o others/belt_SortArray.cmj : cc_cmi others/belt_SortArray.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArray.cmi others/belt_SortArrayInt.cmj others/belt_SortArrayString.cmj js_pkg runtime +o others/belt_SortArray.cmi : cc others/belt_SortArray.mli | others/belt.cmi others/belt_SortArrayInt.cmi others/belt_SortArrayString.cmi js_pkg runtime +o others/belt_SortArrayInt.cmj : cc_cmi others/belt_SortArrayInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArrayInt.cmi js_pkg runtime +o others/belt_SortArrayInt.cmi : cc others/belt_SortArrayInt.mli | runtime +o others/belt_SortArrayString.cmj : cc_cmi others/belt_SortArrayString.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArrayString.cmi js_pkg runtime +o others/belt_SortArrayString.cmi : cc others/belt_SortArrayString.mli | runtime +o others/belt_internalAVLset.cmj : cc_cmi others/belt_internalAVLset.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_SortArray.cmj others/belt_internalAVLset.cmi js_pkg runtime +o others/belt_internalAVLset.cmi : cc others/belt_internalAVLset.mli | others/belt.cmi others/belt_Id.cmi js_pkg runtime +o others/belt_internalAVLtree.cmj : cc_cmi others/belt_internalAVLtree.ml | others/belt.cmi others/belt_Array.cmj others/belt_Id.cmj others/belt_SortArray.cmj others/belt_internalAVLtree.cmi js_pkg runtime +o others/belt_internalAVLtree.cmi : cc others/belt_internalAVLtree.mli | others/belt.cmi others/belt_Id.cmi js_pkg runtime +o others/belt_internalBuckets.cmj : cc_cmi others/belt_internalBuckets.ml | others/belt.cmi others/belt_Array.cmj others/belt_internalBuckets.cmi others/belt_internalBucketsType.cmj js_pkg runtime +o others/belt_internalBuckets.cmi : cc others/belt_internalBuckets.mli | others/belt.cmi others/belt_internalBucketsType.cmi js_pkg runtime +o others/belt_internalBucketsType.cmj : cc_cmi others/belt_internalBucketsType.ml | others/belt.cmi others/belt_Array.cmj others/belt_internalBucketsType.cmi js_pkg runtime +o others/belt_internalBucketsType.cmi : cc others/belt_internalBucketsType.mli | runtime +o others/belt_internalMapInt.cmi others/belt_internalMapInt.cmj : cc others/belt_internalMapInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArray.cmj others/belt_internalAVLtree.cmj js_pkg runtime +o others/belt_internalMapString.cmi others/belt_internalMapString.cmj : cc others/belt_internalMapString.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArray.cmj others/belt_internalAVLtree.cmj js_pkg runtime +o others/belt_internalSetBuckets.cmj : cc_cmi others/belt_internalSetBuckets.ml | others/belt.cmi others/belt_Array.cmj others/belt_internalBucketsType.cmj others/belt_internalSetBuckets.cmi js_pkg runtime +o others/belt_internalSetBuckets.cmi : cc others/belt_internalSetBuckets.mli | others/belt.cmi others/belt_internalBucketsType.cmi js_pkg runtime +o others/belt_internalSetInt.cmi others/belt_internalSetInt.cmj : cc others/belt_internalSetInt.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArrayInt.cmj others/belt_internalAVLset.cmj js_pkg runtime +o others/belt_internalSetString.cmi others/belt_internalSetString.cmj : cc others/belt_internalSetString.ml | others/belt.cmi others/belt_Array.cmj others/belt_SortArrayString.cmj others/belt_internalAVLset.cmj js_pkg runtime +o others/dom.cmi others/dom.cmj : cc others/dom.ml | others/dom_storage.cmj others/dom_storage2.cmj js_pkg runtime +o others/dom_storage.cmi others/dom_storage.cmj : cc others/dom_storage.ml | others/dom_storage2.cmj js_pkg runtime +o others/dom_storage2.cmi others/dom_storage2.cmj : cc others/dom_storage2.ml | runtime +o others/node_buffer.cmi others/node_buffer.cmj : cc others/node_buffer.ml | others/node.cmi others/node.cmj js_pkg runtime +o others/node_child_process.cmi others/node_child_process.cmj : cc others/node_child_process.ml | others/node.cmi others/node.cmj js_pkg runtime +o others/node_fs.cmi others/node_fs.cmj : cc others/node_fs.ml | others/js_string.cmj others/node.cmi others/node.cmj js_pkg runtime +o others/node_module.cmi others/node_module.cmj : cc others/node_module.ml | others/js_dict.cmj others/node.cmi others/node.cmj js_pkg runtime +o others/node_path.cmi others/node_path.cmj : cc others/node_path.ml | runtime +o others/node_process.cmj : cc_cmi others/node_process.ml | others/js_dict.cmj others/node.cmi others/node_process.cmi js_pkg runtime +o others/node_process.cmi : cc others/node_process.mli | others/js_dict.cmi others/node.cmi js_pkg runtime +o others : phony others/belt_Array.cmi others/belt_Array.cmj others/belt_Float.cmi others/belt_Float.cmj others/belt_HashMap.cmi others/belt_HashMap.cmj others/belt_HashMapInt.cmi others/belt_HashMapInt.cmj others/belt_HashMapString.cmi others/belt_HashMapString.cmj others/belt_HashSet.cmi others/belt_HashSet.cmj others/belt_HashSetInt.cmi others/belt_HashSetInt.cmj others/belt_HashSetString.cmi others/belt_HashSetString.cmj others/belt_Id.cmi others/belt_Id.cmj others/belt_Int.cmi others/belt_Int.cmj others/belt_List.cmi others/belt_List.cmj others/belt_Map.cmi others/belt_Map.cmj others/belt_MapDict.cmi others/belt_MapDict.cmj others/belt_MapInt.cmi others/belt_MapInt.cmj others/belt_MapString.cmi others/belt_MapString.cmj others/belt_MutableMap.cmi others/belt_MutableMap.cmj others/belt_MutableMapInt.cmi others/belt_MutableMapInt.cmj others/belt_MutableMapString.cmi others/belt_MutableMapString.cmj others/belt_MutableQueue.cmi others/belt_MutableQueue.cmj others/belt_MutableSet.cmi others/belt_MutableSet.cmj others/belt_MutableSetInt.cmi others/belt_MutableSetInt.cmj others/belt_MutableSetString.cmi others/belt_MutableSetString.cmj others/belt_MutableStack.cmi others/belt_MutableStack.cmj others/belt_Option.cmi others/belt_Option.cmj others/belt_Range.cmi others/belt_Range.cmj others/belt_Result.cmi others/belt_Result.cmj others/belt_Set.cmi others/belt_Set.cmj others/belt_SetDict.cmi others/belt_SetDict.cmj others/belt_SetInt.cmi others/belt_SetInt.cmj others/belt_SetString.cmi others/belt_SetString.cmj others/belt_SortArray.cmi others/belt_SortArray.cmj others/belt_SortArrayInt.cmi others/belt_SortArrayInt.cmj others/belt_SortArrayString.cmi others/belt_SortArrayString.cmj others/belt_internalAVLset.cmi others/belt_internalAVLset.cmj others/belt_internalAVLtree.cmi others/belt_internalAVLtree.cmj others/belt_internalBuckets.cmi others/belt_internalBuckets.cmj others/belt_internalBucketsType.cmi others/belt_internalBucketsType.cmj others/belt_internalMapInt.cmi others/belt_internalMapInt.cmj others/belt_internalMapString.cmi others/belt_internalMapString.cmj others/belt_internalSetBuckets.cmi others/belt_internalSetBuckets.cmj others/belt_internalSetInt.cmi others/belt_internalSetInt.cmj others/belt_internalSetString.cmi others/belt_internalSetString.cmj others/dom.cmi others/dom.cmj others/dom_storage.cmi others/dom_storage.cmj others/dom_storage2.cmi others/dom_storage2.cmj others/node_buffer.cmi others/node_buffer.cmj others/node_child_process.cmi others/node_child_process.cmj others/node_fs.cmi others/node_fs.cmj others/node_module.cmi others/node_module.cmj others/node_path.cmi others/node_path.cmj others/node_process.cmi others/node_process.cmj diff --git a/jscomp/runtime/release.ninja b/jscomp/runtime/release.ninja index bf357fa907..5bc51c1f52 100644 --- a/jscomp/runtime/release.ninja +++ b/jscomp/runtime/release.ninja @@ -9,62 +9,62 @@ rule cc_cmi command = $bsc -bs-read-cmi -bs-cmi -bs-cmj $bsc_flags -I runtime $in description = $in -> $out -build runtime/bs_stdlib_mini.cmi : cc runtime/bs_stdlib_mini.mli +o runtime/bs_stdlib_mini.cmi : cc runtime/bs_stdlib_mini.mli bsc_flags = -nostdlib -nopervasives -build runtime/js.cmj runtime/js.cmi : cc runtime/js.ml +o runtime/js.cmj runtime/js.cmi : cc runtime/js.ml bsc_flags = $bsc_no_open_flags -build runtime/caml_array.cmj : cc_cmi runtime/caml_array.ml | runtime/caml_array.cmi runtime/caml_array_extern.cmj -build runtime/caml_array.cmi : cc runtime/caml_array.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_bytes.cmj : cc_cmi runtime/caml_bytes.ml | runtime/caml_bytes.cmi runtime/caml_string_extern.cmj -build runtime/caml_bytes.cmi : cc runtime/caml_bytes.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_float.cmj : cc_cmi runtime/caml_float.ml | runtime/caml_float.cmi runtime/caml_float_extern.cmj -build runtime/caml_float.cmi : cc runtime/caml_float.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_format.cmj : cc_cmi runtime/caml_format.ml | runtime/caml_float.cmj runtime/caml_float_extern.cmj runtime/caml_format.cmi runtime/caml_int64.cmj runtime/caml_int64_extern.cmj runtime/caml_nativeint_extern.cmj runtime/caml_string_extern.cmj -build runtime/caml_format.cmi : cc runtime/caml_format.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_gc.cmj : cc_cmi runtime/caml_gc.ml | runtime/caml_gc.cmi -build runtime/caml_gc.cmi : cc runtime/caml_gc.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_hash.cmj : cc_cmi runtime/caml_hash.ml | runtime/caml_hash.cmi runtime/caml_hash_primitive.cmj runtime/caml_nativeint_extern.cmj runtime/js.cmj -build runtime/caml_hash.cmi : cc runtime/caml_hash.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_hash_primitive.cmj : cc_cmi runtime/caml_hash_primitive.ml | runtime/caml_hash_primitive.cmi runtime/caml_nativeint_extern.cmj runtime/caml_string_extern.cmj -build runtime/caml_hash_primitive.cmi : cc runtime/caml_hash_primitive.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_int32.cmj : cc_cmi runtime/caml_int32.ml | runtime/caml_int32.cmi runtime/caml_nativeint_extern.cmj -build runtime/caml_int32.cmi : cc runtime/caml_int32.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_int64.cmj : cc_cmi runtime/caml_int64.ml | runtime/caml_float.cmj runtime/caml_float_extern.cmj runtime/caml_int64.cmi runtime/caml_nativeint_extern.cmj runtime/caml_primitive.cmj runtime/caml_string_extern.cmj runtime/js.cmj -build runtime/caml_int64.cmi : cc runtime/caml_int64.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_io.cmj : cc_cmi runtime/caml_io.ml | runtime/caml_io.cmi runtime/caml_string_extern.cmj runtime/caml_undefined_extern.cmj runtime/js.cmj -build runtime/caml_io.cmi : cc runtime/caml_io.mli | runtime/bs_stdlib_mini.cmi runtime/caml_undefined_extern.cmj runtime/js.cmi runtime/js.cmj -build runtime/caml_lexer.cmj : cc_cmi runtime/caml_lexer.ml | runtime/caml_lexer.cmi -build runtime/caml_lexer.cmi : cc runtime/caml_lexer.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_md5.cmj : cc_cmi runtime/caml_md5.ml | runtime/caml_array_extern.cmj runtime/caml_int32_extern.cmj runtime/caml_md5.cmi runtime/caml_string_extern.cmj -build runtime/caml_md5.cmi : cc runtime/caml_md5.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_module.cmj : cc_cmi runtime/caml_module.ml | runtime/caml_array_extern.cmj runtime/caml_module.cmi runtime/caml_obj.cmj -build runtime/caml_module.cmi : cc runtime/caml_module.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_obj.cmj : cc_cmi runtime/caml_obj.ml | runtime/caml_array_extern.cmj runtime/caml_obj.cmi runtime/caml_option.cmj runtime/caml_primitive.cmj runtime/js.cmj -build runtime/caml_obj.cmi : cc runtime/caml_obj.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_oo.cmj : cc_cmi runtime/caml_oo.ml | runtime/caml_array.cmj runtime/caml_array_extern.cmj runtime/caml_exceptions.cmj runtime/caml_oo.cmi -build runtime/caml_oo.cmi : cc runtime/caml_oo.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_option.cmj : cc_cmi runtime/caml_option.ml | runtime/caml_option.cmi runtime/caml_undefined_extern.cmj runtime/js.cmj -build runtime/caml_option.cmi : cc runtime/caml_option.mli | runtime/bs_stdlib_mini.cmi runtime/caml_undefined_extern.cmj runtime/js.cmi runtime/js.cmj -build runtime/caml_parser.cmj : cc_cmi runtime/caml_parser.ml | runtime/caml_parser.cmi -build runtime/caml_parser.cmi : cc runtime/caml_parser.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_primitive.cmj : cc_cmi runtime/caml_primitive.ml | runtime/caml_primitive.cmi -build runtime/caml_primitive.cmi : cc runtime/caml_primitive.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_splice_call.cmj : cc_cmi runtime/caml_splice_call.ml | runtime/caml_splice_call.cmi -build runtime/caml_splice_call.cmi : cc runtime/caml_splice_call.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_string.cmj : cc_cmi runtime/caml_string.ml | runtime/caml_string.cmi runtime/caml_string_extern.cmj -build runtime/caml_string.cmi : cc runtime/caml_string.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_sys.cmj : cc_cmi runtime/caml_sys.ml | runtime/caml_array_extern.cmj runtime/caml_sys.cmi runtime/caml_undefined_extern.cmj runtime/js.cmj -build runtime/caml_sys.cmi : cc runtime/caml_sys.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_array_extern.cmi runtime/caml_array_extern.cmj : cc runtime/caml_array_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_exceptions.cmi runtime/caml_exceptions.cmj : cc runtime/caml_exceptions.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_external_polyfill.cmi runtime/caml_external_polyfill.cmj : cc runtime/caml_external_polyfill.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_float_extern.cmi runtime/caml_float_extern.cmj : cc runtime/caml_float_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_int32_extern.cmi runtime/caml_int32_extern.cmj : cc runtime/caml_int32_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_int64_extern.cmi runtime/caml_int64_extern.cmj : cc runtime/caml_int64_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_js_exceptions.cmi runtime/caml_js_exceptions.cmj : cc runtime/caml_js_exceptions.ml | runtime/bs_stdlib_mini.cmi runtime/caml_exceptions.cmj runtime/caml_option.cmj runtime/js.cmi runtime/js.cmj -build runtime/caml_nativeint_extern.cmi runtime/caml_nativeint_extern.cmj : cc runtime/caml_nativeint_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_oo_curry.cmi runtime/caml_oo_curry.cmj : cc runtime/caml_oo_curry.ml | runtime/bs_stdlib_mini.cmi runtime/caml_oo.cmj runtime/curry.cmj runtime/js.cmi runtime/js.cmj -build runtime/caml_string_extern.cmi runtime/caml_string_extern.cmj : cc runtime/caml_string_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/caml_undefined_extern.cmi runtime/caml_undefined_extern.cmj : cc runtime/caml_undefined_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj -build runtime/curry.cmi runtime/curry.cmj : cc runtime/curry.ml | runtime/bs_stdlib_mini.cmi runtime/caml_array.cmj runtime/caml_array_extern.cmj runtime/js.cmi runtime/js.cmj -build runtime : phony runtime/bs_stdlib_mini.cmi runtime/js.cmj runtime/js.cmi runtime/caml_array.cmi runtime/caml_array.cmj runtime/caml_bytes.cmi runtime/caml_bytes.cmj runtime/caml_float.cmi runtime/caml_float.cmj runtime/caml_format.cmi runtime/caml_format.cmj runtime/caml_gc.cmi runtime/caml_gc.cmj runtime/caml_hash.cmi runtime/caml_hash.cmj runtime/caml_hash_primitive.cmi runtime/caml_hash_primitive.cmj runtime/caml_int32.cmi runtime/caml_int32.cmj runtime/caml_int64.cmi runtime/caml_int64.cmj runtime/caml_io.cmi runtime/caml_io.cmj runtime/caml_lexer.cmi runtime/caml_lexer.cmj runtime/caml_md5.cmi runtime/caml_md5.cmj runtime/caml_module.cmi runtime/caml_module.cmj runtime/caml_obj.cmi runtime/caml_obj.cmj runtime/caml_oo.cmi runtime/caml_oo.cmj runtime/caml_option.cmi runtime/caml_option.cmj runtime/caml_parser.cmi runtime/caml_parser.cmj runtime/caml_primitive.cmi runtime/caml_primitive.cmj runtime/caml_splice_call.cmi runtime/caml_splice_call.cmj runtime/caml_string.cmi runtime/caml_string.cmj runtime/caml_sys.cmi runtime/caml_sys.cmj runtime/caml_array_extern.cmi runtime/caml_array_extern.cmj runtime/caml_exceptions.cmi runtime/caml_exceptions.cmj runtime/caml_external_polyfill.cmi runtime/caml_external_polyfill.cmj runtime/caml_float_extern.cmi runtime/caml_float_extern.cmj runtime/caml_int32_extern.cmi runtime/caml_int32_extern.cmj runtime/caml_int64_extern.cmi runtime/caml_int64_extern.cmj runtime/caml_js_exceptions.cmi runtime/caml_js_exceptions.cmj runtime/caml_nativeint_extern.cmi runtime/caml_nativeint_extern.cmj runtime/caml_oo_curry.cmi runtime/caml_oo_curry.cmj runtime/caml_string_extern.cmi runtime/caml_string_extern.cmj runtime/caml_undefined_extern.cmi runtime/caml_undefined_extern.cmj runtime/curry.cmi runtime/curry.cmj +o runtime/caml_array.cmj : cc_cmi runtime/caml_array.ml | runtime/caml_array.cmi runtime/caml_array_extern.cmj +o runtime/caml_array.cmi : cc runtime/caml_array.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_bytes.cmj : cc_cmi runtime/caml_bytes.ml | runtime/caml_bytes.cmi runtime/caml_string_extern.cmj +o runtime/caml_bytes.cmi : cc runtime/caml_bytes.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_float.cmj : cc_cmi runtime/caml_float.ml | runtime/caml_float.cmi runtime/caml_float_extern.cmj +o runtime/caml_float.cmi : cc runtime/caml_float.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_format.cmj : cc_cmi runtime/caml_format.ml | runtime/caml_float.cmj runtime/caml_float_extern.cmj runtime/caml_format.cmi runtime/caml_int64.cmj runtime/caml_int64_extern.cmj runtime/caml_nativeint_extern.cmj runtime/caml_string_extern.cmj +o runtime/caml_format.cmi : cc runtime/caml_format.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_gc.cmj : cc_cmi runtime/caml_gc.ml | runtime/caml_gc.cmi +o runtime/caml_gc.cmi : cc runtime/caml_gc.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_hash.cmj : cc_cmi runtime/caml_hash.ml | runtime/caml_hash.cmi runtime/caml_hash_primitive.cmj runtime/caml_nativeint_extern.cmj runtime/js.cmj +o runtime/caml_hash.cmi : cc runtime/caml_hash.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_hash_primitive.cmj : cc_cmi runtime/caml_hash_primitive.ml | runtime/caml_hash_primitive.cmi runtime/caml_nativeint_extern.cmj runtime/caml_string_extern.cmj +o runtime/caml_hash_primitive.cmi : cc runtime/caml_hash_primitive.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_int32.cmj : cc_cmi runtime/caml_int32.ml | runtime/caml_int32.cmi runtime/caml_nativeint_extern.cmj +o runtime/caml_int32.cmi : cc runtime/caml_int32.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_int64.cmj : cc_cmi runtime/caml_int64.ml | runtime/caml_float.cmj runtime/caml_float_extern.cmj runtime/caml_int64.cmi runtime/caml_nativeint_extern.cmj runtime/caml_primitive.cmj runtime/caml_string_extern.cmj runtime/js.cmj +o runtime/caml_int64.cmi : cc runtime/caml_int64.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_io.cmj : cc_cmi runtime/caml_io.ml | runtime/caml_io.cmi runtime/caml_string_extern.cmj runtime/caml_undefined_extern.cmj runtime/js.cmj +o runtime/caml_io.cmi : cc runtime/caml_io.mli | runtime/bs_stdlib_mini.cmi runtime/caml_undefined_extern.cmj runtime/js.cmi runtime/js.cmj +o runtime/caml_lexer.cmj : cc_cmi runtime/caml_lexer.ml | runtime/caml_lexer.cmi +o runtime/caml_lexer.cmi : cc runtime/caml_lexer.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_md5.cmj : cc_cmi runtime/caml_md5.ml | runtime/caml_array_extern.cmj runtime/caml_int32_extern.cmj runtime/caml_md5.cmi runtime/caml_string_extern.cmj +o runtime/caml_md5.cmi : cc runtime/caml_md5.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_module.cmj : cc_cmi runtime/caml_module.ml | runtime/caml_array_extern.cmj runtime/caml_module.cmi runtime/caml_obj.cmj +o runtime/caml_module.cmi : cc runtime/caml_module.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_obj.cmj : cc_cmi runtime/caml_obj.ml | runtime/caml_array_extern.cmj runtime/caml_obj.cmi runtime/caml_option.cmj runtime/caml_primitive.cmj runtime/js.cmj +o runtime/caml_obj.cmi : cc runtime/caml_obj.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_oo.cmj : cc_cmi runtime/caml_oo.ml | runtime/caml_array.cmj runtime/caml_array_extern.cmj runtime/caml_exceptions.cmj runtime/caml_oo.cmi +o runtime/caml_oo.cmi : cc runtime/caml_oo.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_option.cmj : cc_cmi runtime/caml_option.ml | runtime/caml_option.cmi runtime/caml_undefined_extern.cmj runtime/js.cmj +o runtime/caml_option.cmi : cc runtime/caml_option.mli | runtime/bs_stdlib_mini.cmi runtime/caml_undefined_extern.cmj runtime/js.cmi runtime/js.cmj +o runtime/caml_parser.cmj : cc_cmi runtime/caml_parser.ml | runtime/caml_parser.cmi +o runtime/caml_parser.cmi : cc runtime/caml_parser.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_primitive.cmj : cc_cmi runtime/caml_primitive.ml | runtime/caml_primitive.cmi +o runtime/caml_primitive.cmi : cc runtime/caml_primitive.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_splice_call.cmj : cc_cmi runtime/caml_splice_call.ml | runtime/caml_splice_call.cmi +o runtime/caml_splice_call.cmi : cc runtime/caml_splice_call.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_string.cmj : cc_cmi runtime/caml_string.ml | runtime/caml_string.cmi runtime/caml_string_extern.cmj +o runtime/caml_string.cmi : cc runtime/caml_string.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_sys.cmj : cc_cmi runtime/caml_sys.ml | runtime/caml_array_extern.cmj runtime/caml_sys.cmi runtime/caml_undefined_extern.cmj runtime/js.cmj +o runtime/caml_sys.cmi : cc runtime/caml_sys.mli | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_array_extern.cmi runtime/caml_array_extern.cmj : cc runtime/caml_array_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_exceptions.cmi runtime/caml_exceptions.cmj : cc runtime/caml_exceptions.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_external_polyfill.cmi runtime/caml_external_polyfill.cmj : cc runtime/caml_external_polyfill.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_float_extern.cmi runtime/caml_float_extern.cmj : cc runtime/caml_float_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_int32_extern.cmi runtime/caml_int32_extern.cmj : cc runtime/caml_int32_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_int64_extern.cmi runtime/caml_int64_extern.cmj : cc runtime/caml_int64_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_js_exceptions.cmi runtime/caml_js_exceptions.cmj : cc runtime/caml_js_exceptions.ml | runtime/bs_stdlib_mini.cmi runtime/caml_exceptions.cmj runtime/caml_option.cmj runtime/js.cmi runtime/js.cmj +o runtime/caml_nativeint_extern.cmi runtime/caml_nativeint_extern.cmj : cc runtime/caml_nativeint_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_oo_curry.cmi runtime/caml_oo_curry.cmj : cc runtime/caml_oo_curry.ml | runtime/bs_stdlib_mini.cmi runtime/caml_oo.cmj runtime/curry.cmj runtime/js.cmi runtime/js.cmj +o runtime/caml_string_extern.cmi runtime/caml_string_extern.cmj : cc runtime/caml_string_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/caml_undefined_extern.cmi runtime/caml_undefined_extern.cmj : cc runtime/caml_undefined_extern.ml | runtime/bs_stdlib_mini.cmi runtime/js.cmi runtime/js.cmj +o runtime/curry.cmi runtime/curry.cmj : cc runtime/curry.ml | runtime/bs_stdlib_mini.cmi runtime/caml_array.cmj runtime/caml_array_extern.cmj runtime/js.cmi runtime/js.cmj +o runtime : phony runtime/bs_stdlib_mini.cmi runtime/js.cmj runtime/js.cmi runtime/caml_array.cmi runtime/caml_array.cmj runtime/caml_bytes.cmi runtime/caml_bytes.cmj runtime/caml_float.cmi runtime/caml_float.cmj runtime/caml_format.cmi runtime/caml_format.cmj runtime/caml_gc.cmi runtime/caml_gc.cmj runtime/caml_hash.cmi runtime/caml_hash.cmj runtime/caml_hash_primitive.cmi runtime/caml_hash_primitive.cmj runtime/caml_int32.cmi runtime/caml_int32.cmj runtime/caml_int64.cmi runtime/caml_int64.cmj runtime/caml_io.cmi runtime/caml_io.cmj runtime/caml_lexer.cmi runtime/caml_lexer.cmj runtime/caml_md5.cmi runtime/caml_md5.cmj runtime/caml_module.cmi runtime/caml_module.cmj runtime/caml_obj.cmi runtime/caml_obj.cmj runtime/caml_oo.cmi runtime/caml_oo.cmj runtime/caml_option.cmi runtime/caml_option.cmj runtime/caml_parser.cmi runtime/caml_parser.cmj runtime/caml_primitive.cmi runtime/caml_primitive.cmj runtime/caml_splice_call.cmi runtime/caml_splice_call.cmj runtime/caml_string.cmi runtime/caml_string.cmj runtime/caml_sys.cmi runtime/caml_sys.cmj runtime/caml_array_extern.cmi runtime/caml_array_extern.cmj runtime/caml_exceptions.cmi runtime/caml_exceptions.cmj runtime/caml_external_polyfill.cmi runtime/caml_external_polyfill.cmj runtime/caml_float_extern.cmi runtime/caml_float_extern.cmj runtime/caml_int32_extern.cmi runtime/caml_int32_extern.cmj runtime/caml_int64_extern.cmi runtime/caml_int64_extern.cmj runtime/caml_js_exceptions.cmi runtime/caml_js_exceptions.cmj runtime/caml_nativeint_extern.cmi runtime/caml_nativeint_extern.cmj runtime/caml_oo_curry.cmi runtime/caml_oo_curry.cmj runtime/caml_string_extern.cmi runtime/caml_string_extern.cmj runtime/caml_undefined_extern.cmi runtime/caml_undefined_extern.cmj runtime/curry.cmi runtime/curry.cmj diff --git a/jscomp/stdlib-406/release.ninja b/jscomp/stdlib-406/release.ninja index cedc02f422..647b3f12fb 100644 --- a/jscomp/stdlib-406/release.ninja +++ b/jscomp/stdlib-406/release.ninja @@ -8,112 +8,112 @@ rule cc_cmi command = $bsc -bs-read-cmi -bs-cmi -bs-cmj $bsc_flags -I stdlib-406 $in description = $in -> $out -build stdlib-406/camlinternalFormatBasics.cmi : cc stdlib-406/camlinternalFormatBasics.mli | others +o stdlib-406/camlinternalFormatBasics.cmi : cc stdlib-406/camlinternalFormatBasics.mli | others bsc_flags = $bsc_flags -nopervasives -build stdlib-406/camlinternalFormatBasics.cmj : cc_cmi stdlib-406/camlinternalFormatBasics.ml | stdlib-406/camlinternalFormatBasics.cmi others +o stdlib-406/camlinternalFormatBasics.cmj : cc_cmi stdlib-406/camlinternalFormatBasics.ml | stdlib-406/camlinternalFormatBasics.cmi others bsc_flags = $bsc_flags -nopervasives -build stdlib-406/pervasives.cmj : cc_cmi stdlib-406/pervasives.ml | stdlib-406/pervasives.cmi others +o stdlib-406/pervasives.cmj : cc_cmi stdlib-406/pervasives.ml | stdlib-406/pervasives.cmi others bsc_flags = $bsc_flags -nopervasives -build stdlib-406/pervasives.cmi : cc stdlib-406/pervasives.mli | stdlib-406/camlinternalFormatBasics.cmj others +o stdlib-406/pervasives.cmi : cc stdlib-406/pervasives.mli | stdlib-406/camlinternalFormatBasics.cmj others bsc_flags = $bsc_flags -nopervasives -build stdlib-406/arg.cmj : cc_cmi stdlib-406/arg.ml | stdlib-406/arg.cmi stdlib-406/array.cmj stdlib-406/buffer.cmj stdlib-406/list.cmj stdlib-406/printf.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others -build stdlib-406/arg.cmi : cc stdlib-406/arg.mli | stdlib-406/pervasives.cmj others -build stdlib-406/array.cmj : cc_cmi stdlib-406/array.ml | stdlib-406/array.cmi others -build stdlib-406/array.cmi : cc stdlib-406/array.mli | stdlib-406/pervasives.cmj others -build stdlib-406/arrayLabels.cmj : cc_cmi stdlib-406/arrayLabels.ml | stdlib-406/array.cmj stdlib-406/arrayLabels.cmi others +o stdlib-406/arg.cmj : cc_cmi stdlib-406/arg.ml | stdlib-406/arg.cmi stdlib-406/array.cmj stdlib-406/buffer.cmj stdlib-406/list.cmj stdlib-406/printf.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others +o stdlib-406/arg.cmi : cc stdlib-406/arg.mli | stdlib-406/pervasives.cmj others +o stdlib-406/array.cmj : cc_cmi stdlib-406/array.ml | stdlib-406/array.cmi others +o stdlib-406/array.cmi : cc stdlib-406/array.mli | stdlib-406/pervasives.cmj others +o stdlib-406/arrayLabels.cmj : cc_cmi stdlib-406/arrayLabels.ml | stdlib-406/array.cmj stdlib-406/arrayLabels.cmi others bsc_flags = $bsc_flags -nolabels -build stdlib-406/arrayLabels.cmi : cc stdlib-406/arrayLabels.mli | stdlib-406/pervasives.cmj others +o stdlib-406/arrayLabels.cmi : cc stdlib-406/arrayLabels.mli | stdlib-406/pervasives.cmj others bsc_flags = $bsc_flags -nolabels -build stdlib-406/buffer.cmj : cc_cmi stdlib-406/buffer.ml | stdlib-406/buffer.cmi stdlib-406/bytes.cmj stdlib-406/char.cmj stdlib-406/string.cmj stdlib-406/sys.cmj stdlib-406/uchar.cmj others -build stdlib-406/buffer.cmi : cc stdlib-406/buffer.mli | stdlib-406/pervasives.cmj stdlib-406/uchar.cmi others -build stdlib-406/bytes.cmj : cc_cmi stdlib-406/bytes.ml | stdlib-406/bytes.cmi stdlib-406/char.cmj stdlib-406/pervasives.cmj others -build stdlib-406/bytes.cmi : cc stdlib-406/bytes.mli | stdlib-406/pervasives.cmj others -build stdlib-406/bytesLabels.cmj : cc_cmi stdlib-406/bytesLabels.ml | stdlib-406/bytes.cmj stdlib-406/bytesLabels.cmi others +o stdlib-406/buffer.cmj : cc_cmi stdlib-406/buffer.ml | stdlib-406/buffer.cmi stdlib-406/bytes.cmj stdlib-406/char.cmj stdlib-406/string.cmj stdlib-406/sys.cmj stdlib-406/uchar.cmj others +o stdlib-406/buffer.cmi : cc stdlib-406/buffer.mli | stdlib-406/pervasives.cmj stdlib-406/uchar.cmi others +o stdlib-406/bytes.cmj : cc_cmi stdlib-406/bytes.ml | stdlib-406/bytes.cmi stdlib-406/char.cmj stdlib-406/pervasives.cmj others +o stdlib-406/bytes.cmi : cc stdlib-406/bytes.mli | stdlib-406/pervasives.cmj others +o stdlib-406/bytesLabels.cmj : cc_cmi stdlib-406/bytesLabels.ml | stdlib-406/bytes.cmj stdlib-406/bytesLabels.cmi others bsc_flags = $bsc_flags -nolabels -build stdlib-406/bytesLabels.cmi : cc stdlib-406/bytesLabels.mli | stdlib-406/pervasives.cmj others +o stdlib-406/bytesLabels.cmi : cc stdlib-406/bytesLabels.mli | stdlib-406/pervasives.cmj others bsc_flags = $bsc_flags -nolabels -build stdlib-406/callback.cmj : cc_cmi stdlib-406/callback.ml | stdlib-406/callback.cmi stdlib-406/obj.cmj others -build stdlib-406/callback.cmi : cc stdlib-406/callback.mli | stdlib-406/pervasives.cmj others -build stdlib-406/camlinternalBigarray.cmi stdlib-406/camlinternalBigarray.cmj : cc stdlib-406/camlinternalBigarray.ml | stdlib-406/complex.cmj stdlib-406/pervasives.cmj others -build stdlib-406/camlinternalFormat.cmj : cc_cmi stdlib-406/camlinternalFormat.ml | stdlib-406/buffer.cmj stdlib-406/bytes.cmj stdlib-406/camlinternalFormat.cmi stdlib-406/camlinternalFormatBasics.cmj stdlib-406/char.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others -build stdlib-406/camlinternalFormat.cmi : cc stdlib-406/camlinternalFormat.mli | stdlib-406/buffer.cmi stdlib-406/camlinternalFormatBasics.cmi stdlib-406/pervasives.cmj others -build stdlib-406/camlinternalLazy.cmj : cc_cmi stdlib-406/camlinternalLazy.ml | stdlib-406/camlinternalLazy.cmi others -build stdlib-406/camlinternalLazy.cmi : cc stdlib-406/camlinternalLazy.mli | stdlib-406/pervasives.cmj others -build stdlib-406/camlinternalMod.cmj : cc_cmi stdlib-406/camlinternalMod.ml | stdlib-406/camlinternalMod.cmi stdlib-406/obj.cmj others -build stdlib-406/camlinternalMod.cmi : cc stdlib-406/camlinternalMod.mli | stdlib-406/obj.cmi stdlib-406/pervasives.cmj others -build stdlib-406/camlinternalOO.cmj : cc_cmi stdlib-406/camlinternalOO.ml | stdlib-406/array.cmj stdlib-406/camlinternalOO.cmi stdlib-406/char.cmj stdlib-406/list.cmj stdlib-406/map.cmj stdlib-406/obj.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others -build stdlib-406/camlinternalOO.cmi : cc stdlib-406/camlinternalOO.mli | stdlib-406/obj.cmi stdlib-406/pervasives.cmj others -build stdlib-406/char.cmj : cc_cmi stdlib-406/char.ml | stdlib-406/char.cmi others -build stdlib-406/char.cmi : cc stdlib-406/char.mli | stdlib-406/pervasives.cmj others -build stdlib-406/complex.cmj : cc_cmi stdlib-406/complex.ml | stdlib-406/complex.cmi others -build stdlib-406/complex.cmi : cc stdlib-406/complex.mli | stdlib-406/pervasives.cmj others -build stdlib-406/digest.cmj : cc_cmi stdlib-406/digest.ml | stdlib-406/bytes.cmj stdlib-406/char.cmj stdlib-406/digest.cmi stdlib-406/string.cmj others -build stdlib-406/digest.cmi : cc stdlib-406/digest.mli | stdlib-406/pervasives.cmj others -build stdlib-406/filename.cmj : cc_cmi stdlib-406/filename.ml | stdlib-406/buffer.cmj stdlib-406/filename.cmi stdlib-406/lazy.cmj stdlib-406/printf.cmj stdlib-406/random.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others -build stdlib-406/filename.cmi : cc stdlib-406/filename.mli | stdlib-406/pervasives.cmj others -build stdlib-406/format.cmj : cc_cmi stdlib-406/format.ml | stdlib-406/buffer.cmj stdlib-406/camlinternalFormat.cmj stdlib-406/camlinternalFormatBasics.cmj stdlib-406/format.cmi stdlib-406/list.cmj stdlib-406/pervasives.cmj stdlib-406/string.cmj others -build stdlib-406/format.cmi : cc stdlib-406/format.mli | stdlib-406/buffer.cmi stdlib-406/pervasives.cmi stdlib-406/pervasives.cmj others -build stdlib-406/genlex.cmj : cc_cmi stdlib-406/genlex.ml | stdlib-406/bytes.cmj stdlib-406/char.cmj stdlib-406/genlex.cmi stdlib-406/hashtbl.cmj stdlib-406/list.cmj stdlib-406/stream.cmj stdlib-406/string.cmj others -build stdlib-406/genlex.cmi : cc stdlib-406/genlex.mli | stdlib-406/pervasives.cmj stdlib-406/stream.cmi others -build stdlib-406/hashtbl.cmj : cc_cmi stdlib-406/hashtbl.ml | stdlib-406/array.cmj stdlib-406/hashtbl.cmi stdlib-406/lazy.cmj stdlib-406/random.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others -build stdlib-406/hashtbl.cmi : cc stdlib-406/hashtbl.mli | stdlib-406/pervasives.cmj others -build stdlib-406/int32.cmj : cc_cmi stdlib-406/int32.ml | stdlib-406/int32.cmi stdlib-406/pervasives.cmj others -build stdlib-406/int32.cmi : cc stdlib-406/int32.mli | stdlib-406/pervasives.cmj others -build stdlib-406/int64.cmj : cc_cmi stdlib-406/int64.ml | stdlib-406/int64.cmi stdlib-406/pervasives.cmj others -build stdlib-406/int64.cmi : cc stdlib-406/int64.mli | stdlib-406/pervasives.cmj others -build stdlib-406/lazy.cmj : cc_cmi stdlib-406/lazy.ml | stdlib-406/camlinternalLazy.cmj stdlib-406/lazy.cmi others -build stdlib-406/lazy.cmi : cc stdlib-406/lazy.mli | stdlib-406/pervasives.cmj others -build stdlib-406/lexing.cmj : cc_cmi stdlib-406/lexing.ml | stdlib-406/array.cmj stdlib-406/bytes.cmj stdlib-406/lexing.cmi stdlib-406/string.cmj stdlib-406/sys.cmj others -build stdlib-406/lexing.cmi : cc stdlib-406/lexing.mli | stdlib-406/pervasives.cmj others -build stdlib-406/list.cmj : cc_cmi stdlib-406/list.ml | stdlib-406/list.cmi others -build stdlib-406/list.cmi : cc stdlib-406/list.mli | stdlib-406/pervasives.cmj others -build stdlib-406/listLabels.cmj : cc_cmi stdlib-406/listLabels.ml | stdlib-406/list.cmj stdlib-406/listLabels.cmi others +o stdlib-406/callback.cmj : cc_cmi stdlib-406/callback.ml | stdlib-406/callback.cmi stdlib-406/obj.cmj others +o stdlib-406/callback.cmi : cc stdlib-406/callback.mli | stdlib-406/pervasives.cmj others +o stdlib-406/camlinternalBigarray.cmi stdlib-406/camlinternalBigarray.cmj : cc stdlib-406/camlinternalBigarray.ml | stdlib-406/complex.cmj stdlib-406/pervasives.cmj others +o stdlib-406/camlinternalFormat.cmj : cc_cmi stdlib-406/camlinternalFormat.ml | stdlib-406/buffer.cmj stdlib-406/bytes.cmj stdlib-406/camlinternalFormat.cmi stdlib-406/camlinternalFormatBasics.cmj stdlib-406/char.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others +o stdlib-406/camlinternalFormat.cmi : cc stdlib-406/camlinternalFormat.mli | stdlib-406/buffer.cmi stdlib-406/camlinternalFormatBasics.cmi stdlib-406/pervasives.cmj others +o stdlib-406/camlinternalLazy.cmj : cc_cmi stdlib-406/camlinternalLazy.ml | stdlib-406/camlinternalLazy.cmi others +o stdlib-406/camlinternalLazy.cmi : cc stdlib-406/camlinternalLazy.mli | stdlib-406/pervasives.cmj others +o stdlib-406/camlinternalMod.cmj : cc_cmi stdlib-406/camlinternalMod.ml | stdlib-406/camlinternalMod.cmi stdlib-406/obj.cmj others +o stdlib-406/camlinternalMod.cmi : cc stdlib-406/camlinternalMod.mli | stdlib-406/obj.cmi stdlib-406/pervasives.cmj others +o stdlib-406/camlinternalOO.cmj : cc_cmi stdlib-406/camlinternalOO.ml | stdlib-406/array.cmj stdlib-406/camlinternalOO.cmi stdlib-406/char.cmj stdlib-406/list.cmj stdlib-406/map.cmj stdlib-406/obj.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others +o stdlib-406/camlinternalOO.cmi : cc stdlib-406/camlinternalOO.mli | stdlib-406/obj.cmi stdlib-406/pervasives.cmj others +o stdlib-406/char.cmj : cc_cmi stdlib-406/char.ml | stdlib-406/char.cmi others +o stdlib-406/char.cmi : cc stdlib-406/char.mli | stdlib-406/pervasives.cmj others +o stdlib-406/complex.cmj : cc_cmi stdlib-406/complex.ml | stdlib-406/complex.cmi others +o stdlib-406/complex.cmi : cc stdlib-406/complex.mli | stdlib-406/pervasives.cmj others +o stdlib-406/digest.cmj : cc_cmi stdlib-406/digest.ml | stdlib-406/bytes.cmj stdlib-406/char.cmj stdlib-406/digest.cmi stdlib-406/string.cmj others +o stdlib-406/digest.cmi : cc stdlib-406/digest.mli | stdlib-406/pervasives.cmj others +o stdlib-406/filename.cmj : cc_cmi stdlib-406/filename.ml | stdlib-406/buffer.cmj stdlib-406/filename.cmi stdlib-406/lazy.cmj stdlib-406/printf.cmj stdlib-406/random.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others +o stdlib-406/filename.cmi : cc stdlib-406/filename.mli | stdlib-406/pervasives.cmj others +o stdlib-406/format.cmj : cc_cmi stdlib-406/format.ml | stdlib-406/buffer.cmj stdlib-406/camlinternalFormat.cmj stdlib-406/camlinternalFormatBasics.cmj stdlib-406/format.cmi stdlib-406/list.cmj stdlib-406/pervasives.cmj stdlib-406/string.cmj others +o stdlib-406/format.cmi : cc stdlib-406/format.mli | stdlib-406/buffer.cmi stdlib-406/pervasives.cmi stdlib-406/pervasives.cmj others +o stdlib-406/genlex.cmj : cc_cmi stdlib-406/genlex.ml | stdlib-406/bytes.cmj stdlib-406/char.cmj stdlib-406/genlex.cmi stdlib-406/hashtbl.cmj stdlib-406/list.cmj stdlib-406/stream.cmj stdlib-406/string.cmj others +o stdlib-406/genlex.cmi : cc stdlib-406/genlex.mli | stdlib-406/pervasives.cmj stdlib-406/stream.cmi others +o stdlib-406/hashtbl.cmj : cc_cmi stdlib-406/hashtbl.ml | stdlib-406/array.cmj stdlib-406/hashtbl.cmi stdlib-406/lazy.cmj stdlib-406/random.cmj stdlib-406/string.cmj stdlib-406/sys.cmj others +o stdlib-406/hashtbl.cmi : cc stdlib-406/hashtbl.mli | stdlib-406/pervasives.cmj others +o stdlib-406/int32.cmj : cc_cmi stdlib-406/int32.ml | stdlib-406/int32.cmi stdlib-406/pervasives.cmj others +o stdlib-406/int32.cmi : cc stdlib-406/int32.mli | stdlib-406/pervasives.cmj others +o stdlib-406/int64.cmj : cc_cmi stdlib-406/int64.ml | stdlib-406/int64.cmi stdlib-406/pervasives.cmj others +o stdlib-406/int64.cmi : cc stdlib-406/int64.mli | stdlib-406/pervasives.cmj others +o stdlib-406/lazy.cmj : cc_cmi stdlib-406/lazy.ml | stdlib-406/camlinternalLazy.cmj stdlib-406/lazy.cmi others +o stdlib-406/lazy.cmi : cc stdlib-406/lazy.mli | stdlib-406/pervasives.cmj others +o stdlib-406/lexing.cmj : cc_cmi stdlib-406/lexing.ml | stdlib-406/array.cmj stdlib-406/bytes.cmj stdlib-406/lexing.cmi stdlib-406/string.cmj stdlib-406/sys.cmj others +o stdlib-406/lexing.cmi : cc stdlib-406/lexing.mli | stdlib-406/pervasives.cmj others +o stdlib-406/list.cmj : cc_cmi stdlib-406/list.ml | stdlib-406/list.cmi others +o stdlib-406/list.cmi : cc stdlib-406/list.mli | stdlib-406/pervasives.cmj others +o stdlib-406/listLabels.cmj : cc_cmi stdlib-406/listLabels.ml | stdlib-406/list.cmj stdlib-406/listLabels.cmi others bsc_flags = $bsc_flags -nolabels -build stdlib-406/listLabels.cmi : cc stdlib-406/listLabels.mli | stdlib-406/pervasives.cmj others +o stdlib-406/listLabels.cmi : cc stdlib-406/listLabels.mli | stdlib-406/pervasives.cmj others bsc_flags = $bsc_flags -nolabels -build stdlib-406/map.cmj : cc_cmi stdlib-406/map.ml | stdlib-406/map.cmi others -build stdlib-406/map.cmi : cc stdlib-406/map.mli | stdlib-406/pervasives.cmj others -build stdlib-406/marshal.cmj : cc_cmi stdlib-406/marshal.ml | stdlib-406/bytes.cmj stdlib-406/marshal.cmi others -build stdlib-406/marshal.cmi : cc stdlib-406/marshal.mli | stdlib-406/pervasives.cmj others -build stdlib-406/moreLabels.cmj : cc_cmi stdlib-406/moreLabels.ml | stdlib-406/hashtbl.cmj stdlib-406/map.cmj stdlib-406/moreLabels.cmi stdlib-406/set.cmj others +o stdlib-406/map.cmj : cc_cmi stdlib-406/map.ml | stdlib-406/map.cmi others +o stdlib-406/map.cmi : cc stdlib-406/map.mli | stdlib-406/pervasives.cmj others +o stdlib-406/marshal.cmj : cc_cmi stdlib-406/marshal.ml | stdlib-406/bytes.cmj stdlib-406/marshal.cmi others +o stdlib-406/marshal.cmi : cc stdlib-406/marshal.mli | stdlib-406/pervasives.cmj others +o stdlib-406/moreLabels.cmj : cc_cmi stdlib-406/moreLabels.ml | stdlib-406/hashtbl.cmj stdlib-406/map.cmj stdlib-406/moreLabels.cmi stdlib-406/set.cmj others bsc_flags = $bsc_flags -nolabels -build stdlib-406/moreLabels.cmi : cc stdlib-406/moreLabels.mli | stdlib-406/hashtbl.cmi stdlib-406/map.cmi stdlib-406/pervasives.cmj stdlib-406/set.cmi others +o stdlib-406/moreLabels.cmi : cc stdlib-406/moreLabels.mli | stdlib-406/hashtbl.cmi stdlib-406/map.cmi stdlib-406/pervasives.cmj stdlib-406/set.cmi others bsc_flags = $bsc_flags -nolabels -build stdlib-406/obj.cmj : cc_cmi stdlib-406/obj.ml | stdlib-406/obj.cmi others -build stdlib-406/obj.cmi : cc stdlib-406/obj.mli | stdlib-406/pervasives.cmj others -build stdlib-406/parsing.cmj : cc_cmi stdlib-406/parsing.ml | stdlib-406/array.cmj stdlib-406/lexing.cmj stdlib-406/obj.cmj stdlib-406/parsing.cmi others -build stdlib-406/parsing.cmi : cc stdlib-406/parsing.mli | stdlib-406/lexing.cmi stdlib-406/obj.cmi stdlib-406/pervasives.cmj others -build stdlib-406/printexc.cmj : cc_cmi stdlib-406/printexc.ml | stdlib-406/array.cmj stdlib-406/buffer.cmj stdlib-406/obj.cmj stdlib-406/pervasives.cmj stdlib-406/printexc.cmi stdlib-406/printf.cmj others -build stdlib-406/printexc.cmi : cc stdlib-406/printexc.mli | stdlib-406/pervasives.cmj others -build stdlib-406/printf.cmj : cc_cmi stdlib-406/printf.ml | stdlib-406/buffer.cmj stdlib-406/camlinternalFormat.cmj stdlib-406/camlinternalFormatBasics.cmj stdlib-406/printf.cmi others -build stdlib-406/printf.cmi : cc stdlib-406/printf.mli | stdlib-406/buffer.cmi stdlib-406/pervasives.cmj others -build stdlib-406/queue.cmj : cc_cmi stdlib-406/queue.ml | stdlib-406/queue.cmi others -build stdlib-406/queue.cmi : cc stdlib-406/queue.mli | stdlib-406/pervasives.cmj others -build stdlib-406/random.cmj : cc_cmi stdlib-406/random.ml | stdlib-406/array.cmj stdlib-406/char.cmj stdlib-406/digest.cmj stdlib-406/int32.cmj stdlib-406/int64.cmj stdlib-406/pervasives.cmj stdlib-406/random.cmi stdlib-406/string.cmj others -build stdlib-406/random.cmi : cc stdlib-406/random.mli | stdlib-406/int32.cmi stdlib-406/int64.cmi stdlib-406/pervasives.cmj others -build stdlib-406/scanf.cmj : cc_cmi stdlib-406/scanf.ml | stdlib-406/buffer.cmj stdlib-406/bytes.cmj stdlib-406/camlinternalFormat.cmj stdlib-406/camlinternalFormatBasics.cmj stdlib-406/list.cmj stdlib-406/pervasives.cmj stdlib-406/printf.cmj stdlib-406/scanf.cmi stdlib-406/string.cmj others -build stdlib-406/scanf.cmi : cc stdlib-406/scanf.mli | stdlib-406/pervasives.cmi stdlib-406/pervasives.cmj others -build stdlib-406/set.cmj : cc_cmi stdlib-406/set.ml | stdlib-406/list.cmj stdlib-406/set.cmi others -build stdlib-406/set.cmi : cc stdlib-406/set.mli | stdlib-406/pervasives.cmj others -build stdlib-406/sort.cmj : cc_cmi stdlib-406/sort.ml | stdlib-406/array.cmj stdlib-406/sort.cmi others -build stdlib-406/sort.cmi : cc stdlib-406/sort.mli | stdlib-406/pervasives.cmj others -build stdlib-406/stack.cmj : cc_cmi stdlib-406/stack.ml | stdlib-406/list.cmj stdlib-406/stack.cmi others -build stdlib-406/stack.cmi : cc stdlib-406/stack.mli | stdlib-406/pervasives.cmj others -build stdlib-406/stdLabels.cmj : cc_cmi stdlib-406/stdLabels.ml | stdlib-406/arrayLabels.cmj stdlib-406/bytesLabels.cmj stdlib-406/listLabels.cmj stdlib-406/stdLabels.cmi stdlib-406/stringLabels.cmj others +o stdlib-406/obj.cmj : cc_cmi stdlib-406/obj.ml | stdlib-406/obj.cmi others +o stdlib-406/obj.cmi : cc stdlib-406/obj.mli | stdlib-406/pervasives.cmj others +o stdlib-406/parsing.cmj : cc_cmi stdlib-406/parsing.ml | stdlib-406/array.cmj stdlib-406/lexing.cmj stdlib-406/obj.cmj stdlib-406/parsing.cmi others +o stdlib-406/parsing.cmi : cc stdlib-406/parsing.mli | stdlib-406/lexing.cmi stdlib-406/obj.cmi stdlib-406/pervasives.cmj others +o stdlib-406/printexc.cmj : cc_cmi stdlib-406/printexc.ml | stdlib-406/array.cmj stdlib-406/buffer.cmj stdlib-406/obj.cmj stdlib-406/pervasives.cmj stdlib-406/printexc.cmi stdlib-406/printf.cmj others +o stdlib-406/printexc.cmi : cc stdlib-406/printexc.mli | stdlib-406/pervasives.cmj others +o stdlib-406/printf.cmj : cc_cmi stdlib-406/printf.ml | stdlib-406/buffer.cmj stdlib-406/camlinternalFormat.cmj stdlib-406/camlinternalFormatBasics.cmj stdlib-406/printf.cmi others +o stdlib-406/printf.cmi : cc stdlib-406/printf.mli | stdlib-406/buffer.cmi stdlib-406/pervasives.cmj others +o stdlib-406/queue.cmj : cc_cmi stdlib-406/queue.ml | stdlib-406/queue.cmi others +o stdlib-406/queue.cmi : cc stdlib-406/queue.mli | stdlib-406/pervasives.cmj others +o stdlib-406/random.cmj : cc_cmi stdlib-406/random.ml | stdlib-406/array.cmj stdlib-406/char.cmj stdlib-406/digest.cmj stdlib-406/int32.cmj stdlib-406/int64.cmj stdlib-406/pervasives.cmj stdlib-406/random.cmi stdlib-406/string.cmj others +o stdlib-406/random.cmi : cc stdlib-406/random.mli | stdlib-406/int32.cmi stdlib-406/int64.cmi stdlib-406/pervasives.cmj others +o stdlib-406/scanf.cmj : cc_cmi stdlib-406/scanf.ml | stdlib-406/buffer.cmj stdlib-406/bytes.cmj stdlib-406/camlinternalFormat.cmj stdlib-406/camlinternalFormatBasics.cmj stdlib-406/list.cmj stdlib-406/pervasives.cmj stdlib-406/printf.cmj stdlib-406/scanf.cmi stdlib-406/string.cmj others +o stdlib-406/scanf.cmi : cc stdlib-406/scanf.mli | stdlib-406/pervasives.cmi stdlib-406/pervasives.cmj others +o stdlib-406/set.cmj : cc_cmi stdlib-406/set.ml | stdlib-406/list.cmj stdlib-406/set.cmi others +o stdlib-406/set.cmi : cc stdlib-406/set.mli | stdlib-406/pervasives.cmj others +o stdlib-406/sort.cmj : cc_cmi stdlib-406/sort.ml | stdlib-406/array.cmj stdlib-406/sort.cmi others +o stdlib-406/sort.cmi : cc stdlib-406/sort.mli | stdlib-406/pervasives.cmj others +o stdlib-406/stack.cmj : cc_cmi stdlib-406/stack.ml | stdlib-406/list.cmj stdlib-406/stack.cmi others +o stdlib-406/stack.cmi : cc stdlib-406/stack.mli | stdlib-406/pervasives.cmj others +o stdlib-406/stdLabels.cmj : cc_cmi stdlib-406/stdLabels.ml | stdlib-406/arrayLabels.cmj stdlib-406/bytesLabels.cmj stdlib-406/listLabels.cmj stdlib-406/stdLabels.cmi stdlib-406/stringLabels.cmj others bsc_flags = $bsc_flags -nolabels -build stdlib-406/stdLabels.cmi : cc stdlib-406/stdLabels.mli | stdlib-406/arrayLabels.cmi stdlib-406/bytesLabels.cmi stdlib-406/listLabels.cmi stdlib-406/pervasives.cmj stdlib-406/stringLabels.cmi others +o stdlib-406/stdLabels.cmi : cc stdlib-406/stdLabels.mli | stdlib-406/arrayLabels.cmi stdlib-406/bytesLabels.cmi stdlib-406/listLabels.cmi stdlib-406/pervasives.cmj stdlib-406/stringLabels.cmi others bsc_flags = $bsc_flags -nolabels -build stdlib-406/std_exit.cmi stdlib-406/std_exit.cmj : cc stdlib-406/std_exit.ml | stdlib-406/pervasives.cmj others -build stdlib-406/stream.cmj : cc_cmi stdlib-406/stream.ml | stdlib-406/bytes.cmj stdlib-406/lazy.cmj stdlib-406/list.cmj stdlib-406/stream.cmi stdlib-406/string.cmj others -build stdlib-406/stream.cmi : cc stdlib-406/stream.mli | stdlib-406/pervasives.cmj others -build stdlib-406/string.cmj : cc_cmi stdlib-406/string.ml | stdlib-406/bytes.cmj stdlib-406/pervasives.cmj stdlib-406/string.cmi others -build stdlib-406/string.cmi : cc stdlib-406/string.mli | stdlib-406/pervasives.cmj others -build stdlib-406/stringLabels.cmj : cc_cmi stdlib-406/stringLabels.ml | stdlib-406/string.cmj stdlib-406/stringLabels.cmi others +o stdlib-406/std_exit.cmi stdlib-406/std_exit.cmj : cc stdlib-406/std_exit.ml | stdlib-406/pervasives.cmj others +o stdlib-406/stream.cmj : cc_cmi stdlib-406/stream.ml | stdlib-406/bytes.cmj stdlib-406/lazy.cmj stdlib-406/list.cmj stdlib-406/stream.cmi stdlib-406/string.cmj others +o stdlib-406/stream.cmi : cc stdlib-406/stream.mli | stdlib-406/pervasives.cmj others +o stdlib-406/string.cmj : cc_cmi stdlib-406/string.ml | stdlib-406/bytes.cmj stdlib-406/pervasives.cmj stdlib-406/string.cmi others +o stdlib-406/string.cmi : cc stdlib-406/string.mli | stdlib-406/pervasives.cmj others +o stdlib-406/stringLabels.cmj : cc_cmi stdlib-406/stringLabels.ml | stdlib-406/string.cmj stdlib-406/stringLabels.cmi others bsc_flags = $bsc_flags -nolabels -build stdlib-406/stringLabels.cmi : cc stdlib-406/stringLabels.mli | stdlib-406/pervasives.cmj others +o stdlib-406/stringLabels.cmi : cc stdlib-406/stringLabels.mli | stdlib-406/pervasives.cmj others bsc_flags = $bsc_flags -nolabels -build stdlib-406/sys.cmj : cc_cmi stdlib-406/sys.ml | stdlib-406/sys.cmi others -build stdlib-406/sys.cmi : cc stdlib-406/sys.mli | stdlib-406/pervasives.cmj others -build stdlib-406/uchar.cmj : cc_cmi stdlib-406/uchar.ml | stdlib-406/char.cmj stdlib-406/pervasives.cmj stdlib-406/uchar.cmi others -build stdlib-406/uchar.cmi : cc stdlib-406/uchar.mli | stdlib-406/pervasives.cmj others -build $stdlib : phony stdlib-406/camlinternalFormatBasics.cmi stdlib-406/camlinternalFormatBasics.cmj stdlib-406/pervasives.cmi stdlib-406/pervasives.cmj stdlib-406/arg.cmi stdlib-406/arg.cmj stdlib-406/array.cmi stdlib-406/array.cmj stdlib-406/arrayLabels.cmi stdlib-406/arrayLabels.cmj stdlib-406/buffer.cmi stdlib-406/buffer.cmj stdlib-406/bytes.cmi stdlib-406/bytes.cmj stdlib-406/bytesLabels.cmi stdlib-406/bytesLabels.cmj stdlib-406/callback.cmi stdlib-406/callback.cmj stdlib-406/camlinternalBigarray.cmi stdlib-406/camlinternalBigarray.cmj stdlib-406/camlinternalFormat.cmi stdlib-406/camlinternalFormat.cmj stdlib-406/camlinternalLazy.cmi stdlib-406/camlinternalLazy.cmj stdlib-406/camlinternalMod.cmi stdlib-406/camlinternalMod.cmj stdlib-406/camlinternalOO.cmi stdlib-406/camlinternalOO.cmj stdlib-406/char.cmi stdlib-406/char.cmj stdlib-406/complex.cmi stdlib-406/complex.cmj stdlib-406/digest.cmi stdlib-406/digest.cmj stdlib-406/filename.cmi stdlib-406/filename.cmj stdlib-406/format.cmi stdlib-406/format.cmj stdlib-406/genlex.cmi stdlib-406/genlex.cmj stdlib-406/hashtbl.cmi stdlib-406/hashtbl.cmj stdlib-406/int32.cmi stdlib-406/int32.cmj stdlib-406/int64.cmi stdlib-406/int64.cmj stdlib-406/lazy.cmi stdlib-406/lazy.cmj stdlib-406/lexing.cmi stdlib-406/lexing.cmj stdlib-406/list.cmi stdlib-406/list.cmj stdlib-406/listLabels.cmi stdlib-406/listLabels.cmj stdlib-406/map.cmi stdlib-406/map.cmj stdlib-406/marshal.cmi stdlib-406/marshal.cmj stdlib-406/moreLabels.cmi stdlib-406/moreLabels.cmj stdlib-406/obj.cmi stdlib-406/obj.cmj stdlib-406/parsing.cmi stdlib-406/parsing.cmj stdlib-406/printexc.cmi stdlib-406/printexc.cmj stdlib-406/printf.cmi stdlib-406/printf.cmj stdlib-406/queue.cmi stdlib-406/queue.cmj stdlib-406/random.cmi stdlib-406/random.cmj stdlib-406/scanf.cmi stdlib-406/scanf.cmj stdlib-406/set.cmi stdlib-406/set.cmj stdlib-406/sort.cmi stdlib-406/sort.cmj stdlib-406/stack.cmi stdlib-406/stack.cmj stdlib-406/stdLabels.cmi stdlib-406/stdLabels.cmj stdlib-406/std_exit.cmi stdlib-406/std_exit.cmj stdlib-406/stream.cmi stdlib-406/stream.cmj stdlib-406/string.cmi stdlib-406/string.cmj stdlib-406/stringLabels.cmi stdlib-406/stringLabels.cmj stdlib-406/sys.cmi stdlib-406/sys.cmj stdlib-406/uchar.cmi stdlib-406/uchar.cmj +o stdlib-406/sys.cmj : cc_cmi stdlib-406/sys.ml | stdlib-406/sys.cmi others +o stdlib-406/sys.cmi : cc stdlib-406/sys.mli | stdlib-406/pervasives.cmj others +o stdlib-406/uchar.cmj : cc_cmi stdlib-406/uchar.ml | stdlib-406/char.cmj stdlib-406/pervasives.cmj stdlib-406/uchar.cmi others +o stdlib-406/uchar.cmi : cc stdlib-406/uchar.mli | stdlib-406/pervasives.cmj others +o $stdlib : phony stdlib-406/camlinternalFormatBasics.cmi stdlib-406/camlinternalFormatBasics.cmj stdlib-406/pervasives.cmi stdlib-406/pervasives.cmj stdlib-406/arg.cmi stdlib-406/arg.cmj stdlib-406/array.cmi stdlib-406/array.cmj stdlib-406/arrayLabels.cmi stdlib-406/arrayLabels.cmj stdlib-406/buffer.cmi stdlib-406/buffer.cmj stdlib-406/bytes.cmi stdlib-406/bytes.cmj stdlib-406/bytesLabels.cmi stdlib-406/bytesLabels.cmj stdlib-406/callback.cmi stdlib-406/callback.cmj stdlib-406/camlinternalBigarray.cmi stdlib-406/camlinternalBigarray.cmj stdlib-406/camlinternalFormat.cmi stdlib-406/camlinternalFormat.cmj stdlib-406/camlinternalLazy.cmi stdlib-406/camlinternalLazy.cmj stdlib-406/camlinternalMod.cmi stdlib-406/camlinternalMod.cmj stdlib-406/camlinternalOO.cmi stdlib-406/camlinternalOO.cmj stdlib-406/char.cmi stdlib-406/char.cmj stdlib-406/complex.cmi stdlib-406/complex.cmj stdlib-406/digest.cmi stdlib-406/digest.cmj stdlib-406/filename.cmi stdlib-406/filename.cmj stdlib-406/format.cmi stdlib-406/format.cmj stdlib-406/genlex.cmi stdlib-406/genlex.cmj stdlib-406/hashtbl.cmi stdlib-406/hashtbl.cmj stdlib-406/int32.cmi stdlib-406/int32.cmj stdlib-406/int64.cmi stdlib-406/int64.cmj stdlib-406/lazy.cmi stdlib-406/lazy.cmj stdlib-406/lexing.cmi stdlib-406/lexing.cmj stdlib-406/list.cmi stdlib-406/list.cmj stdlib-406/listLabels.cmi stdlib-406/listLabels.cmj stdlib-406/map.cmi stdlib-406/map.cmj stdlib-406/marshal.cmi stdlib-406/marshal.cmj stdlib-406/moreLabels.cmi stdlib-406/moreLabels.cmj stdlib-406/obj.cmi stdlib-406/obj.cmj stdlib-406/parsing.cmi stdlib-406/parsing.cmj stdlib-406/printexc.cmi stdlib-406/printexc.cmj stdlib-406/printf.cmi stdlib-406/printf.cmj stdlib-406/queue.cmi stdlib-406/queue.cmj stdlib-406/random.cmi stdlib-406/random.cmj stdlib-406/scanf.cmi stdlib-406/scanf.cmj stdlib-406/set.cmi stdlib-406/set.cmj stdlib-406/sort.cmi stdlib-406/sort.cmj stdlib-406/stack.cmi stdlib-406/stack.cmj stdlib-406/stdLabels.cmi stdlib-406/stdLabels.cmj stdlib-406/std_exit.cmi stdlib-406/std_exit.cmj stdlib-406/stream.cmi stdlib-406/stream.cmj stdlib-406/string.cmi stdlib-406/string.cmj stdlib-406/stringLabels.cmi stdlib-406/stringLabels.cmj stdlib-406/sys.cmi stdlib-406/sys.cmj stdlib-406/uchar.cmi stdlib-406/uchar.cmj diff --git a/jscomp/test/build.ninja b/jscomp/test/build.ninja index efb8c3c568..cee44fddc5 100644 --- a/jscomp/test/build.ninja +++ b/jscomp/test/build.ninja @@ -15,734 +15,734 @@ rule mll command = $ocamllex $in generator = true -build test/arith_lexer.ml : mll test/arith_lexer.mll -build test/number_lexer.ml : mll test/number_lexer.mll -build test/simple_lexer_test.ml : mll test/simple_lexer_test.mll -build test/406_primitive_test.cmi test/406_primitive_test.cmj : cc test/406_primitive_test.ml | test/mt.cmj $stdlib -build test/a.cmi test/a.cmj : cc test/a.ml | test/test_order.cmj $stdlib -build test/a_filename_test.cmi test/a_filename_test.cmj : cc test/a_filename_test.ml | test/ext_filename_test.cmj test/mt.cmj $stdlib -build test/a_list_test.cmi test/a_list_test.cmj : cc test/a_list_test.ml | test/ext_list_test.cmj test/mt.cmj $stdlib -build test/a_recursive_type.cmj : cc_cmi test/a_recursive_type.ml | test/a_recursive_type.cmi $stdlib -build test/a_recursive_type.cmi : cc test/a_recursive_type.mli | $stdlib -build test/a_scope_bug.cmi test/a_scope_bug.cmj : cc test/a_scope_bug.ml | $stdlib -build test/a_string_test.cmi test/a_string_test.cmj : cc test/a_string_test.ml | test/ext_string_test.cmj test/mt.cmj $stdlib -build test/abstract_type.cmj : cc_cmi test/abstract_type.ml | test/abstract_type.cmi $stdlib -build test/abstract_type.cmi : cc test/abstract_type.mli | test/mt.cmi $stdlib -build test/adt_optimize_test.cmi test/adt_optimize_test.cmj : cc test/adt_optimize_test.ml | $stdlib -build test/alias_test.cmj : cc_cmi test/alias_test.ml | test/alias_test.cmi $stdlib -build test/alias_test.cmi : cc test/alias_test.mli | $stdlib -build test/and_or_tailcall_test.cmi test/and_or_tailcall_test.cmj : cc test/and_or_tailcall_test.ml | test/mt.cmj $stdlib -build test/app_root_finder.cmi test/app_root_finder.cmj : cc test/app_root_finder.ml | $stdlib -build test/argv_test.cmi test/argv_test.cmj : cc test/argv_test.ml | $stdlib -build test/ari_regress_test.cmj : cc_cmi test/ari_regress_test.ml | test/ari_regress_test.cmi test/mt.cmj $stdlib -build test/ari_regress_test.cmi : cc test/ari_regress_test.mli | $stdlib -build test/arith_lexer.cmi test/arith_lexer.cmj : cc test/arith_lexer.ml | test/arith_parser.cmj test/arith_syntax.cmj $stdlib -build test/arith_parser.cmi test/arith_parser.cmj : cc test/arith_parser.ml | test/arith_syntax.cmj $stdlib -build test/arith_syntax.cmi test/arith_syntax.cmj : cc test/arith_syntax.ml | $stdlib -build test/arity.cmi test/arity.cmj : cc test/arity.re | $stdlib -build test/arity_deopt.cmi test/arity_deopt.cmj : cc test/arity_deopt.ml | test/mt.cmj $stdlib -build test/arity_infer.cmi test/arity_infer.cmj : cc test/arity_infer.ml | $stdlib -build test/arity_ml.cmi test/arity_ml.cmj : cc test/arity_ml.ml | $stdlib -build test/array_data_util.cmi test/array_data_util.cmj : cc test/array_data_util.ml | $stdlib -build test/array_safe_get.cmi test/array_safe_get.cmj : cc test/array_safe_get.ml | $stdlib -build test/array_subtle_test.cmi test/array_subtle_test.cmj : cc test/array_subtle_test.ml | test/mt.cmj $stdlib -build test/array_test.cmj : cc_cmi test/array_test.ml | test/array_test.cmi test/mt.cmj $stdlib -build test/array_test.cmi : cc test/array_test.mli | $stdlib -build test/ast_abstract_test.cmi test/ast_abstract_test.cmj : cc test/ast_abstract_test.ml | test/mt.cmj $stdlib -build test/ast_js_mapper_poly_test.cmi test/ast_js_mapper_poly_test.cmj : cc test/ast_js_mapper_poly_test.ml | test/mt.cmj $stdlib -build test/ast_js_mapper_test.cmj : cc_cmi test/ast_js_mapper_test.ml | test/ast_js_mapper_test.cmi $stdlib -build test/ast_js_mapper_test.cmi : cc test/ast_js_mapper_test.mli | $stdlib -build test/ast_mapper_defensive_test.cmi test/ast_mapper_defensive_test.cmj : cc test/ast_mapper_defensive_test.ml | test/mt.cmj $stdlib -build test/ast_mapper_unused_warning_test.cmi test/ast_mapper_unused_warning_test.cmj : cc test/ast_mapper_unused_warning_test.ml | $stdlib -build test/async_ideas.cmi test/async_ideas.cmj : cc test/async_ideas.ml | $stdlib -build test/attr_test.cmi test/attr_test.cmj : cc test/attr_test.ml | $stdlib -build test/b.cmi test/b.cmj : cc test/b.ml | $stdlib -build test/bal_set_mini.cmi test/bal_set_mini.cmj : cc test/bal_set_mini.ml | $stdlib -build test/bang_primitive.cmi test/bang_primitive.cmj : cc test/bang_primitive.ml | $stdlib -build test/basic_module_test.cmj : cc_cmi test/basic_module_test.ml | test/basic_module_test.cmi test/mt.cmj test/mt_global.cmj test/offset.cmj test/pr6726.cmj $stdlib -build test/basic_module_test.cmi : cc test/basic_module_test.mli | $stdlib -build test/bb.cmi test/bb.cmj : cc test/bb.ml | $stdlib -build test/bdd.cmi test/bdd.cmj : cc test/bdd.ml | $stdlib -build test/belt_internal_test.cmi test/belt_internal_test.cmj : cc test/belt_internal_test.ml | $stdlib -build test/belt_result_alias_test.cmi test/belt_result_alias_test.cmj : cc test/belt_result_alias_test.ml | $stdlib -build test/bench.cmi test/bench.cmj : cc test/bench.ml | $stdlib -build test/big_enum.cmi test/big_enum.cmj : cc test/big_enum.ml | $stdlib -build test/big_polyvar_test.cmi test/big_polyvar_test.cmj : cc test/big_polyvar_test.ml | $stdlib -build test/block_alias_test.cmi test/block_alias_test.cmj : cc test/block_alias_test.ml | test/mt.cmj $stdlib -build test/boolean_test.cmi test/boolean_test.cmj : cc test/boolean_test.ml | test/mt.cmj test/test_bool_equal.cmj $stdlib -build test/bs_MapInt_test.cmi test/bs_MapInt_test.cmj : cc test/bs_MapInt_test.ml | $stdlib -build test/bs_abstract_test.cmj : cc_cmi test/bs_abstract_test.ml | test/bs_abstract_test.cmi $stdlib -build test/bs_abstract_test.cmi : cc test/bs_abstract_test.mli | $stdlib -build test/bs_array_test.cmi test/bs_array_test.cmj : cc test/bs_array_test.ml | test/mt.cmj $stdlib -build test/bs_auto_uncurry.cmi test/bs_auto_uncurry.cmj : cc test/bs_auto_uncurry.ml | $stdlib -build test/bs_auto_uncurry_test.cmi test/bs_auto_uncurry_test.cmj : cc test/bs_auto_uncurry_test.ml | test/mt.cmj $stdlib -build test/bs_float_test.cmi test/bs_float_test.cmj : cc test/bs_float_test.ml | test/mt.cmj $stdlib -build test/bs_hashmap_test.cmi test/bs_hashmap_test.cmj : cc test/bs_hashmap_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_hashset_int_test.cmi test/bs_hashset_int_test.cmj : cc test/bs_hashset_int_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_hashtbl_string_test.cmi test/bs_hashtbl_string_test.cmj : cc test/bs_hashtbl_string_test.ml | $stdlib -build test/bs_ignore_effect.cmi test/bs_ignore_effect.cmj : cc test/bs_ignore_effect.ml | test/mt.cmj $stdlib -build test/bs_ignore_test.cmi test/bs_ignore_test.cmj : cc test/bs_ignore_test.ml | $stdlib -build test/bs_int_test.cmi test/bs_int_test.cmj : cc test/bs_int_test.ml | test/mt.cmj $stdlib -build test/bs_list_test.cmi test/bs_list_test.cmj : cc test/bs_list_test.ml | test/mt.cmj $stdlib -build test/bs_map_set_dict_test.cmi test/bs_map_set_dict_test.cmj : cc test/bs_map_set_dict_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_map_test.cmi test/bs_map_test.cmj : cc test/bs_map_test.ml | test/mt.cmj $stdlib -build test/bs_min_max_test.cmi test/bs_min_max_test.cmj : cc test/bs_min_max_test.ml | test/mt.cmj $stdlib -build test/bs_mutable_set_test.cmi test/bs_mutable_set_test.cmj : cc test/bs_mutable_set_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_node_string_buffer_test.cmi test/bs_node_string_buffer_test.cmj : cc test/bs_node_string_buffer_test.ml | $stdlib -build test/bs_poly_map_test.cmi test/bs_poly_map_test.cmj : cc test/bs_poly_map_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_poly_mutable_map_test.cmi test/bs_poly_mutable_map_test.cmj : cc test/bs_poly_mutable_map_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_poly_mutable_set_test.cmi test/bs_poly_mutable_set_test.cmj : cc test/bs_poly_mutable_set_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_poly_set_test.cmi test/bs_poly_set_test.cmj : cc test/bs_poly_set_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_qualified.cmi test/bs_qualified.cmj : cc test/bs_qualified.ml | $stdlib -build test/bs_queue_test.cmi test/bs_queue_test.cmj : cc test/bs_queue_test.ml | test/mt.cmj $stdlib -build test/bs_rbset_int_bench.cmi test/bs_rbset_int_bench.cmj : cc test/bs_rbset_int_bench.ml | test/rbset.cmj $stdlib -build test/bs_rest_test.cmi test/bs_rest_test.cmj : cc test/bs_rest_test.ml | $stdlib -build test/bs_set_bench.cmi test/bs_set_bench.cmj : cc test/bs_set_bench.ml | $stdlib -build test/bs_set_int_test.cmi test/bs_set_int_test.cmj : cc test/bs_set_int_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_sort_test.cmi test/bs_sort_test.cmj : cc test/bs_sort_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib -build test/bs_splice_partial.cmi test/bs_splice_partial.cmj : cc test/bs_splice_partial.ml | $stdlib -build test/bs_stack_test.cmi test/bs_stack_test.cmj : cc test/bs_stack_test.ml | test/mt.cmj $stdlib -build test/bs_string_test.cmi test/bs_string_test.cmj : cc test/bs_string_test.ml | test/mt.cmj $stdlib -build test/bs_unwrap_test.cmi test/bs_unwrap_test.cmj : cc test/bs_unwrap_test.ml | $stdlib -build test/buffer_test.cmi test/buffer_test.cmj : cc test/buffer_test.ml | test/mt.cmj $stdlib -build test/bytes_split_gpr_743_test.cmi test/bytes_split_gpr_743_test.cmj : cc test/bytes_split_gpr_743_test.ml | test/mt.cmj $stdlib -build test/caml_compare_test.cmi test/caml_compare_test.cmj : cc test/caml_compare_test.ml | test/mt.cmj $stdlib -build test/caml_format_test.cmi test/caml_format_test.cmj : cc test/caml_format_test.ml | test/mt.cmj $stdlib -build test/caml_sys_poly_fill_test.cmi test/caml_sys_poly_fill_test.cmj : cc test/caml_sys_poly_fill_test.ml | test/mt.cmj $stdlib -build test/chain_code_test.cmi test/chain_code_test.cmj : cc test/chain_code_test.ml | test/mt.cmj $stdlib -build test/chn_test.cmi test/chn_test.cmj : cc test/chn_test.ml | test/mt.cmj $stdlib -build test/class3_test.cmi test/class3_test.cmj : cc test/class3_test.ml | test/mt.cmj $stdlib -build test/class4_test.cmi test/class4_test.cmj : cc test/class4_test.ml | test/mt.cmj $stdlib -build test/class5_test.cmi test/class5_test.cmj : cc test/class5_test.ml | test/mt.cmj $stdlib -build test/class6_test.cmi test/class6_test.cmj : cc test/class6_test.ml | test/mt.cmj $stdlib -build test/class7_test.cmi test/class7_test.cmj : cc test/class7_test.ml | test/mt.cmj $stdlib -build test/class8_test.cmi test/class8_test.cmj : cc test/class8_test.ml | test/mt.cmj $stdlib -build test/class_fib_open_recursion_test.cmi test/class_fib_open_recursion_test.cmj : cc test/class_fib_open_recursion_test.ml | test/mt.cmj $stdlib -build test/class_repr.cmi test/class_repr.cmj : cc test/class_repr.ml | $stdlib -build test/class_setter_getter.cmj : cc_cmi test/class_setter_getter.ml | test/class_setter_getter.cmi $stdlib -build test/class_setter_getter.cmi : cc test/class_setter_getter.mli | $stdlib -build test/class_test.cmi test/class_test.cmj : cc test/class_test.ml | test/mt.cmj $stdlib -build test/class_type_ffi_test.cmi test/class_type_ffi_test.cmj : cc test/class_type_ffi_test.ml | $stdlib -build test/compare_test.cmi test/compare_test.cmj : cc test/compare_test.ml | $stdlib -build test/complex_if_test.cmi test/complex_if_test.cmj : cc test/complex_if_test.ml | test/mt.cmj $stdlib -build test/complex_test.cmi test/complex_test.cmj : cc test/complex_test.ml | test/mt.cmj $stdlib -build test/complex_while_loop.cmi test/complex_while_loop.cmj : cc test/complex_while_loop.ml | $stdlib -build test/condition_compilation_test.cmi test/condition_compilation_test.cmj : cc test/condition_compilation_test.ml | test/mt.cmj $stdlib -build test/config1_test.cmi test/config1_test.cmj : cc test/config1_test.ml | $stdlib -build test/config2_test.cmj : cc_cmi test/config2_test.ml | test/config2_test.cmi $stdlib -build test/config2_test.cmi : cc test/config2_test.mli | $stdlib -build test/console_log_test.cmi test/console_log_test.cmj : cc test/console_log_test.ml | $stdlib -build test/const_block_test.cmj : cc_cmi test/const_block_test.ml | test/const_block_test.cmi test/mt.cmj $stdlib -build test/const_block_test.cmi : cc test/const_block_test.mli | $stdlib -build test/const_defs.cmi test/const_defs.cmj : cc test/const_defs.ml | $stdlib -build test/const_defs_test.cmi test/const_defs_test.cmj : cc test/const_defs_test.ml | test/const_defs.cmj $stdlib -build test/const_test.cmi test/const_test.cmj : cc test/const_test.ml | $stdlib -build test/cont_int_fold_test.cmi test/cont_int_fold_test.cmj : cc test/cont_int_fold_test.ml | $stdlib -build test/cps_test.cmi test/cps_test.cmj : cc test/cps_test.ml | test/mt.cmj $stdlib -build test/cross_module_inline_test.cmi test/cross_module_inline_test.cmj : cc test/cross_module_inline_test.ml | test/test_char.cmj $stdlib -build test/custom_error_test.cmi test/custom_error_test.cmj : cc test/custom_error_test.ml | $stdlib -build test/debug_keep_test.cmi test/debug_keep_test.cmj : cc test/debug_keep_test.ml | $stdlib -build test/debug_mode_value.cmi test/debug_mode_value.cmj : cc test/debug_mode_value.ml | $stdlib -build test/debug_tmp.cmi test/debug_tmp.cmj : cc test/debug_tmp.ml | $stdlib -build test/debugger_test.cmi test/debugger_test.cmj : cc test/debugger_test.ml | $stdlib -build test/default_export_test.cmi test/default_export_test.cmj : cc test/default_export_test.ml | $stdlib -build test/defunctor_make_test.cmi test/defunctor_make_test.cmj : cc test/defunctor_make_test.ml | $stdlib -build test/demo.cmi test/demo.cmj : cc test/demo.ml | test/demo_binding.cmj $stdlib -build test/demo_binding.cmi test/demo_binding.cmj : cc test/demo_binding.ml | $stdlib -build test/demo_int_map.cmj : cc_cmi test/demo_int_map.ml | test/demo_int_map.cmi $stdlib -build test/demo_int_map.cmi : cc test/demo_int_map.mli | $stdlib -build test/demo_page.cmi test/demo_page.cmj : cc test/demo_page.ml | $stdlib -build test/demo_pipe.cmi test/demo_pipe.cmj : cc test/demo_pipe.ml | $stdlib -build test/derive_dyntype.cmi test/derive_dyntype.cmj : cc test/derive_dyntype.ml | $stdlib -build test/derive_projector_test.cmj : cc_cmi test/derive_projector_test.ml | test/derive_projector_test.cmi $stdlib -build test/derive_projector_test.cmi : cc test/derive_projector_test.mli | $stdlib -build test/derive_type_test.cmi test/derive_type_test.cmj : cc test/derive_type_test.ml | $stdlib -build test/digest_test.cmi test/digest_test.cmj : cc test/digest_test.ml | test/ext_array_test.cmj test/mt.cmj $stdlib -build test/div_by_zero_test.cmi test/div_by_zero_test.cmj : cc test/div_by_zero_test.ml | test/mt.cmj $stdlib -build test/dollar_escape_test.cmi test/dollar_escape_test.cmj : cc test/dollar_escape_test.ml | test/mt.cmj $stdlib -build test/earger_curry_test.cmi test/earger_curry_test.cmj : cc test/earger_curry_test.ml | test/mt.cmj $stdlib -build test/effect.cmi test/effect.cmj : cc test/effect.ml | $stdlib -build test/empty_obj.cmi test/empty_obj.cmj : cc test/empty_obj.ml | $stdlib -build test/epsilon_test.cmi test/epsilon_test.cmj : cc test/epsilon_test.ml | test/mt.cmj $stdlib -build test/equal_box_test.cmi test/equal_box_test.cmj : cc test/equal_box_test.ml | test/mt.cmj $stdlib -build test/equal_exception_test.cmi test/equal_exception_test.cmj : cc test/equal_exception_test.ml | test/mt.cmj $stdlib -build test/equal_test.cmi test/equal_test.cmj : cc test/equal_test.ml | $stdlib -build test/es6_module_test.cmi test/es6_module_test.cmj : cc test/es6_module_test.ml | test/mt.cmj $stdlib -build test/escape_esmodule.cmi test/escape_esmodule.cmj : cc test/escape_esmodule.ml | $stdlib -build test/esmodule_ref.cmi test/esmodule_ref.cmj : cc test/esmodule_ref.ml | test/escape_esmodule.cmj $stdlib -build test/event_ffi.cmi test/event_ffi.cmj : cc test/event_ffi.ml | $stdlib -build test/exception_alias.cmi test/exception_alias.cmj : cc test/exception_alias.ml | $stdlib -build test/exception_def.cmi test/exception_def.cmj : cc test/exception_def.ml | test/mt.cmj test/test_other_exn.cmj $stdlib -build test/exception_raise_test.cmi test/exception_raise_test.cmj : cc test/exception_raise_test.ml | test/mt.cmj $stdlib -build test/exception_rebind_test.cmi test/exception_rebind_test.cmj : cc test/exception_rebind_test.ml | test/exception_def.cmj $stdlib -build test/exception_rebound_err_test.cmi test/exception_rebound_err_test.cmj : cc test/exception_rebound_err_test.ml | test/mt.cmj $stdlib -build test/exception_repr_test.cmi test/exception_repr_test.cmj : cc test/exception_repr_test.ml | test/exception_def.cmj test/mt.cmj $stdlib -build test/exception_value_test.cmi test/exception_value_test.cmj : cc test/exception_value_test.ml | $stdlib -build test/exn_error_pattern.cmi test/exn_error_pattern.cmj : cc test/exn_error_pattern.ml | test/mt.cmj $stdlib -build test/export_keyword.cmi test/export_keyword.cmj : cc test/export_keyword.ml | $stdlib -build test/ext_array_test.cmi test/ext_array_test.cmj : cc test/ext_array_test.ml | $stdlib -build test/ext_bytes_test.cmi test/ext_bytes_test.cmj : cc test/ext_bytes_test.ml | test/mt.cmj $stdlib -build test/ext_filename_test.cmi test/ext_filename_test.cmj : cc test/ext_filename_test.ml | test/ext_pervasives_test.cmj test/ext_string_test.cmj test/test_literals.cmj $stdlib -build test/ext_list_test.cmi test/ext_list_test.cmj : cc test/ext_list_test.ml | test/ext_string_test.cmj $stdlib -build test/ext_log_test.cmi test/ext_log_test.cmj : cc test/ext_log_test.ml | $stdlib -build test/ext_pervasives_test.cmj : cc_cmi test/ext_pervasives_test.ml | test/ext_pervasives_test.cmi $stdlib -build test/ext_pervasives_test.cmi : cc test/ext_pervasives_test.mli | $stdlib -build test/ext_string_test.cmi test/ext_string_test.cmj : cc test/ext_string_test.ml | test/ext_bytes_test.cmj $stdlib -build test/ext_sys_test.cmj : cc_cmi test/ext_sys_test.ml | test/ext_sys_test.cmi $stdlib -build test/ext_sys_test.cmi : cc test/ext_sys_test.mli | $stdlib -build test/extensible_variant_test.cmi test/extensible_variant_test.cmj : cc test/extensible_variant_test.ml | test/mt.cmj $stdlib -build test/external_polyfill_test.cmi test/external_polyfill_test.cmj : cc test/external_polyfill_test.ml | test/mt.cmj $stdlib -build test/external_ppx.cmi test/external_ppx.cmj : cc test/external_ppx.ml | $stdlib -build test/fail_comp.cmi test/fail_comp.cmj : cc test/fail_comp.ml | $stdlib -build test/ffi_arity_test.cmi test/ffi_arity_test.cmj : cc test/ffi_arity_test.ml | test/mt.cmj $stdlib -build test/ffi_array_test.cmi test/ffi_array_test.cmj : cc test/ffi_array_test.ml | test/mt.cmj $stdlib -build test/ffi_js_test.cmi test/ffi_js_test.cmj : cc test/ffi_js_test.ml | test/mt.cmj $stdlib -build test/ffi_splice_test.cmi test/ffi_splice_test.cmj : cc test/ffi_splice_test.ml | test/mt.cmj $stdlib -build test/ffi_test.cmi test/ffi_test.cmj : cc test/ffi_test.ml | $stdlib -build test/fib.cmi test/fib.cmj : cc test/fib.ml | $stdlib -build test/flattern_order_test.cmi test/flattern_order_test.cmj : cc test/flattern_order_test.ml | $stdlib -build test/flexible_array_test.cmi test/flexible_array_test.cmj : cc test/flexible_array_test.ml | $stdlib -build test/float_array.cmi test/float_array.cmj : cc test/float_array.ml | $stdlib -build test/float_of_bits_test.cmi test/float_of_bits_test.cmj : cc test/float_of_bits_test.ml | test/mt.cmj $stdlib -build test/float_record.cmj : cc_cmi test/float_record.ml | test/float_record.cmi $stdlib -build test/float_record.cmi : cc test/float_record.mli | $stdlib -build test/float_test.cmi test/float_test.cmj : cc test/float_test.ml | test/mt.cmj test/mt_global.cmj $stdlib -build test/floatarray_test.cmi test/floatarray_test.cmj : cc test/floatarray_test.ml | test/mt.cmj $stdlib -build test/flow_parser_reg_test.cmj : cc_cmi test/flow_parser_reg_test.ml | test/flow_parser_reg_test.cmi test/mt.cmj $stdlib -build test/flow_parser_reg_test.cmi : cc test/flow_parser_reg_test.mli | $stdlib -build test/for_loop_test.cmi test/for_loop_test.cmj : cc test/for_loop_test.ml | test/mt.cmj $stdlib -build test/for_side_effect_test.cmi test/for_side_effect_test.cmj : cc test/for_side_effect_test.ml | test/mt.cmj $stdlib -build test/format_regression.cmi test/format_regression.cmj : cc test/format_regression.ml | $stdlib -build test/format_test.cmi test/format_test.cmj : cc test/format_test.ml | test/mt.cmj $stdlib -build test/fs_test.cmi test/fs_test.cmj : cc test/fs_test.ml | test/mt.cmj $stdlib -build test/fun_pattern_match.cmi test/fun_pattern_match.cmj : cc test/fun_pattern_match.ml | $stdlib -build test/functor_app_test.cmi test/functor_app_test.cmj : cc test/functor_app_test.ml | test/functor_def.cmj test/functor_inst.cmj test/mt.cmj $stdlib -build test/functor_def.cmi test/functor_def.cmj : cc test/functor_def.ml | $stdlib -build test/functor_ffi.cmi test/functor_ffi.cmj : cc test/functor_ffi.ml | $stdlib -build test/functor_inst.cmi test/functor_inst.cmj : cc test/functor_inst.ml | $stdlib -build test/functors.cmi test/functors.cmj : cc test/functors.ml | $stdlib -build test/gbk.cmi test/gbk.cmj : cc test/gbk.ml | $stdlib -build test/genlex_test.cmi test/genlex_test.cmj : cc test/genlex_test.ml | test/mt.cmj $stdlib -build test/gentTypeReTest.cmi test/gentTypeReTest.cmj : cc test/gentTypeReTest.re | $stdlib -build test/global_exception_regression_test.cmi test/global_exception_regression_test.cmj : cc test/global_exception_regression_test.ml | test/mt.cmj $stdlib -build test/global_mangles.cmi test/global_mangles.cmj : cc test/global_mangles.ml | $stdlib -build test/global_module_alias_test.cmi test/global_module_alias_test.cmj : cc test/global_module_alias_test.ml | test/mt.cmj $stdlib -build test/google_closure_test.cmi test/google_closure_test.cmj : cc test/google_closure_test.ml | test/mt.cmj test/test_google_closure.cmj $stdlib -build test/gpr496_test.cmi test/gpr496_test.cmj : cc test/gpr496_test.ml | test/mt.cmj $stdlib -build test/gpr_1063_test.cmi test/gpr_1063_test.cmj : cc test/gpr_1063_test.ml | $stdlib -build test/gpr_1072.cmi test/gpr_1072.cmj : cc test/gpr_1072.ml | $stdlib -build test/gpr_1072_reg.cmi test/gpr_1072_reg.cmj : cc test/gpr_1072_reg.ml | $stdlib -build test/gpr_1150.cmi test/gpr_1150.cmj : cc test/gpr_1150.ml | $stdlib -build test/gpr_1154_test.cmi test/gpr_1154_test.cmj : cc test/gpr_1154_test.ml | test/mt.cmj $stdlib -build test/gpr_1170.cmi test/gpr_1170.cmj : cc test/gpr_1170.ml | $stdlib -build test/gpr_1240_missing_unbox.cmi test/gpr_1240_missing_unbox.cmj : cc test/gpr_1240_missing_unbox.ml | $stdlib -build test/gpr_1245_test.cmi test/gpr_1245_test.cmj : cc test/gpr_1245_test.ml | $stdlib -build test/gpr_1268.cmi test/gpr_1268.cmj : cc test/gpr_1268.ml | $stdlib -build test/gpr_1285_test.cmi test/gpr_1285_test.cmj : cc test/gpr_1285_test.ml | test/mt.cmj $stdlib -build test/gpr_1409_test.cmi test/gpr_1409_test.cmj : cc test/gpr_1409_test.ml | test/mt.cmj test/string_set.cmj $stdlib -build test/gpr_1423_app_test.cmi test/gpr_1423_app_test.cmj : cc test/gpr_1423_app_test.ml | test/gpr_1423_nav.cmj test/mt.cmj $stdlib -build test/gpr_1423_nav.cmi test/gpr_1423_nav.cmj : cc test/gpr_1423_nav.ml | $stdlib -build test/gpr_1438.cmi test/gpr_1438.cmj : cc test/gpr_1438.ml | $stdlib -build test/gpr_1481.cmi test/gpr_1481.cmj : cc test/gpr_1481.ml | $stdlib -build test/gpr_1484.cmi test/gpr_1484.cmj : cc test/gpr_1484.ml | $stdlib -build test/gpr_1501_test.cmi test/gpr_1501_test.cmj : cc test/gpr_1501_test.ml | test/mt.cmj $stdlib -build test/gpr_1503_test.cmi test/gpr_1503_test.cmj : cc test/gpr_1503_test.ml | test/mt.cmj $stdlib -build test/gpr_1539_test.cmi test/gpr_1539_test.cmj : cc test/gpr_1539_test.ml | $stdlib -build test/gpr_1600_test.cmi test/gpr_1600_test.cmj : cc test/gpr_1600_test.ml | $stdlib -build test/gpr_1658_test.cmi test/gpr_1658_test.cmj : cc test/gpr_1658_test.ml | test/mt.cmj $stdlib -build test/gpr_1667_test.cmi test/gpr_1667_test.cmj : cc test/gpr_1667_test.ml | test/mt.cmj $stdlib -build test/gpr_1692_test.cmi test/gpr_1692_test.cmj : cc test/gpr_1692_test.ml | $stdlib -build test/gpr_1698_test.cmi test/gpr_1698_test.cmj : cc test/gpr_1698_test.ml | $stdlib -build test/gpr_1701_test.cmi test/gpr_1701_test.cmj : cc test/gpr_1701_test.ml | $stdlib -build test/gpr_1716_test.cmi test/gpr_1716_test.cmj : cc test/gpr_1716_test.ml | test/mt.cmj $stdlib -build test/gpr_1717_test.cmi test/gpr_1717_test.cmj : cc test/gpr_1717_test.ml | $stdlib -build test/gpr_1728_test.cmi test/gpr_1728_test.cmj : cc test/gpr_1728_test.ml | test/mt.cmj $stdlib -build test/gpr_1749_test.cmi test/gpr_1749_test.cmj : cc test/gpr_1749_test.ml | test/mt.cmj $stdlib -build test/gpr_1759_test.cmi test/gpr_1759_test.cmj : cc test/gpr_1759_test.ml | $stdlib -build test/gpr_1760_test.cmi test/gpr_1760_test.cmj : cc test/gpr_1760_test.ml | test/mt.cmj $stdlib -build test/gpr_1762_test.cmi test/gpr_1762_test.cmj : cc test/gpr_1762_test.ml | test/mt.cmj $stdlib -build test/gpr_1817_test.cmi test/gpr_1817_test.cmj : cc test/gpr_1817_test.ml | test/mt.cmj $stdlib -build test/gpr_1822_test.cmi test/gpr_1822_test.cmj : cc test/gpr_1822_test.ml | test/mt.cmj $stdlib -build test/gpr_1891_test.cmi test/gpr_1891_test.cmj : cc test/gpr_1891_test.ml | $stdlib -build test/gpr_1943_test.cmi test/gpr_1943_test.cmj : cc test/gpr_1943_test.ml | test/mt.cmj $stdlib -build test/gpr_1946_test.cmi test/gpr_1946_test.cmj : cc test/gpr_1946_test.ml | test/mt.cmj $stdlib -build test/gpr_2250_test.cmi test/gpr_2250_test.cmj : cc test/gpr_2250_test.ml | test/mt.cmj $stdlib -build test/gpr_2316_test.cmi test/gpr_2316_test.cmj : cc test/gpr_2316_test.ml | test/mt.cmj $stdlib -build test/gpr_2352_test.cmi test/gpr_2352_test.cmj : cc test/gpr_2352_test.ml | $stdlib -build test/gpr_2413_test.cmi test/gpr_2413_test.cmj : cc test/gpr_2413_test.ml | $stdlib -build test/gpr_2474.cmi test/gpr_2474.cmj : cc test/gpr_2474.ml | $stdlib -build test/gpr_2487.cmi test/gpr_2487.cmj : cc test/gpr_2487.ml | $stdlib -build test/gpr_2503_test.cmi test/gpr_2503_test.cmj : cc test/gpr_2503_test.ml | test/mt.cmj $stdlib -build test/gpr_2608_test.cmi test/gpr_2608_test.cmj : cc test/gpr_2608_test.ml | test/mt.cmj $stdlib -build test/gpr_2614_test.cmi test/gpr_2614_test.cmj : cc test/gpr_2614_test.ml | $stdlib -build test/gpr_2633_test.cmi test/gpr_2633_test.cmj : cc test/gpr_2633_test.ml | $stdlib -build test/gpr_2642_test.cmi test/gpr_2642_test.cmj : cc test/gpr_2642_test.ml | $stdlib -build test/gpr_2652_test.cmi test/gpr_2652_test.cmj : cc test/gpr_2652_test.ml | $stdlib -build test/gpr_2682_test.cmi test/gpr_2682_test.cmj : cc test/gpr_2682_test.ml | $stdlib -build test/gpr_2700_test.cmi test/gpr_2700_test.cmj : cc test/gpr_2700_test.ml | $stdlib -build test/gpr_2731_test.cmi test/gpr_2731_test.cmj : cc test/gpr_2731_test.ml | $stdlib -build test/gpr_2789_test.cmi test/gpr_2789_test.cmj : cc test/gpr_2789_test.ml | test/mt.cmj $stdlib -build test/gpr_2863_test.cmi test/gpr_2863_test.cmj : cc test/gpr_2863_test.ml | $stdlib -build test/gpr_2931_test.cmi test/gpr_2931_test.cmj : cc test/gpr_2931_test.ml | test/mt.cmj $stdlib -build test/gpr_3142_test.cmi test/gpr_3142_test.cmj : cc test/gpr_3142_test.ml | test/mt.cmj $stdlib -build test/gpr_3154_test.cmi test/gpr_3154_test.cmj : cc test/gpr_3154_test.ml | test/mt.cmj $stdlib -build test/gpr_3209_test.cmi test/gpr_3209_test.cmj : cc test/gpr_3209_test.ml | $stdlib -build test/gpr_3492_test.cmi test/gpr_3492_test.cmj : cc test/gpr_3492_test.ml | test/mt.cmj $stdlib -build test/gpr_3502_test.cmi test/gpr_3502_test.cmj : cc test/gpr_3502_test.ml | $stdlib -build test/gpr_3519_jsx_test.cmi test/gpr_3519_jsx_test.cmj : cc test/gpr_3519_jsx_test.ml | $stdlib -build test/gpr_3519_test.cmi test/gpr_3519_test.cmj : cc test/gpr_3519_test.ml | $stdlib -build test/gpr_3536_test.cmi test/gpr_3536_test.cmj : cc test/gpr_3536_test.ml | test/mt.cmj $stdlib -build test/gpr_3546_test.cmi test/gpr_3546_test.cmj : cc test/gpr_3546_test.ml | $stdlib -build test/gpr_3548_test.cmi test/gpr_3548_test.cmj : cc test/gpr_3548_test.ml | $stdlib -build test/gpr_3549_test.cmi test/gpr_3549_test.cmj : cc test/gpr_3549_test.ml | test/mt.cmj $stdlib -build test/gpr_3566_drive_test.cmi test/gpr_3566_drive_test.cmj : cc test/gpr_3566_drive_test.ml | test/gpr_3566_test.cmj test/mt.cmj $stdlib -build test/gpr_3566_test.cmi test/gpr_3566_test.cmj : cc test/gpr_3566_test.ml | $stdlib -build test/gpr_3595_test.cmi test/gpr_3595_test.cmj : cc test/gpr_3595_test.ml | test/mt.cmj $stdlib -build test/gpr_3609_test.cmi test/gpr_3609_test.cmj : cc test/gpr_3609_test.ml | $stdlib -build test/gpr_3697_test.cmi test/gpr_3697_test.cmj : cc test/gpr_3697_test.ml | $stdlib -build test/gpr_373_test.cmi test/gpr_373_test.cmj : cc test/gpr_373_test.ml | $stdlib -build test/gpr_3770_test.cmi test/gpr_3770_test.cmj : cc test/gpr_3770_test.ml | $stdlib -build test/gpr_3852_alias.cmi test/gpr_3852_alias.cmj : cc test/gpr_3852_alias.ml | test/gpr_3852_effect.cmj $stdlib -build test/gpr_3852_alias_reify.cmj : cc_cmi test/gpr_3852_alias_reify.ml | test/gpr_3852_alias_reify.cmi test/gpr_3852_effect.cmj $stdlib -build test/gpr_3852_alias_reify.cmi : cc test/gpr_3852_alias_reify.mli | $stdlib -build test/gpr_3852_effect.cmi test/gpr_3852_effect.cmj : cc test/gpr_3852_effect.ml | $stdlib -build test/gpr_3865.cmi test/gpr_3865.cmj : cc test/gpr_3865.re | test/gpr_3865_bar.cmj test/gpr_3865_foo.cmj $stdlib -build test/gpr_3865_bar.cmi test/gpr_3865_bar.cmj : cc test/gpr_3865_bar.re | $stdlib -build test/gpr_3865_foo.cmi test/gpr_3865_foo.cmj : cc test/gpr_3865_foo.re | $stdlib -build test/gpr_3875_test.cmi test/gpr_3875_test.cmj : cc test/gpr_3875_test.ml | test/mt.cmj $stdlib -build test/gpr_3877_test.cmi test/gpr_3877_test.cmj : cc test/gpr_3877_test.ml | $stdlib -build test/gpr_3895_test.cmi test/gpr_3895_test.cmj : cc test/gpr_3895_test.ml | $stdlib -build test/gpr_3897_test.cmi test/gpr_3897_test.cmj : cc test/gpr_3897_test.ml | $stdlib -build test/gpr_3931_test.cmi test/gpr_3931_test.cmj : cc test/gpr_3931_test.ml | $stdlib -build test/gpr_3980_test.cmi test/gpr_3980_test.cmj : cc test/gpr_3980_test.ml | $stdlib -build test/gpr_4025_test.cmi test/gpr_4025_test.cmj : cc test/gpr_4025_test.ml | $stdlib -build test/gpr_405_test.cmj : cc_cmi test/gpr_405_test.ml | test/gpr_405_test.cmi $stdlib -build test/gpr_405_test.cmi : cc test/gpr_405_test.mli | $stdlib -build test/gpr_4069_test.cmi test/gpr_4069_test.cmj : cc test/gpr_4069_test.ml | $stdlib -build test/gpr_4265_test.cmi test/gpr_4265_test.cmj : cc test/gpr_4265_test.ml | test/mt.cmj $stdlib -build test/gpr_4274_test.cmi test/gpr_4274_test.cmj : cc test/gpr_4274_test.ml | $stdlib -build test/gpr_4280_test.cmi test/gpr_4280_test.cmj : cc test/gpr_4280_test.ml | test/mt.cmj $stdlib -build test/gpr_4407_test.cmi test/gpr_4407_test.cmj : cc test/gpr_4407_test.ml | test/debug_mode_value.cmj test/mt.cmj $stdlib -build test/gpr_441.cmi test/gpr_441.cmj : cc test/gpr_441.ml | $stdlib -build test/gpr_4442_test.cmi test/gpr_4442_test.cmj : cc test/gpr_4442_test.ml | test/mt.cmj $stdlib -build test/gpr_4491_test.cmi test/gpr_4491_test.cmj : cc test/gpr_4491_test.ml | $stdlib -build test/gpr_4494_test.cmi test/gpr_4494_test.cmj : cc test/gpr_4494_test.ml | $stdlib -build test/gpr_4519_test.cmi test/gpr_4519_test.cmj : cc test/gpr_4519_test.ml | test/mt.cmj $stdlib -build test/gpr_459_test.cmi test/gpr_459_test.cmj : cc test/gpr_459_test.ml | test/mt.cmj $stdlib -build test/gpr_4639_test.cmi test/gpr_4639_test.cmj : cc test/gpr_4639_test.ml | $stdlib -build test/gpr_627_test.cmi test/gpr_627_test.cmj : cc test/gpr_627_test.ml | test/mt.cmj $stdlib -build test/gpr_658.cmi test/gpr_658.cmj : cc test/gpr_658.ml | $stdlib -build test/gpr_858_test.cmi test/gpr_858_test.cmj : cc test/gpr_858_test.ml | $stdlib -build test/gpr_858_unit2_test.cmi test/gpr_858_unit2_test.cmj : cc test/gpr_858_unit2_test.ml | $stdlib -build test/gpr_904_test.cmi test/gpr_904_test.cmj : cc test/gpr_904_test.ml | test/mt.cmj $stdlib -build test/gpr_974_test.cmi test/gpr_974_test.cmj : cc test/gpr_974_test.ml | $stdlib -build test/gpr_977_test.cmi test/gpr_977_test.cmj : cc test/gpr_977_test.ml | test/mt.cmj test/nativeint.cmj $stdlib -build test/gpr_return_type_unused_attribute.cmi test/gpr_return_type_unused_attribute.cmj : cc test/gpr_return_type_unused_attribute.ml | $stdlib -build test/gray_code_test.cmi test/gray_code_test.cmj : cc test/gray_code_test.ml | $stdlib -build test/guide_for_ext.cmi test/guide_for_ext.cmj : cc test/guide_for_ext.ml | $stdlib -build test/hamming_test.cmi test/hamming_test.cmj : cc test/hamming_test.ml | test/mt.cmj $stdlib -build test/hash_collision.cmi test/hash_collision.cmj : cc test/hash_collision.ml | test/mt.cmj $stdlib -build test/hash_test.cmi test/hash_test.cmj : cc test/hash_test.ml | test/mt.cmj test/mt_global.cmj $stdlib -build test/hashtbl_test.cmi test/hashtbl_test.cmj : cc test/hashtbl_test.ml | test/mt.cmj $stdlib -build test/hello.foo.cmi test/hello.foo.cmj : cc test/hello.foo.ml | $stdlib -build test/http_types.cmi test/http_types.cmj : cc test/http_types.ml | $stdlib -build test/if_used_test.cmi test/if_used_test.cmj : cc test/if_used_test.ml | $stdlib -build test/ignore_test.cmi test/ignore_test.cmj : cc test/ignore_test.ml | test/mt.cmj $stdlib -build test/imm_map_bench.cmi test/imm_map_bench.cmj : cc test/imm_map_bench.ml | $stdlib -build test/include_side_effect.cmi test/include_side_effect.cmj : cc test/include_side_effect.ml | test/side_effect.cmj $stdlib -build test/include_side_effect_free.cmi test/include_side_effect_free.cmj : cc test/include_side_effect_free.ml | test/side_effect_free.cmj $stdlib -build test/incomplete_toplevel_test.cmi test/incomplete_toplevel_test.cmj : cc test/incomplete_toplevel_test.ml | $stdlib -build test/infer_type_test.cmj : cc_cmi test/infer_type_test.ml | test/infer_type_test.cmi $stdlib -build test/infer_type_test.cmi : cc test/infer_type_test.mli | $stdlib -build test/inline_const.cmj : cc_cmi test/inline_const.ml | test/inline_const.cmi $stdlib -build test/inline_const.cmi : cc test/inline_const.mli | $stdlib -build test/inline_const_test.cmi test/inline_const_test.cmj : cc test/inline_const_test.ml | test/inline_const.cmj test/mt.cmj $stdlib -build test/inline_edge_cases.cmj : cc_cmi test/inline_edge_cases.ml | test/inline_edge_cases.cmi $stdlib -build test/inline_edge_cases.cmi : cc test/inline_edge_cases.mli | $stdlib -build test/inline_map2_test.cmi test/inline_map2_test.cmj : cc test/inline_map2_test.ml | test/mt.cmj $stdlib -build test/inline_map_test.cmj : cc_cmi test/inline_map_test.ml | test/inline_map_test.cmi test/mt.cmj $stdlib -build test/inline_map_test.cmi : cc test/inline_map_test.mli | $stdlib -build test/inline_record_test.cmi test/inline_record_test.cmj : cc test/inline_record_test.ml | test/mt.cmj $stdlib -build test/inline_regression_test.cmi test/inline_regression_test.cmj : cc test/inline_regression_test.ml | test/mt.cmj $stdlib -build test/inline_string_test.cmi test/inline_string_test.cmj : cc test/inline_string_test.ml | $stdlib -build test/inner_call.cmi test/inner_call.cmj : cc test/inner_call.ml | test/inner_define.cmj $stdlib -build test/inner_define.cmj : cc_cmi test/inner_define.ml | test/inner_define.cmi $stdlib -build test/inner_define.cmi : cc test/inner_define.mli | $stdlib -build test/inner_unused.cmi test/inner_unused.cmj : cc test/inner_unused.ml | $stdlib -build test/installation_test.cmi test/installation_test.cmj : cc test/installation_test.ml | test/mt.cmj $stdlib -build test/int32_test.cmi test/int32_test.cmj : cc test/int32_test.ml | test/ext_array_test.cmj test/mt.cmj $stdlib -build test/int64_mul_div_test.cmi test/int64_mul_div_test.cmj : cc test/int64_mul_div_test.ml | test/mt.cmj $stdlib -build test/int64_string_bench.cmi test/int64_string_bench.cmj : cc test/int64_string_bench.ml | $stdlib -build test/int64_string_test.cmi test/int64_string_test.cmj : cc test/int64_string_test.ml | test/mt.cmj $stdlib -build test/int64_test.cmi test/int64_test.cmj : cc test/int64_test.ml | test/ext_array_test.cmj test/mt.cmj test/nativeint.cmj $stdlib -build test/int_hashtbl_test.cmi test/int_hashtbl_test.cmj : cc test/int_hashtbl_test.ml | test/mt.cmj $stdlib -build test/int_map.cmi test/int_map.cmj : cc test/int_map.ml | $stdlib -build test/int_overflow_test.cmi test/int_overflow_test.cmj : cc test/int_overflow_test.ml | test/mt.cmj $stdlib -build test/int_switch_test.cmi test/int_switch_test.cmj : cc test/int_switch_test.ml | test/mt.cmj $stdlib -build test/internal_unused_test.cmi test/internal_unused_test.cmj : cc test/internal_unused_test.ml | $stdlib -build test/io_test.cmi test/io_test.cmj : cc test/io_test.ml | $stdlib -build test/js_array_test.cmi test/js_array_test.cmj : cc test/js_array_test.ml | test/mt.cmj $stdlib -build test/js_bool_test.cmi test/js_bool_test.cmj : cc test/js_bool_test.ml | test/mt.cmj $stdlib -build test/js_cast_test.cmi test/js_cast_test.cmj : cc test/js_cast_test.ml | test/mt.cmj $stdlib -build test/js_date_test.cmi test/js_date_test.cmj : cc test/js_date_test.ml | test/mt.cmj $stdlib -build test/js_dict_test.cmi test/js_dict_test.cmj : cc test/js_dict_test.ml | test/mt.cmj $stdlib -build test/js_exception_catch_test.cmi test/js_exception_catch_test.cmj : cc test/js_exception_catch_test.ml | test/mt.cmj $stdlib -build test/js_float_test.cmi test/js_float_test.cmj : cc test/js_float_test.ml | test/mt.cmj $stdlib -build test/js_global_test.cmi test/js_global_test.cmj : cc test/js_global_test.ml | test/mt.cmj $stdlib -build test/js_int_test.cmi test/js_int_test.cmj : cc test/js_int_test.ml | test/mt.cmj $stdlib -build test/js_json_test.cmi test/js_json_test.cmj : cc test/js_json_test.ml | test/mt.cmj $stdlib -build test/js_list_test.cmi test/js_list_test.cmj : cc test/js_list_test.ml | test/mt.cmj $stdlib -build test/js_math_test.cmi test/js_math_test.cmj : cc test/js_math_test.ml | test/mt.cmj $stdlib -build test/js_null_test.cmi test/js_null_test.cmj : cc test/js_null_test.ml | test/mt.cmj $stdlib -build test/js_null_undefined_test.cmi test/js_null_undefined_test.cmj : cc test/js_null_undefined_test.ml | test/mt.cmj $stdlib -build test/js_nullable_test.cmi test/js_nullable_test.cmj : cc test/js_nullable_test.ml | test/mt.cmj $stdlib -build test/js_obj_test.cmi test/js_obj_test.cmj : cc test/js_obj_test.ml | test/mt.cmj $stdlib -build test/js_option_test.cmi test/js_option_test.cmj : cc test/js_option_test.ml | test/mt.cmj $stdlib -build test/js_promise_basic_test.cmi test/js_promise_basic_test.cmj : cc test/js_promise_basic_test.ml | test/mt.cmj $stdlib -build test/js_re_test.cmi test/js_re_test.cmj : cc test/js_re_test.ml | test/mt.cmj $stdlib -build test/js_string_test.cmi test/js_string_test.cmj : cc test/js_string_test.ml | test/mt.cmj $stdlib -build test/js_typed_array_test.cmi test/js_typed_array_test.cmj : cc test/js_typed_array_test.ml | test/mt.cmj $stdlib -build test/js_undefined_test.cmi test/js_undefined_test.cmj : cc test/js_undefined_test.ml | test/mt.cmj $stdlib -build test/js_val.cmi test/js_val.cmj : cc test/js_val.ml | $stdlib -build test/jsoo_400_test.cmi test/jsoo_400_test.cmj : cc test/jsoo_400_test.ml | test/mt.cmj $stdlib -build test/jsoo_485_test.cmi test/jsoo_485_test.cmj : cc test/jsoo_485_test.ml | $stdlib -build test/key_word_property.cmi test/key_word_property.cmj : cc test/key_word_property.ml | $stdlib -build test/key_word_property2.cmi test/key_word_property2.cmj : cc test/key_word_property2.ml | test/export_keyword.cmj $stdlib -build test/key_word_property_plus_test.cmi test/key_word_property_plus_test.cmj : cc test/key_word_property_plus_test.ml | test/global_mangles.cmj test/mt.cmj $stdlib -build test/label_uncurry.cmi test/label_uncurry.cmj : cc test/label_uncurry.ml | $stdlib -build test/large_obj_test.cmi test/large_obj_test.cmj : cc test/large_obj_test.ml | $stdlib -build test/large_record_duplication_test.cmi test/large_record_duplication_test.cmj : cc test/large_record_duplication_test.ml | test/mt.cmj $stdlib -build test/largest_int_flow.cmi test/largest_int_flow.cmj : cc test/largest_int_flow.ml | $stdlib -build test/lazy_demo.cmi test/lazy_demo.cmj : cc test/lazy_demo.re | $stdlib -build test/lazy_test.cmi test/lazy_test.cmj : cc test/lazy_test.ml | test/mt.cmj $stdlib -build test/lexer_test.cmi test/lexer_test.cmj : cc test/lexer_test.ml | test/arith_lexer.cmj test/arith_parser.cmj test/arith_syntax.cmj test/mt.cmj test/number_lexer.cmj $stdlib -build test/lib_js_test.cmi test/lib_js_test.cmj : cc test/lib_js_test.ml | test/mt.cmj $stdlib -build test/libarg_test.cmi test/libarg_test.cmj : cc test/libarg_test.ml | test/mt.cmj $stdlib -build test/libqueue_test.cmi test/libqueue_test.cmj : cc test/libqueue_test.ml | $stdlib -build test/limits_test.cmi test/limits_test.cmj : cc test/limits_test.ml | test/mt.cmj $stdlib -build test/list_stack.cmi test/list_stack.cmj : cc test/list_stack.ml | $stdlib -build test/list_test.cmi test/list_test.cmj : cc test/list_test.ml | test/mt.cmj $stdlib -build test/local_class_type.cmi test/local_class_type.cmj : cc test/local_class_type.ml | $stdlib -build test/local_exception_test.cmi test/local_exception_test.cmj : cc test/local_exception_test.ml | $stdlib -build test/loop_regression_test.cmi test/loop_regression_test.cmj : cc test/loop_regression_test.ml | test/mt.cmj $stdlib -build test/loop_suites_test.cmi test/loop_suites_test.cmj : cc test/loop_suites_test.ml | test/for_loop_test.cmj test/mt.cmj $stdlib -build test/map_find_test.cmi test/map_find_test.cmj : cc test/map_find_test.ml | test/mt.cmj $stdlib -build test/map_test.cmj : cc_cmi test/map_test.ml | test/map_test.cmi test/mt.cmj $stdlib -build test/map_test.cmi : cc test/map_test.mli | $stdlib -build test/mario_game.cmi test/mario_game.cmj : cc test/mario_game.ml | $stdlib -build test/method_chain.cmi test/method_chain.cmj : cc test/method_chain.ml | $stdlib -build test/method_name_test.cmi test/method_name_test.cmj : cc test/method_name_test.ml | test/mt.cmj $stdlib -build test/method_string_name.cmi test/method_string_name.cmj : cc test/method_string_name.re | $stdlib -build test/minimal_test.cmi test/minimal_test.cmj : cc test/minimal_test.ml | $stdlib -build test/miss_colon_test.cmi test/miss_colon_test.cmj : cc test/miss_colon_test.ml | $stdlib -build test/mock_mt.cmi test/mock_mt.cmj : cc test/mock_mt.ml | test/mt.cmj $stdlib -build test/module_alias_test.cmi test/module_alias_test.cmj : cc test/module_alias_test.ml | test/mt.cmj $stdlib -build test/module_as_class_ffi.cmi test/module_as_class_ffi.cmj : cc test/module_as_class_ffi.ml | $stdlib -build test/module_as_function.cmi test/module_as_function.cmj : cc test/module_as_function.ml | $stdlib -build test/module_missing_conversion.cmi test/module_missing_conversion.cmj : cc test/module_missing_conversion.ml | $stdlib -build test/module_parameter_test.cmi test/module_parameter_test.cmj : cc test/module_parameter_test.ml | test/mt.cmj $stdlib -build test/module_splice_test.cmi test/module_splice_test.cmj : cc test/module_splice_test.ml | test/mt.cmj $stdlib -build test/more_poly_variant_test.cmi test/more_poly_variant_test.cmj : cc test/more_poly_variant_test.ml | $stdlib -build test/more_uncurry.cmi test/more_uncurry.cmj : cc test/more_uncurry.ml | $stdlib -build test/mpr_6033_test.cmi test/mpr_6033_test.cmj : cc test/mpr_6033_test.ml | test/mt.cmj $stdlib -build test/mt.cmj : cc_cmi test/mt.ml | test/mt.cmi $stdlib -build test/mt.cmi : cc test/mt.mli | $stdlib -build test/mt_global.cmj : cc_cmi test/mt_global.ml | test/mt.cmj test/mt_global.cmi $stdlib -build test/mt_global.cmi : cc test/mt_global.mli | test/mt.cmi $stdlib -build test/mutable_obj_test.cmi test/mutable_obj_test.cmj : cc test/mutable_obj_test.ml | $stdlib -build test/mutable_uncurry_test.cmi test/mutable_uncurry_test.cmj : cc test/mutable_uncurry_test.ml | test/mt.cmj $stdlib -build test/mutual_non_recursive_type.cmi test/mutual_non_recursive_type.cmj : cc test/mutual_non_recursive_type.ml | $stdlib -build test/name_mangle_test.cmi test/name_mangle_test.cmj : cc test/name_mangle_test.ml | test/mt.cmj $stdlib -build test/native_pattern.cmi test/native_pattern.cmj : cc test/native_pattern.ml | test/nativeint.cmj $stdlib -build test/nativeint.cmj : cc_cmi test/nativeint.ml | test/nativeint.cmi $stdlib -build test/nativeint.cmi : cc test/nativeint.mli | $stdlib -build test/nested_include.cmi test/nested_include.cmj : cc test/nested_include.ml | $stdlib -build test/nested_module_alias.cmi test/nested_module_alias.cmj : cc test/nested_module_alias.ml | $stdlib -build test/nested_obj_literal.cmi test/nested_obj_literal.cmj : cc test/nested_obj_literal.ml | $stdlib -build test/nested_obj_test.cmi test/nested_obj_test.cmj : cc test/nested_obj_test.ml | $stdlib -build test/nested_pattern_match_test.cmi test/nested_pattern_match_test.cmj : cc test/nested_pattern_match_test.ml | $stdlib -build test/noassert.cmi test/noassert.cmj : cc test/noassert.ml | $stdlib -build test/node_fs_test.cmi test/node_fs_test.cmj : cc test/node_fs_test.ml | $stdlib -build test/node_path_test.cmi test/node_path_test.cmj : cc test/node_path_test.ml | $stdlib -build test/null_list_test.cmi test/null_list_test.cmj : cc test/null_list_test.ml | $stdlib -build test/number_lexer.cmi test/number_lexer.cmj : cc test/number_lexer.ml | $stdlib -build test/obj_curry_test.cmi test/obj_curry_test.cmj : cc test/obj_curry_test.ml | $stdlib -build test/obj_literal_ppx.cmi test/obj_literal_ppx.cmj : cc test/obj_literal_ppx.ml | $stdlib -build test/obj_literal_ppx_test.cmi test/obj_literal_ppx_test.cmj : cc test/obj_literal_ppx_test.ml | $stdlib -build test/obj_magic_test.cmi test/obj_magic_test.cmj : cc test/obj_magic_test.ml | test/mt.cmj $stdlib -build test/obj_repr_test.cmi test/obj_repr_test.cmj : cc test/obj_repr_test.ml | $stdlib -build test/obj_test.cmi test/obj_test.cmj : cc test/obj_test.ml | test/mt.cmj $stdlib -build test/obj_type_test.cmi test/obj_type_test.cmj : cc test/obj_type_test.ml | $stdlib -build test/ocaml_parsetree_test.cmj : cc_cmi test/ocaml_parsetree_test.ml | test/nativeint.cmj test/ocaml_parsetree_test.cmi $stdlib -build test/ocaml_parsetree_test.cmi : cc test/ocaml_parsetree_test.mli | $stdlib -build test/ocaml_proto_test.cmj : cc_cmi test/ocaml_proto_test.ml | test/mt.cmj test/ocaml_proto_test.cmi $stdlib -build test/ocaml_proto_test.cmi : cc test/ocaml_proto_test.mli | $stdlib -build test/ocaml_re_test.cmi test/ocaml_re_test.cmj : cc test/ocaml_re_test.ml | test/mt.cmj $stdlib -build test/ocaml_typedtree_test.cmj : cc_cmi test/ocaml_typedtree_test.ml | test/nativeint.cmj test/ocaml_typedtree_test.cmi $stdlib -build test/ocaml_typedtree_test.cmi : cc test/ocaml_typedtree_test.mli | $stdlib -build test/of_string_test.cmi test/of_string_test.cmj : cc test/of_string_test.ml | test/mt.cmj $stdlib -build test/offset.cmi test/offset.cmj : cc test/offset.ml | $stdlib -build test/oo_js_test_date.cmi test/oo_js_test_date.cmj : cc test/oo_js_test_date.ml | test/mt.cmj $stdlib -build test/opr_3576_test.cmi test/opr_3576_test.cmj : cc test/opr_3576_test.ml | test/mt.cmj $stdlib -build test/opr_4560_test.cmi test/opr_4560_test.cmj : cc test/opr_4560_test.ml | test/mt.cmj $stdlib -build test/option_repr_test.cmi test/option_repr_test.cmj : cc test/option_repr_test.ml | test/mt.cmj $stdlib -build test/optional_ffi_test.cmi test/optional_ffi_test.cmj : cc test/optional_ffi_test.ml | test/mt.cmj $stdlib -build test/optional_regression_test.cmi test/optional_regression_test.cmj : cc test/optional_regression_test.ml | test/mt.cmj $stdlib -build test/parser_api.cmi test/parser_api.cmj : cc test/parser_api.ml | test/nativeint.cmj $stdlib -build test/parser_api_test.cmi test/parser_api_test.cmj : cc test/parser_api_test.ml | test/mt.cmj test/parser_api.cmj $stdlib -build test/pipe_send_readline.cmi test/pipe_send_readline.cmj : cc test/pipe_send_readline.ml | $stdlib -build test/pipe_syntax.cmi test/pipe_syntax.cmj : cc test/pipe_syntax.ml | $stdlib -build test/poly_empty_array.cmi test/poly_empty_array.cmj : cc test/poly_empty_array.ml | $stdlib -build test/poly_type.cmi test/poly_type.cmj : cc test/poly_type.ml | $stdlib -build test/poly_variant_test.cmj : cc_cmi test/poly_variant_test.ml | test/mt.cmj test/poly_variant_test.cmi $stdlib -build test/poly_variant_test.cmi : cc test/poly_variant_test.mli | $stdlib -build test/polymorphism_test.cmj : cc_cmi test/polymorphism_test.ml | test/polymorphism_test.cmi $stdlib -build test/polymorphism_test.cmi : cc test/polymorphism_test.mli | $stdlib -build test/polyvar_convert.cmi test/polyvar_convert.cmj : cc test/polyvar_convert.ml | $stdlib -build test/polyvar_test.cmi test/polyvar_test.cmj : cc test/polyvar_test.ml | $stdlib -build test/ppx_apply_test.cmi test/ppx_apply_test.cmj : cc test/ppx_apply_test.ml | test/mt.cmj $stdlib -build test/ppx_this_obj_field.cmi test/ppx_this_obj_field.cmj : cc test/ppx_this_obj_field.ml | test/mt.cmj $stdlib -build test/ppx_this_obj_test.cmi test/ppx_this_obj_test.cmj : cc test/ppx_this_obj_test.ml | test/mt.cmj $stdlib -build test/pq_test.cmi test/pq_test.cmj : cc test/pq_test.ml | $stdlib -build test/pr6726.cmi test/pr6726.cmj : cc test/pr6726.ml | $stdlib -build test/pr_regression_test.cmi test/pr_regression_test.cmj : cc test/pr_regression_test.ml | test/mt.cmj $stdlib -build test/prepend_data_ffi.cmi test/prepend_data_ffi.cmj : cc test/prepend_data_ffi.ml | $stdlib -build test/primitive_reg_test.cmi test/primitive_reg_test.cmj : cc test/primitive_reg_test.ml | $stdlib -build test/print_alpha_test.cmi test/print_alpha_test.cmj : cc test/print_alpha_test.ml | test/mt.cmj $stdlib -build test/printf_sim.cmi test/printf_sim.cmj : cc test/printf_sim.ml | $stdlib -build test/printf_test.cmi test/printf_test.cmj : cc test/printf_test.ml | test/mt.cmj $stdlib -build test/promise.cmi test/promise.cmj : cc test/promise.ml | $stdlib -build test/promise_catch_test.cmi test/promise_catch_test.cmj : cc test/promise_catch_test.ml | test/mt.cmj $stdlib -build test/qcc.cmi test/qcc.cmj : cc test/qcc.ml | $stdlib -build test/queue_402.cmi test/queue_402.cmj : cc test/queue_402.ml | $stdlib -build test/queue_test.cmi test/queue_test.cmj : cc test/queue_test.ml | test/mt.cmj test/queue_402.cmj $stdlib -build test/random_test.cmi test/random_test.cmj : cc test/random_test.ml | test/mt.cmj test/mt_global.cmj $stdlib -build test/raw_hash_tbl_bench.cmi test/raw_hash_tbl_bench.cmj : cc test/raw_hash_tbl_bench.ml | $stdlib -build test/raw_output_test.cmi test/raw_output_test.cmj : cc test/raw_output_test.ml | $stdlib -build test/raw_pure_test.cmi test/raw_pure_test.cmj : cc test/raw_pure_test.ml | $stdlib -build test/rbset.cmi test/rbset.cmj : cc test/rbset.ml | $stdlib -build test/re_first_test.cmi test/re_first_test.cmj : cc test/re_first_test.re | $stdlib -build test/react.cmi test/react.cmj : cc test/react.re | $stdlib -build test/reactDOMRe.cmi test/reactDOMRe.cmj : cc test/reactDOMRe.re | test/react.cmj test/reactEvent.cmj test/reasonReact.cmj $stdlib -build test/reactDOMServerRe.cmi test/reactDOMServerRe.cmj : cc test/reactDOMServerRe.re | test/react.cmj $stdlib -build test/reactEvent.cmj : cc_cmi test/reactEvent.re | test/reactEvent.cmi $stdlib -build test/reactEvent.cmi : cc test/reactEvent.rei | $stdlib -build test/reactEventRe.cmj : cc_cmi test/reactEventRe.re | test/reactEvent.cmj test/reactEventRe.cmi $stdlib -build test/reactEventRe.cmi : cc test/reactEventRe.rei | test/reactEvent.cmi $stdlib -build test/reactTestUtils.cmj : cc_cmi test/reactTestUtils.re | test/react.cmj test/reactTestUtils.cmi $stdlib -build test/reactTestUtils.cmi : cc test/reactTestUtils.rei | test/react.cmi $stdlib -build test/reasonReact.cmj : cc_cmi test/reasonReact.re | test/react.cmj test/reasonReact.cmi test/reasonReactOptimizedCreateClass.cmj test/reasonReactRouter.cmj $stdlib -build test/reasonReact.cmi : cc test/reasonReact.rei | test/react.cmi test/reasonReactRouter.cmi $stdlib -build test/reasonReactCompat.cmj : cc_cmi test/reasonReactCompat.re | test/react.cmj test/reasonReact.cmj test/reasonReactCompat.cmi $stdlib -build test/reasonReactCompat.cmi : cc test/reasonReactCompat.rei | test/react.cmi test/reasonReact.cmi $stdlib -build test/reasonReactOptimizedCreateClass.cmi test/reasonReactOptimizedCreateClass.cmj : cc test/reasonReactOptimizedCreateClass.re | $stdlib -build test/reasonReactRouter.cmj : cc_cmi test/reasonReactRouter.re | test/react.cmj test/reasonReactRouter.cmi $stdlib -build test/reasonReactRouter.cmi : cc test/reasonReactRouter.rei | $stdlib -build test/rebind_module.cmi test/rebind_module.cmj : cc test/rebind_module.ml | $stdlib -build test/rebind_module_test.cmi test/rebind_module_test.cmj : cc test/rebind_module_test.ml | test/rebind_module.cmj $stdlib -build test/rec_fun_test.cmi test/rec_fun_test.cmj : cc test/rec_fun_test.ml | test/mt.cmj $stdlib -build test/rec_module_opt.cmi test/rec_module_opt.cmj : cc test/rec_module_opt.ml | $stdlib -build test/rec_module_test.cmi test/rec_module_test.cmj : cc test/rec_module_test.ml | test/mt.cmj $stdlib -build test/rec_value_test.cmi test/rec_value_test.cmj : cc test/rec_value_test.ml | test/mt.cmj $stdlib -build test/record_debug_test.cmi test/record_debug_test.cmj : cc test/record_debug_test.ml | test/mt.cmj $stdlib -build test/record_extension_test.cmi test/record_extension_test.cmj : cc test/record_extension_test.ml | test/mt.cmj $stdlib -build test/record_name_test.cmi test/record_name_test.cmj : cc test/record_name_test.ml | $stdlib -build test/record_with_test.cmi test/record_with_test.cmj : cc test/record_with_test.ml | test/mt.cmj $stdlib -build test/recursive_module.cmi test/recursive_module.cmj : cc test/recursive_module.ml | test/mt.cmj $stdlib -build test/recursive_module_test.cmi test/recursive_module_test.cmj : cc test/recursive_module_test.ml | test/mt.cmj $stdlib -build test/recursive_react_component.cmi test/recursive_react_component.cmj : cc test/recursive_react_component.re | test/react.cmj $stdlib -build test/recursive_records_test.cmi test/recursive_records_test.cmj : cc test/recursive_records_test.ml | test/mt.cmj $stdlib -build test/recursive_unbound_module_test.cmi test/recursive_unbound_module_test.cmj : cc test/recursive_unbound_module_test.ml | $stdlib -build test/regression_print.cmi test/regression_print.cmj : cc test/regression_print.ml | $stdlib -build test/relative_path.cmi test/relative_path.cmj : cc test/relative_path.ml | $stdlib -build test/return_check.cmi test/return_check.cmj : cc test/return_check.ml | $stdlib -build test/runtime_encoding_test.cmi test/runtime_encoding_test.cmj : cc test/runtime_encoding_test.ml | $stdlib -build test/scanf_io.cmi test/scanf_io.cmj : cc test/scanf_io.ml | test/testing.cmj $stdlib -build test/scanf_reference_error_regression_test.cmj : cc_cmi test/scanf_reference_error_regression_test.ml | test/mt.cmj test/mt_global.cmj test/scanf_reference_error_regression_test.cmi $stdlib -build test/scanf_reference_error_regression_test.cmi : cc test/scanf_reference_error_regression_test.mli | $stdlib -build test/scanf_test.cmi test/scanf_test.cmj : cc test/scanf_test.ml | test/mt.cmj test/mt_global.cmj $stdlib -build test/set_gen.cmi test/set_gen.cmj : cc test/set_gen.ml | $stdlib -build test/sexp.cmj : cc_cmi test/sexp.ml | test/sexp.cmi $stdlib -build test/sexp.cmi : cc test/sexp.mli | $stdlib -build test/sexpm.cmj : cc_cmi test/sexpm.ml | test/sexpm.cmi $stdlib -build test/sexpm.cmi : cc test/sexpm.mli | $stdlib -build test/sexpm_test.cmi test/sexpm_test.cmj : cc test/sexpm_test.ml | test/mt.cmj test/sexpm.cmj $stdlib -build test/shift_test.cmi test/shift_test.cmj : cc test/shift_test.ml | test/nativeint.cmj $stdlib -build test/side_effect.cmi test/side_effect.cmj : cc test/side_effect.ml | $stdlib -build test/side_effect_free.cmi test/side_effect_free.cmj : cc test/side_effect_free.ml | $stdlib -build test/simple_derive_test.cmj : cc_cmi test/simple_derive_test.ml | test/simple_derive_test.cmi $stdlib -build test/simple_derive_test.cmi : cc test/simple_derive_test.mli | $stdlib -build test/simple_derive_use.cmj : cc_cmi test/simple_derive_use.ml | test/simple_derive_use.cmi $stdlib -build test/simple_derive_use.cmi : cc test/simple_derive_use.mli | $stdlib -build test/simple_lexer_test.cmi test/simple_lexer_test.cmj : cc test/simple_lexer_test.ml | test/mt.cmj $stdlib -build test/simplify_lambda_632o.cmi test/simplify_lambda_632o.cmj : cc test/simplify_lambda_632o.ml | $stdlib -build test/single_module_alias.cmi test/single_module_alias.cmj : cc test/single_module_alias.ml | $stdlib -build test/singular_unit_test.cmi test/singular_unit_test.cmj : cc test/singular_unit_test.ml | $stdlib -build test/small_inline_test.cmi test/small_inline_test.cmj : cc test/small_inline_test.ml | $stdlib -build test/splice_test.cmi test/splice_test.cmj : cc test/splice_test.ml | test/mt.cmj $stdlib -build test/sprintf_reg_test.cmi test/sprintf_reg_test.cmj : cc test/sprintf_reg_test.ml | test/mt.cmj test/mt_global.cmj $stdlib -build test/stack_comp_test.cmi test/stack_comp_test.cmj : cc test/stack_comp_test.ml | test/mt.cmj test/mt_global.cmj $stdlib -build test/stack_test.cmi test/stack_test.cmj : cc test/stack_test.ml | test/mt.cmj $stdlib -build test/stream_parser_test.cmi test/stream_parser_test.cmj : cc test/stream_parser_test.ml | test/mt.cmj $stdlib -build test/string_bound_get_test.cmi test/string_bound_get_test.cmj : cc test/string_bound_get_test.ml | $stdlib -build test/string_get_set_test.cmi test/string_get_set_test.cmj : cc test/string_get_set_test.ml | test/mt.cmj $stdlib -build test/string_interp_test.cmi test/string_interp_test.cmj : cc test/string_interp_test.ml | $stdlib -build test/string_literal_print_test.cmi test/string_literal_print_test.cmj : cc test/string_literal_print_test.ml | test/mt.cmj $stdlib -build test/string_runtime_test.cmi test/string_runtime_test.cmj : cc test/string_runtime_test.ml | test/mt.cmj test/test_char.cmj $stdlib -build test/string_set.cmi test/string_set.cmj : cc test/string_set.ml | test/set_gen.cmj $stdlib -build test/string_set_test.cmi test/string_set_test.cmj : cc test/string_set_test.ml | test/mt.cmj test/string_set.cmj $stdlib -build test/string_test.cmi test/string_test.cmj : cc test/string_test.ml | test/ext_string_test.cmj test/mt.cmj $stdlib -build test/string_unicode_test.cmi test/string_unicode_test.cmj : cc test/string_unicode_test.ml | $stdlib -build test/stringmatch_test.cmi test/stringmatch_test.cmj : cc test/stringmatch_test.ml | $stdlib -build test/submodule.cmi test/submodule.cmj : cc test/submodule.ml | $stdlib -build test/submodule_call.cmi test/submodule_call.cmj : cc test/submodule_call.ml | test/submodule.cmj $stdlib -build test/swap_test.cmi test/swap_test.cmj : cc test/swap_test.ml | $stdlib -build test/switch_case_test.cmi test/switch_case_test.cmj : cc test/switch_case_test.ml | test/mt.cmj $stdlib -build test/tailcall_inline_test.cmi test/tailcall_inline_test.cmj : cc test/tailcall_inline_test.ml | test/mt.cmj $stdlib -build test/test.cmi test/test.cmj : cc test/test.ml | $stdlib -build test/test_alias.cmi test/test_alias.cmj : cc test/test_alias.ml | test/test_global_print.cmj $stdlib -build test/test_ari.cmi test/test_ari.cmj : cc test/test_ari.ml | $stdlib -build test/test_array.cmi test/test_array.cmj : cc test/test_array.ml | $stdlib -build test/test_array_append.cmi test/test_array_append.cmj : cc test/test_array_append.ml | $stdlib -build test/test_array_primitive.cmi test/test_array_primitive.cmj : cc test/test_array_primitive.ml | $stdlib -build test/test_bool_equal.cmi test/test_bool_equal.cmj : cc test/test_bool_equal.ml | $stdlib -build test/test_bs_this.cmi test/test_bs_this.cmj : cc test/test_bs_this.ml | $stdlib -build test/test_bug.cmi test/test_bug.cmj : cc test/test_bug.ml | test/test_char.cmj $stdlib -build test/test_bytes.cmi test/test_bytes.cmj : cc test/test_bytes.ml | $stdlib -build test/test_case_opt_collision.cmi test/test_case_opt_collision.cmj : cc test/test_case_opt_collision.ml | test/mt.cmj $stdlib -build test/test_case_set.cmi test/test_case_set.cmj : cc test/test_case_set.ml | $stdlib -build test/test_char.cmi test/test_char.cmj : cc test/test_char.ml | $stdlib -build test/test_closure.cmi test/test_closure.cmj : cc test/test_closure.ml | $stdlib -build test/test_common.cmi test/test_common.cmj : cc test/test_common.ml | $stdlib -build test/test_const_elim.cmi test/test_const_elim.cmj : cc test/test_const_elim.ml | $stdlib -build test/test_const_propogate.cmi test/test_const_propogate.cmj : cc test/test_const_propogate.ml | $stdlib -build test/test_cpp.cmi test/test_cpp.cmj : cc test/test_cpp.ml | $stdlib -build test/test_cps.cmi test/test_cps.cmj : cc test/test_cps.ml | $stdlib -build test/test_demo.cmi test/test_demo.cmj : cc test/test_demo.ml | $stdlib -build test/test_dup_param.cmi test/test_dup_param.cmj : cc test/test_dup_param.ml | $stdlib -build test/test_eq.cmi test/test_eq.cmj : cc test/test_eq.ml | $stdlib -build test/test_exception.cmi test/test_exception.cmj : cc test/test_exception.ml | test/test_common.cmj $stdlib -build test/test_exception_escape.cmi test/test_exception_escape.cmj : cc test/test_exception_escape.ml | $stdlib -build test/test_export2.cmi test/test_export2.cmj : cc test/test_export2.ml | $stdlib -build test/test_external.cmi test/test_external.cmj : cc test/test_external.ml | $stdlib -build test/test_external_unit.cmi test/test_external_unit.cmj : cc test/test_external_unit.ml | $stdlib -build test/test_ffi.cmi test/test_ffi.cmj : cc test/test_ffi.ml | $stdlib -build test/test_fib.cmi test/test_fib.cmj : cc test/test_fib.ml | $stdlib -build test/test_filename.cmi test/test_filename.cmj : cc test/test_filename.ml | $stdlib -build test/test_for_loop.cmi test/test_for_loop.cmj : cc test/test_for_loop.ml | $stdlib -build test/test_for_map.cmi test/test_for_map.cmj : cc test/test_for_map.ml | $stdlib -build test/test_for_map2.cmj : cc_cmi test/test_for_map2.ml | test/int_map.cmj test/test_for_map2.cmi $stdlib -build test/test_for_map2.cmi : cc test/test_for_map2.mli | $stdlib -build test/test_format.cmi test/test_format.cmj : cc test/test_format.ml | $stdlib -build test/test_formatter.cmi test/test_formatter.cmj : cc test/test_formatter.ml | $stdlib -build test/test_functor_dead_code.cmi test/test_functor_dead_code.cmj : cc test/test_functor_dead_code.ml | $stdlib -build test/test_generative_module.cmi test/test_generative_module.cmj : cc test/test_generative_module.ml | $stdlib -build test/test_global_print.cmi test/test_global_print.cmj : cc test/test_global_print.ml | $stdlib -build test/test_google_closure.cmi test/test_google_closure.cmj : cc test/test_google_closure.ml | $stdlib -build test/test_http_server.cmj : cc_cmi test/test_http_server.ml | test/http_types.cmj test/test_http_server.cmi $stdlib -build test/test_http_server.cmi : cc test/test_http_server.mli | $stdlib -build test/test_include.cmi test/test_include.cmj : cc test/test_include.ml | test/test_order.cmj $stdlib -build test/test_incomplete.cmi test/test_incomplete.cmj : cc test/test_incomplete.ml | $stdlib -build test/test_incr_ref.cmi test/test_incr_ref.cmj : cc test/test_incr_ref.ml | $stdlib -build test/test_index.cmi test/test_index.cmj : cc test/test_index.ml | $stdlib -build test/test_int_map_find.cmi test/test_int_map_find.cmj : cc test/test_int_map_find.ml | $stdlib -build test/test_internalOO.cmi test/test_internalOO.cmj : cc test/test_internalOO.ml | $stdlib -build test/test_is_js.cmj : cc_cmi test/test_is_js.ml | test/mt.cmj test/test_is_js.cmi $stdlib -build test/test_is_js.cmi : cc test/test_is_js.mli | $stdlib -build test/test_js_ffi.cmi test/test_js_ffi.cmj : cc test/test_js_ffi.ml | $stdlib -build test/test_let.cmi test/test_let.cmj : cc test/test_let.ml | $stdlib -build test/test_list.cmi test/test_list.cmj : cc test/test_list.ml | $stdlib -build test/test_literal.cmi test/test_literal.cmj : cc test/test_literal.ml | $stdlib -build test/test_literals.cmi test/test_literals.cmj : cc test/test_literals.ml | $stdlib -build test/test_match_exception.cmi test/test_match_exception.cmj : cc test/test_match_exception.ml | $stdlib -build test/test_mutliple.cmi test/test_mutliple.cmj : cc test/test_mutliple.ml | $stdlib -build test/test_nat64.cmi test/test_nat64.cmj : cc test/test_nat64.ml | $stdlib -build test/test_nested_let.cmi test/test_nested_let.cmj : cc test/test_nested_let.ml | $stdlib -build test/test_nested_print.cmi test/test_nested_print.cmj : cc test/test_nested_print.ml | $stdlib -build test/test_non_export.cmi test/test_non_export.cmj : cc test/test_non_export.ml | $stdlib -build test/test_nullary.cmi test/test_nullary.cmj : cc test/test_nullary.ml | $stdlib -build test/test_obj.cmi test/test_obj.cmj : cc test/test_obj.ml | $stdlib -build test/test_obj_simple_ffi.cmi test/test_obj_simple_ffi.cmj : cc test/test_obj_simple_ffi.ml | $stdlib -build test/test_order.cmi test/test_order.cmj : cc test/test_order.ml | $stdlib -build test/test_order_tailcall.cmi test/test_order_tailcall.cmj : cc test/test_order_tailcall.ml | $stdlib -build test/test_other_exn.cmi test/test_other_exn.cmj : cc test/test_other_exn.ml | $stdlib -build test/test_pack.cmi test/test_pack.cmj : cc test/test_pack.ml | $stdlib -build test/test_per.cmi test/test_per.cmj : cc test/test_per.ml | $stdlib -build test/test_pervasive.cmi test/test_pervasive.cmj : cc test/test_pervasive.ml | $stdlib -build test/test_pervasives2.cmi test/test_pervasives2.cmj : cc test/test_pervasives2.ml | $stdlib -build test/test_pervasives3.cmi test/test_pervasives3.cmj : cc test/test_pervasives3.ml | $stdlib -build test/test_primitive.cmi test/test_primitive.cmj : cc test/test_primitive.ml | $stdlib -build test/test_promise_bind.cmi test/test_promise_bind.cmj : cc test/test_promise_bind.ml | test/promise.cmj $stdlib -build test/test_ramification.cmi test/test_ramification.cmj : cc test/test_ramification.ml | $stdlib -build test/test_react.cmi test/test_react.cmj : cc test/test_react.ml | $stdlib -build test/test_react_case.cmi test/test_react_case.cmj : cc test/test_react_case.ml | $stdlib -build test/test_regex.cmi test/test_regex.cmj : cc test/test_regex.ml | $stdlib -build test/test_require.cmi test/test_require.cmj : cc test/test_require.ml | $stdlib -build test/test_runtime_encoding.cmi test/test_runtime_encoding.cmj : cc test/test_runtime_encoding.ml | $stdlib -build test/test_scope.cmi test/test_scope.cmj : cc test/test_scope.ml | $stdlib -build test/test_seq.cmi test/test_seq.cmj : cc test/test_seq.ml | $stdlib -build test/test_set.cmi test/test_set.cmj : cc test/test_set.ml | $stdlib -build test/test_side_effect_functor.cmi test/test_side_effect_functor.cmj : cc test/test_side_effect_functor.ml | $stdlib -build test/test_simple_include.cmi test/test_simple_include.cmj : cc test/test_simple_include.ml | $stdlib -build test/test_simple_obj.cmi test/test_simple_obj.cmj : cc test/test_simple_obj.ml | $stdlib -build test/test_simple_pattern_match.cmi test/test_simple_pattern_match.cmj : cc test/test_simple_pattern_match.ml | $stdlib -build test/test_simple_ref.cmi test/test_simple_ref.cmj : cc test/test_simple_ref.ml | $stdlib -build test/test_simple_tailcall.cmi test/test_simple_tailcall.cmj : cc test/test_simple_tailcall.ml | $stdlib -build test/test_small.cmi test/test_small.cmj : cc test/test_small.ml | $stdlib -build test/test_sprintf.cmi test/test_sprintf.cmj : cc test/test_sprintf.ml | $stdlib -build test/test_stack.cmi test/test_stack.cmj : cc test/test_stack.ml | $stdlib -build test/test_static_catch_ident.cmi test/test_static_catch_ident.cmj : cc test/test_static_catch_ident.ml | $stdlib -build test/test_string.cmi test/test_string.cmj : cc test/test_string.ml | $stdlib -build test/test_string_case.cmi test/test_string_case.cmj : cc test/test_string_case.ml | $stdlib -build test/test_string_const.cmi test/test_string_const.cmj : cc test/test_string_const.ml | $stdlib -build test/test_string_map.cmi test/test_string_map.cmj : cc test/test_string_map.ml | $stdlib -build test/test_string_switch.cmi test/test_string_switch.cmj : cc test/test_string_switch.ml | $stdlib -build test/test_switch.cmi test/test_switch.cmj : cc test/test_switch.ml | $stdlib -build test/test_trywith.cmi test/test_trywith.cmj : cc test/test_trywith.ml | $stdlib -build test/test_tuple.cmi test/test_tuple.cmj : cc test/test_tuple.ml | $stdlib -build test/test_tuple_destructring.cmi test/test_tuple_destructring.cmj : cc test/test_tuple_destructring.ml | $stdlib -build test/test_type_based_arity.cmi test/test_type_based_arity.cmj : cc test/test_type_based_arity.ml | test/abstract_type.cmj $stdlib -build test/test_u.cmi test/test_u.cmj : cc test/test_u.ml | $stdlib -build test/test_unsafe_cmp.cmi test/test_unsafe_cmp.cmj : cc test/test_unsafe_cmp.ml | $stdlib -build test/test_unsafe_obj_ffi.cmj : cc_cmi test/test_unsafe_obj_ffi.ml | test/test_unsafe_obj_ffi.cmi $stdlib -build test/test_unsafe_obj_ffi.cmi : cc test/test_unsafe_obj_ffi.mli | $stdlib -build test/test_unsafe_obj_ffi_ppx.cmj : cc_cmi test/test_unsafe_obj_ffi_ppx.ml | test/test_unsafe_obj_ffi_ppx.cmi $stdlib -build test/test_unsafe_obj_ffi_ppx.cmi : cc test/test_unsafe_obj_ffi_ppx.mli | $stdlib -build test/test_unsupported_primitive.cmi test/test_unsupported_primitive.cmj : cc test/test_unsupported_primitive.ml | $stdlib -build test/test_while_closure.cmi test/test_while_closure.cmj : cc test/test_while_closure.ml | $stdlib -build test/test_while_side_effect.cmi test/test_while_side_effect.cmj : cc test/test_while_side_effect.ml | $stdlib -build test/test_zero_nullable.cmi test/test_zero_nullable.cmj : cc test/test_zero_nullable.ml | test/mt.cmj $stdlib -build test/testing.cmj : cc_cmi test/testing.ml | test/testing.cmi $stdlib -build test/testing.cmi : cc test/testing.mli | $stdlib -build test/tfloat_record_test.cmi test/tfloat_record_test.cmj : cc test/tfloat_record_test.ml | test/float_array.cmj test/float_record.cmj test/mt.cmj test/mt_global.cmj $stdlib -build test/ticker.cmi test/ticker.cmj : cc test/ticker.ml | $stdlib -build test/to_string_test.cmi test/to_string_test.cmj : cc test/to_string_test.ml | test/mt.cmj $stdlib -build test/topsort_test.cmi test/topsort_test.cmj : cc test/topsort_test.ml | $stdlib -build test/tramp_fib.cmi test/tramp_fib.cmj : cc test/tramp_fib.ml | test/mt.cmj $stdlib -build test/tscanf_test.cmi test/tscanf_test.cmj : cc test/tscanf_test.ml | test/mt.cmj test/mt_global.cmj test/nativeint.cmj test/testing.cmj $stdlib -build test/tuple_alloc.cmi test/tuple_alloc.cmj : cc test/tuple_alloc.ml | $stdlib -build test/type_disambiguate.cmi test/type_disambiguate.cmj : cc test/type_disambiguate.ml | $stdlib -build test/typeof_test.cmi test/typeof_test.cmj : cc test/typeof_test.ml | test/mt.cmj $stdlib -build test/ui_defs.cmi : cc test/ui_defs.mli | $stdlib -build test/unboxed_attribute_test.cmi test/unboxed_attribute_test.cmj : cc test/unboxed_attribute_test.ml | test/mt.cmj $stdlib -build test/unboxed_use_case.cmj : cc_cmi test/unboxed_use_case.ml | test/unboxed_use_case.cmi $stdlib -build test/unboxed_use_case.cmi : cc test/unboxed_use_case.mli | $stdlib -build test/uncurry_glob_test.cmi test/uncurry_glob_test.cmj : cc test/uncurry_glob_test.ml | $stdlib -build test/uncurry_method.cmi test/uncurry_method.cmj : cc test/uncurry_method.ml | $stdlib -build test/uncurry_test.cmj : cc_cmi test/uncurry_test.ml | test/uncurry_test.cmi $stdlib -build test/uncurry_test.cmi : cc test/uncurry_test.mli | $stdlib -build test/undef_regression2_test.cmi test/undef_regression2_test.cmj : cc test/undef_regression2_test.ml | test/mt.cmj $stdlib -build test/undef_regression_test.cmi test/undef_regression_test.cmj : cc test/undef_regression_test.ml | $stdlib -build test/unicode_type_error.cmi test/unicode_type_error.cmj : cc test/unicode_type_error.ml | $stdlib -build test/unit_undefined_test.cmi test/unit_undefined_test.cmj : cc test/unit_undefined_test.ml | test/mt.cmj $stdlib -build test/unitest_string.cmi test/unitest_string.cmj : cc test/unitest_string.ml | $stdlib -build test/unsafe_full_apply_primitive.cmi test/unsafe_full_apply_primitive.cmj : cc test/unsafe_full_apply_primitive.ml | $stdlib -build test/unsafe_obj_external.cmi test/unsafe_obj_external.cmj : cc test/unsafe_obj_external.ml | $stdlib -build test/unsafe_ppx_test.cmi test/unsafe_ppx_test.cmj : cc test/unsafe_ppx_test.ml | test/ffi_js_test.cmj test/mt.cmj $stdlib -build test/unsafe_this.cmj : cc_cmi test/unsafe_this.ml | test/unsafe_this.cmi $stdlib -build test/unsafe_this.cmi : cc test/unsafe_this.mli | $stdlib -build test/update_record_test.cmi test/update_record_test.cmj : cc test/update_record_test.ml | test/mt.cmj $stdlib -build test/utf8_decode_test.cmi test/utf8_decode_test.cmj : cc test/utf8_decode_test.ml | test/mt.cmj $stdlib -build test/variant.cmi test/variant.cmj : cc test/variant.ml | $stdlib -build test/watch_test.cmi test/watch_test.cmj : cc test/watch_test.ml | $stdlib -build test/webpack_config.cmi test/webpack_config.cmj : cc test/webpack_config.ml | $stdlib +o test/arith_lexer.ml : mll test/arith_lexer.mll +o test/number_lexer.ml : mll test/number_lexer.mll +o test/simple_lexer_test.ml : mll test/simple_lexer_test.mll +o test/406_primitive_test.cmi test/406_primitive_test.cmj : cc test/406_primitive_test.ml | test/mt.cmj $stdlib +o test/a.cmi test/a.cmj : cc test/a.ml | test/test_order.cmj $stdlib +o test/a_filename_test.cmi test/a_filename_test.cmj : cc test/a_filename_test.ml | test/ext_filename_test.cmj test/mt.cmj $stdlib +o test/a_list_test.cmi test/a_list_test.cmj : cc test/a_list_test.ml | test/ext_list_test.cmj test/mt.cmj $stdlib +o test/a_recursive_type.cmj : cc_cmi test/a_recursive_type.ml | test/a_recursive_type.cmi $stdlib +o test/a_recursive_type.cmi : cc test/a_recursive_type.mli | $stdlib +o test/a_scope_bug.cmi test/a_scope_bug.cmj : cc test/a_scope_bug.ml | $stdlib +o test/a_string_test.cmi test/a_string_test.cmj : cc test/a_string_test.ml | test/ext_string_test.cmj test/mt.cmj $stdlib +o test/abstract_type.cmj : cc_cmi test/abstract_type.ml | test/abstract_type.cmi $stdlib +o test/abstract_type.cmi : cc test/abstract_type.mli | test/mt.cmi $stdlib +o test/adt_optimize_test.cmi test/adt_optimize_test.cmj : cc test/adt_optimize_test.ml | $stdlib +o test/alias_test.cmj : cc_cmi test/alias_test.ml | test/alias_test.cmi $stdlib +o test/alias_test.cmi : cc test/alias_test.mli | $stdlib +o test/and_or_tailcall_test.cmi test/and_or_tailcall_test.cmj : cc test/and_or_tailcall_test.ml | test/mt.cmj $stdlib +o test/app_root_finder.cmi test/app_root_finder.cmj : cc test/app_root_finder.ml | $stdlib +o test/argv_test.cmi test/argv_test.cmj : cc test/argv_test.ml | $stdlib +o test/ari_regress_test.cmj : cc_cmi test/ari_regress_test.ml | test/ari_regress_test.cmi test/mt.cmj $stdlib +o test/ari_regress_test.cmi : cc test/ari_regress_test.mli | $stdlib +o test/arith_lexer.cmi test/arith_lexer.cmj : cc test/arith_lexer.ml | test/arith_parser.cmj test/arith_syntax.cmj $stdlib +o test/arith_parser.cmi test/arith_parser.cmj : cc test/arith_parser.ml | test/arith_syntax.cmj $stdlib +o test/arith_syntax.cmi test/arith_syntax.cmj : cc test/arith_syntax.ml | $stdlib +o test/arity.cmi test/arity.cmj : cc test/arity.re | $stdlib +o test/arity_deopt.cmi test/arity_deopt.cmj : cc test/arity_deopt.ml | test/mt.cmj $stdlib +o test/arity_infer.cmi test/arity_infer.cmj : cc test/arity_infer.ml | $stdlib +o test/arity_ml.cmi test/arity_ml.cmj : cc test/arity_ml.ml | $stdlib +o test/array_data_util.cmi test/array_data_util.cmj : cc test/array_data_util.ml | $stdlib +o test/array_safe_get.cmi test/array_safe_get.cmj : cc test/array_safe_get.ml | $stdlib +o test/array_subtle_test.cmi test/array_subtle_test.cmj : cc test/array_subtle_test.ml | test/mt.cmj $stdlib +o test/array_test.cmj : cc_cmi test/array_test.ml | test/array_test.cmi test/mt.cmj $stdlib +o test/array_test.cmi : cc test/array_test.mli | $stdlib +o test/ast_abstract_test.cmi test/ast_abstract_test.cmj : cc test/ast_abstract_test.ml | test/mt.cmj $stdlib +o test/ast_js_mapper_poly_test.cmi test/ast_js_mapper_poly_test.cmj : cc test/ast_js_mapper_poly_test.ml | test/mt.cmj $stdlib +o test/ast_js_mapper_test.cmj : cc_cmi test/ast_js_mapper_test.ml | test/ast_js_mapper_test.cmi $stdlib +o test/ast_js_mapper_test.cmi : cc test/ast_js_mapper_test.mli | $stdlib +o test/ast_mapper_defensive_test.cmi test/ast_mapper_defensive_test.cmj : cc test/ast_mapper_defensive_test.ml | test/mt.cmj $stdlib +o test/ast_mapper_unused_warning_test.cmi test/ast_mapper_unused_warning_test.cmj : cc test/ast_mapper_unused_warning_test.ml | $stdlib +o test/async_ideas.cmi test/async_ideas.cmj : cc test/async_ideas.ml | $stdlib +o test/attr_test.cmi test/attr_test.cmj : cc test/attr_test.ml | $stdlib +o test/b.cmi test/b.cmj : cc test/b.ml | $stdlib +o test/bal_set_mini.cmi test/bal_set_mini.cmj : cc test/bal_set_mini.ml | $stdlib +o test/bang_primitive.cmi test/bang_primitive.cmj : cc test/bang_primitive.ml | $stdlib +o test/basic_module_test.cmj : cc_cmi test/basic_module_test.ml | test/basic_module_test.cmi test/mt.cmj test/mt_global.cmj test/offset.cmj test/pr6726.cmj $stdlib +o test/basic_module_test.cmi : cc test/basic_module_test.mli | $stdlib +o test/bb.cmi test/bb.cmj : cc test/bb.ml | $stdlib +o test/bdd.cmi test/bdd.cmj : cc test/bdd.ml | $stdlib +o test/belt_internal_test.cmi test/belt_internal_test.cmj : cc test/belt_internal_test.ml | $stdlib +o test/belt_result_alias_test.cmi test/belt_result_alias_test.cmj : cc test/belt_result_alias_test.ml | $stdlib +o test/bench.cmi test/bench.cmj : cc test/bench.ml | $stdlib +o test/big_enum.cmi test/big_enum.cmj : cc test/big_enum.ml | $stdlib +o test/big_polyvar_test.cmi test/big_polyvar_test.cmj : cc test/big_polyvar_test.ml | $stdlib +o test/block_alias_test.cmi test/block_alias_test.cmj : cc test/block_alias_test.ml | test/mt.cmj $stdlib +o test/boolean_test.cmi test/boolean_test.cmj : cc test/boolean_test.ml | test/mt.cmj test/test_bool_equal.cmj $stdlib +o test/bs_MapInt_test.cmi test/bs_MapInt_test.cmj : cc test/bs_MapInt_test.ml | $stdlib +o test/bs_abstract_test.cmj : cc_cmi test/bs_abstract_test.ml | test/bs_abstract_test.cmi $stdlib +o test/bs_abstract_test.cmi : cc test/bs_abstract_test.mli | $stdlib +o test/bs_array_test.cmi test/bs_array_test.cmj : cc test/bs_array_test.ml | test/mt.cmj $stdlib +o test/bs_auto_uncurry.cmi test/bs_auto_uncurry.cmj : cc test/bs_auto_uncurry.ml | $stdlib +o test/bs_auto_uncurry_test.cmi test/bs_auto_uncurry_test.cmj : cc test/bs_auto_uncurry_test.ml | test/mt.cmj $stdlib +o test/bs_float_test.cmi test/bs_float_test.cmj : cc test/bs_float_test.ml | test/mt.cmj $stdlib +o test/bs_hashmap_test.cmi test/bs_hashmap_test.cmj : cc test/bs_hashmap_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_hashset_int_test.cmi test/bs_hashset_int_test.cmj : cc test/bs_hashset_int_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_hashtbl_string_test.cmi test/bs_hashtbl_string_test.cmj : cc test/bs_hashtbl_string_test.ml | $stdlib +o test/bs_ignore_effect.cmi test/bs_ignore_effect.cmj : cc test/bs_ignore_effect.ml | test/mt.cmj $stdlib +o test/bs_ignore_test.cmi test/bs_ignore_test.cmj : cc test/bs_ignore_test.ml | $stdlib +o test/bs_int_test.cmi test/bs_int_test.cmj : cc test/bs_int_test.ml | test/mt.cmj $stdlib +o test/bs_list_test.cmi test/bs_list_test.cmj : cc test/bs_list_test.ml | test/mt.cmj $stdlib +o test/bs_map_set_dict_test.cmi test/bs_map_set_dict_test.cmj : cc test/bs_map_set_dict_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_map_test.cmi test/bs_map_test.cmj : cc test/bs_map_test.ml | test/mt.cmj $stdlib +o test/bs_min_max_test.cmi test/bs_min_max_test.cmj : cc test/bs_min_max_test.ml | test/mt.cmj $stdlib +o test/bs_mutable_set_test.cmi test/bs_mutable_set_test.cmj : cc test/bs_mutable_set_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_node_string_buffer_test.cmi test/bs_node_string_buffer_test.cmj : cc test/bs_node_string_buffer_test.ml | $stdlib +o test/bs_poly_map_test.cmi test/bs_poly_map_test.cmj : cc test/bs_poly_map_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_poly_mutable_map_test.cmi test/bs_poly_mutable_map_test.cmj : cc test/bs_poly_mutable_map_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_poly_mutable_set_test.cmi test/bs_poly_mutable_set_test.cmj : cc test/bs_poly_mutable_set_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_poly_set_test.cmi test/bs_poly_set_test.cmj : cc test/bs_poly_set_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_qualified.cmi test/bs_qualified.cmj : cc test/bs_qualified.ml | $stdlib +o test/bs_queue_test.cmi test/bs_queue_test.cmj : cc test/bs_queue_test.ml | test/mt.cmj $stdlib +o test/bs_rbset_int_bench.cmi test/bs_rbset_int_bench.cmj : cc test/bs_rbset_int_bench.ml | test/rbset.cmj $stdlib +o test/bs_rest_test.cmi test/bs_rest_test.cmj : cc test/bs_rest_test.ml | $stdlib +o test/bs_set_bench.cmi test/bs_set_bench.cmj : cc test/bs_set_bench.ml | $stdlib +o test/bs_set_int_test.cmi test/bs_set_int_test.cmj : cc test/bs_set_int_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_sort_test.cmi test/bs_sort_test.cmj : cc test/bs_sort_test.ml | test/array_data_util.cmj test/mt.cmj $stdlib +o test/bs_splice_partial.cmi test/bs_splice_partial.cmj : cc test/bs_splice_partial.ml | $stdlib +o test/bs_stack_test.cmi test/bs_stack_test.cmj : cc test/bs_stack_test.ml | test/mt.cmj $stdlib +o test/bs_string_test.cmi test/bs_string_test.cmj : cc test/bs_string_test.ml | test/mt.cmj $stdlib +o test/bs_unwrap_test.cmi test/bs_unwrap_test.cmj : cc test/bs_unwrap_test.ml | $stdlib +o test/buffer_test.cmi test/buffer_test.cmj : cc test/buffer_test.ml | test/mt.cmj $stdlib +o test/bytes_split_gpr_743_test.cmi test/bytes_split_gpr_743_test.cmj : cc test/bytes_split_gpr_743_test.ml | test/mt.cmj $stdlib +o test/caml_compare_test.cmi test/caml_compare_test.cmj : cc test/caml_compare_test.ml | test/mt.cmj $stdlib +o test/caml_format_test.cmi test/caml_format_test.cmj : cc test/caml_format_test.ml | test/mt.cmj $stdlib +o test/caml_sys_poly_fill_test.cmi test/caml_sys_poly_fill_test.cmj : cc test/caml_sys_poly_fill_test.ml | test/mt.cmj $stdlib +o test/chain_code_test.cmi test/chain_code_test.cmj : cc test/chain_code_test.ml | test/mt.cmj $stdlib +o test/chn_test.cmi test/chn_test.cmj : cc test/chn_test.ml | test/mt.cmj $stdlib +o test/class3_test.cmi test/class3_test.cmj : cc test/class3_test.ml | test/mt.cmj $stdlib +o test/class4_test.cmi test/class4_test.cmj : cc test/class4_test.ml | test/mt.cmj $stdlib +o test/class5_test.cmi test/class5_test.cmj : cc test/class5_test.ml | test/mt.cmj $stdlib +o test/class6_test.cmi test/class6_test.cmj : cc test/class6_test.ml | test/mt.cmj $stdlib +o test/class7_test.cmi test/class7_test.cmj : cc test/class7_test.ml | test/mt.cmj $stdlib +o test/class8_test.cmi test/class8_test.cmj : cc test/class8_test.ml | test/mt.cmj $stdlib +o test/class_fib_open_recursion_test.cmi test/class_fib_open_recursion_test.cmj : cc test/class_fib_open_recursion_test.ml | test/mt.cmj $stdlib +o test/class_repr.cmi test/class_repr.cmj : cc test/class_repr.ml | $stdlib +o test/class_setter_getter.cmj : cc_cmi test/class_setter_getter.ml | test/class_setter_getter.cmi $stdlib +o test/class_setter_getter.cmi : cc test/class_setter_getter.mli | $stdlib +o test/class_test.cmi test/class_test.cmj : cc test/class_test.ml | test/mt.cmj $stdlib +o test/class_type_ffi_test.cmi test/class_type_ffi_test.cmj : cc test/class_type_ffi_test.ml | $stdlib +o test/compare_test.cmi test/compare_test.cmj : cc test/compare_test.ml | $stdlib +o test/complex_if_test.cmi test/complex_if_test.cmj : cc test/complex_if_test.ml | test/mt.cmj $stdlib +o test/complex_test.cmi test/complex_test.cmj : cc test/complex_test.ml | test/mt.cmj $stdlib +o test/complex_while_loop.cmi test/complex_while_loop.cmj : cc test/complex_while_loop.ml | $stdlib +o test/condition_compilation_test.cmi test/condition_compilation_test.cmj : cc test/condition_compilation_test.ml | test/mt.cmj $stdlib +o test/config1_test.cmi test/config1_test.cmj : cc test/config1_test.ml | $stdlib +o test/config2_test.cmj : cc_cmi test/config2_test.ml | test/config2_test.cmi $stdlib +o test/config2_test.cmi : cc test/config2_test.mli | $stdlib +o test/console_log_test.cmi test/console_log_test.cmj : cc test/console_log_test.ml | $stdlib +o test/const_block_test.cmj : cc_cmi test/const_block_test.ml | test/const_block_test.cmi test/mt.cmj $stdlib +o test/const_block_test.cmi : cc test/const_block_test.mli | $stdlib +o test/const_defs.cmi test/const_defs.cmj : cc test/const_defs.ml | $stdlib +o test/const_defs_test.cmi test/const_defs_test.cmj : cc test/const_defs_test.ml | test/const_defs.cmj $stdlib +o test/const_test.cmi test/const_test.cmj : cc test/const_test.ml | $stdlib +o test/cont_int_fold_test.cmi test/cont_int_fold_test.cmj : cc test/cont_int_fold_test.ml | $stdlib +o test/cps_test.cmi test/cps_test.cmj : cc test/cps_test.ml | test/mt.cmj $stdlib +o test/cross_module_inline_test.cmi test/cross_module_inline_test.cmj : cc test/cross_module_inline_test.ml | test/test_char.cmj $stdlib +o test/custom_error_test.cmi test/custom_error_test.cmj : cc test/custom_error_test.ml | $stdlib +o test/debug_keep_test.cmi test/debug_keep_test.cmj : cc test/debug_keep_test.ml | $stdlib +o test/debug_mode_value.cmi test/debug_mode_value.cmj : cc test/debug_mode_value.ml | $stdlib +o test/debug_tmp.cmi test/debug_tmp.cmj : cc test/debug_tmp.ml | $stdlib +o test/debugger_test.cmi test/debugger_test.cmj : cc test/debugger_test.ml | $stdlib +o test/default_export_test.cmi test/default_export_test.cmj : cc test/default_export_test.ml | $stdlib +o test/defunctor_make_test.cmi test/defunctor_make_test.cmj : cc test/defunctor_make_test.ml | $stdlib +o test/demo.cmi test/demo.cmj : cc test/demo.ml | test/demo_binding.cmj $stdlib +o test/demo_binding.cmi test/demo_binding.cmj : cc test/demo_binding.ml | $stdlib +o test/demo_int_map.cmj : cc_cmi test/demo_int_map.ml | test/demo_int_map.cmi $stdlib +o test/demo_int_map.cmi : cc test/demo_int_map.mli | $stdlib +o test/demo_page.cmi test/demo_page.cmj : cc test/demo_page.ml | $stdlib +o test/demo_pipe.cmi test/demo_pipe.cmj : cc test/demo_pipe.ml | $stdlib +o test/derive_dyntype.cmi test/derive_dyntype.cmj : cc test/derive_dyntype.ml | $stdlib +o test/derive_projector_test.cmj : cc_cmi test/derive_projector_test.ml | test/derive_projector_test.cmi $stdlib +o test/derive_projector_test.cmi : cc test/derive_projector_test.mli | $stdlib +o test/derive_type_test.cmi test/derive_type_test.cmj : cc test/derive_type_test.ml | $stdlib +o test/digest_test.cmi test/digest_test.cmj : cc test/digest_test.ml | test/ext_array_test.cmj test/mt.cmj $stdlib +o test/div_by_zero_test.cmi test/div_by_zero_test.cmj : cc test/div_by_zero_test.ml | test/mt.cmj $stdlib +o test/dollar_escape_test.cmi test/dollar_escape_test.cmj : cc test/dollar_escape_test.ml | test/mt.cmj $stdlib +o test/earger_curry_test.cmi test/earger_curry_test.cmj : cc test/earger_curry_test.ml | test/mt.cmj $stdlib +o test/effect.cmi test/effect.cmj : cc test/effect.ml | $stdlib +o test/empty_obj.cmi test/empty_obj.cmj : cc test/empty_obj.ml | $stdlib +o test/epsilon_test.cmi test/epsilon_test.cmj : cc test/epsilon_test.ml | test/mt.cmj $stdlib +o test/equal_box_test.cmi test/equal_box_test.cmj : cc test/equal_box_test.ml | test/mt.cmj $stdlib +o test/equal_exception_test.cmi test/equal_exception_test.cmj : cc test/equal_exception_test.ml | test/mt.cmj $stdlib +o test/equal_test.cmi test/equal_test.cmj : cc test/equal_test.ml | $stdlib +o test/es6_module_test.cmi test/es6_module_test.cmj : cc test/es6_module_test.ml | test/mt.cmj $stdlib +o test/escape_esmodule.cmi test/escape_esmodule.cmj : cc test/escape_esmodule.ml | $stdlib +o test/esmodule_ref.cmi test/esmodule_ref.cmj : cc test/esmodule_ref.ml | test/escape_esmodule.cmj $stdlib +o test/event_ffi.cmi test/event_ffi.cmj : cc test/event_ffi.ml | $stdlib +o test/exception_alias.cmi test/exception_alias.cmj : cc test/exception_alias.ml | $stdlib +o test/exception_def.cmi test/exception_def.cmj : cc test/exception_def.ml | test/mt.cmj test/test_other_exn.cmj $stdlib +o test/exception_raise_test.cmi test/exception_raise_test.cmj : cc test/exception_raise_test.ml | test/mt.cmj $stdlib +o test/exception_rebind_test.cmi test/exception_rebind_test.cmj : cc test/exception_rebind_test.ml | test/exception_def.cmj $stdlib +o test/exception_rebound_err_test.cmi test/exception_rebound_err_test.cmj : cc test/exception_rebound_err_test.ml | test/mt.cmj $stdlib +o test/exception_repr_test.cmi test/exception_repr_test.cmj : cc test/exception_repr_test.ml | test/exception_def.cmj test/mt.cmj $stdlib +o test/exception_value_test.cmi test/exception_value_test.cmj : cc test/exception_value_test.ml | $stdlib +o test/exn_error_pattern.cmi test/exn_error_pattern.cmj : cc test/exn_error_pattern.ml | test/mt.cmj $stdlib +o test/export_keyword.cmi test/export_keyword.cmj : cc test/export_keyword.ml | $stdlib +o test/ext_array_test.cmi test/ext_array_test.cmj : cc test/ext_array_test.ml | $stdlib +o test/ext_bytes_test.cmi test/ext_bytes_test.cmj : cc test/ext_bytes_test.ml | test/mt.cmj $stdlib +o test/ext_filename_test.cmi test/ext_filename_test.cmj : cc test/ext_filename_test.ml | test/ext_pervasives_test.cmj test/ext_string_test.cmj test/test_literals.cmj $stdlib +o test/ext_list_test.cmi test/ext_list_test.cmj : cc test/ext_list_test.ml | test/ext_string_test.cmj $stdlib +o test/ext_log_test.cmi test/ext_log_test.cmj : cc test/ext_log_test.ml | $stdlib +o test/ext_pervasives_test.cmj : cc_cmi test/ext_pervasives_test.ml | test/ext_pervasives_test.cmi $stdlib +o test/ext_pervasives_test.cmi : cc test/ext_pervasives_test.mli | $stdlib +o test/ext_string_test.cmi test/ext_string_test.cmj : cc test/ext_string_test.ml | test/ext_bytes_test.cmj $stdlib +o test/ext_sys_test.cmj : cc_cmi test/ext_sys_test.ml | test/ext_sys_test.cmi $stdlib +o test/ext_sys_test.cmi : cc test/ext_sys_test.mli | $stdlib +o test/extensible_variant_test.cmi test/extensible_variant_test.cmj : cc test/extensible_variant_test.ml | test/mt.cmj $stdlib +o test/external_polyfill_test.cmi test/external_polyfill_test.cmj : cc test/external_polyfill_test.ml | test/mt.cmj $stdlib +o test/external_ppx.cmi test/external_ppx.cmj : cc test/external_ppx.ml | $stdlib +o test/fail_comp.cmi test/fail_comp.cmj : cc test/fail_comp.ml | $stdlib +o test/ffi_arity_test.cmi test/ffi_arity_test.cmj : cc test/ffi_arity_test.ml | test/mt.cmj $stdlib +o test/ffi_array_test.cmi test/ffi_array_test.cmj : cc test/ffi_array_test.ml | test/mt.cmj $stdlib +o test/ffi_js_test.cmi test/ffi_js_test.cmj : cc test/ffi_js_test.ml | test/mt.cmj $stdlib +o test/ffi_splice_test.cmi test/ffi_splice_test.cmj : cc test/ffi_splice_test.ml | test/mt.cmj $stdlib +o test/ffi_test.cmi test/ffi_test.cmj : cc test/ffi_test.ml | $stdlib +o test/fib.cmi test/fib.cmj : cc test/fib.ml | $stdlib +o test/flattern_order_test.cmi test/flattern_order_test.cmj : cc test/flattern_order_test.ml | $stdlib +o test/flexible_array_test.cmi test/flexible_array_test.cmj : cc test/flexible_array_test.ml | $stdlib +o test/float_array.cmi test/float_array.cmj : cc test/float_array.ml | $stdlib +o test/float_of_bits_test.cmi test/float_of_bits_test.cmj : cc test/float_of_bits_test.ml | test/mt.cmj $stdlib +o test/float_record.cmj : cc_cmi test/float_record.ml | test/float_record.cmi $stdlib +o test/float_record.cmi : cc test/float_record.mli | $stdlib +o test/float_test.cmi test/float_test.cmj : cc test/float_test.ml | test/mt.cmj test/mt_global.cmj $stdlib +o test/floatarray_test.cmi test/floatarray_test.cmj : cc test/floatarray_test.ml | test/mt.cmj $stdlib +o test/flow_parser_reg_test.cmj : cc_cmi test/flow_parser_reg_test.ml | test/flow_parser_reg_test.cmi test/mt.cmj $stdlib +o test/flow_parser_reg_test.cmi : cc test/flow_parser_reg_test.mli | $stdlib +o test/for_loop_test.cmi test/for_loop_test.cmj : cc test/for_loop_test.ml | test/mt.cmj $stdlib +o test/for_side_effect_test.cmi test/for_side_effect_test.cmj : cc test/for_side_effect_test.ml | test/mt.cmj $stdlib +o test/format_regression.cmi test/format_regression.cmj : cc test/format_regression.ml | $stdlib +o test/format_test.cmi test/format_test.cmj : cc test/format_test.ml | test/mt.cmj $stdlib +o test/fs_test.cmi test/fs_test.cmj : cc test/fs_test.ml | test/mt.cmj $stdlib +o test/fun_pattern_match.cmi test/fun_pattern_match.cmj : cc test/fun_pattern_match.ml | $stdlib +o test/functor_app_test.cmi test/functor_app_test.cmj : cc test/functor_app_test.ml | test/functor_def.cmj test/functor_inst.cmj test/mt.cmj $stdlib +o test/functor_def.cmi test/functor_def.cmj : cc test/functor_def.ml | $stdlib +o test/functor_ffi.cmi test/functor_ffi.cmj : cc test/functor_ffi.ml | $stdlib +o test/functor_inst.cmi test/functor_inst.cmj : cc test/functor_inst.ml | $stdlib +o test/functors.cmi test/functors.cmj : cc test/functors.ml | $stdlib +o test/gbk.cmi test/gbk.cmj : cc test/gbk.ml | $stdlib +o test/genlex_test.cmi test/genlex_test.cmj : cc test/genlex_test.ml | test/mt.cmj $stdlib +o test/gentTypeReTest.cmi test/gentTypeReTest.cmj : cc test/gentTypeReTest.re | $stdlib +o test/global_exception_regression_test.cmi test/global_exception_regression_test.cmj : cc test/global_exception_regression_test.ml | test/mt.cmj $stdlib +o test/global_mangles.cmi test/global_mangles.cmj : cc test/global_mangles.ml | $stdlib +o test/global_module_alias_test.cmi test/global_module_alias_test.cmj : cc test/global_module_alias_test.ml | test/mt.cmj $stdlib +o test/google_closure_test.cmi test/google_closure_test.cmj : cc test/google_closure_test.ml | test/mt.cmj test/test_google_closure.cmj $stdlib +o test/gpr496_test.cmi test/gpr496_test.cmj : cc test/gpr496_test.ml | test/mt.cmj $stdlib +o test/gpr_1063_test.cmi test/gpr_1063_test.cmj : cc test/gpr_1063_test.ml | $stdlib +o test/gpr_1072.cmi test/gpr_1072.cmj : cc test/gpr_1072.ml | $stdlib +o test/gpr_1072_reg.cmi test/gpr_1072_reg.cmj : cc test/gpr_1072_reg.ml | $stdlib +o test/gpr_1150.cmi test/gpr_1150.cmj : cc test/gpr_1150.ml | $stdlib +o test/gpr_1154_test.cmi test/gpr_1154_test.cmj : cc test/gpr_1154_test.ml | test/mt.cmj $stdlib +o test/gpr_1170.cmi test/gpr_1170.cmj : cc test/gpr_1170.ml | $stdlib +o test/gpr_1240_missing_unbox.cmi test/gpr_1240_missing_unbox.cmj : cc test/gpr_1240_missing_unbox.ml | $stdlib +o test/gpr_1245_test.cmi test/gpr_1245_test.cmj : cc test/gpr_1245_test.ml | $stdlib +o test/gpr_1268.cmi test/gpr_1268.cmj : cc test/gpr_1268.ml | $stdlib +o test/gpr_1285_test.cmi test/gpr_1285_test.cmj : cc test/gpr_1285_test.ml | test/mt.cmj $stdlib +o test/gpr_1409_test.cmi test/gpr_1409_test.cmj : cc test/gpr_1409_test.ml | test/mt.cmj test/string_set.cmj $stdlib +o test/gpr_1423_app_test.cmi test/gpr_1423_app_test.cmj : cc test/gpr_1423_app_test.ml | test/gpr_1423_nav.cmj test/mt.cmj $stdlib +o test/gpr_1423_nav.cmi test/gpr_1423_nav.cmj : cc test/gpr_1423_nav.ml | $stdlib +o test/gpr_1438.cmi test/gpr_1438.cmj : cc test/gpr_1438.ml | $stdlib +o test/gpr_1481.cmi test/gpr_1481.cmj : cc test/gpr_1481.ml | $stdlib +o test/gpr_1484.cmi test/gpr_1484.cmj : cc test/gpr_1484.ml | $stdlib +o test/gpr_1501_test.cmi test/gpr_1501_test.cmj : cc test/gpr_1501_test.ml | test/mt.cmj $stdlib +o test/gpr_1503_test.cmi test/gpr_1503_test.cmj : cc test/gpr_1503_test.ml | test/mt.cmj $stdlib +o test/gpr_1539_test.cmi test/gpr_1539_test.cmj : cc test/gpr_1539_test.ml | $stdlib +o test/gpr_1600_test.cmi test/gpr_1600_test.cmj : cc test/gpr_1600_test.ml | $stdlib +o test/gpr_1658_test.cmi test/gpr_1658_test.cmj : cc test/gpr_1658_test.ml | test/mt.cmj $stdlib +o test/gpr_1667_test.cmi test/gpr_1667_test.cmj : cc test/gpr_1667_test.ml | test/mt.cmj $stdlib +o test/gpr_1692_test.cmi test/gpr_1692_test.cmj : cc test/gpr_1692_test.ml | $stdlib +o test/gpr_1698_test.cmi test/gpr_1698_test.cmj : cc test/gpr_1698_test.ml | $stdlib +o test/gpr_1701_test.cmi test/gpr_1701_test.cmj : cc test/gpr_1701_test.ml | $stdlib +o test/gpr_1716_test.cmi test/gpr_1716_test.cmj : cc test/gpr_1716_test.ml | test/mt.cmj $stdlib +o test/gpr_1717_test.cmi test/gpr_1717_test.cmj : cc test/gpr_1717_test.ml | $stdlib +o test/gpr_1728_test.cmi test/gpr_1728_test.cmj : cc test/gpr_1728_test.ml | test/mt.cmj $stdlib +o test/gpr_1749_test.cmi test/gpr_1749_test.cmj : cc test/gpr_1749_test.ml | test/mt.cmj $stdlib +o test/gpr_1759_test.cmi test/gpr_1759_test.cmj : cc test/gpr_1759_test.ml | $stdlib +o test/gpr_1760_test.cmi test/gpr_1760_test.cmj : cc test/gpr_1760_test.ml | test/mt.cmj $stdlib +o test/gpr_1762_test.cmi test/gpr_1762_test.cmj : cc test/gpr_1762_test.ml | test/mt.cmj $stdlib +o test/gpr_1817_test.cmi test/gpr_1817_test.cmj : cc test/gpr_1817_test.ml | test/mt.cmj $stdlib +o test/gpr_1822_test.cmi test/gpr_1822_test.cmj : cc test/gpr_1822_test.ml | test/mt.cmj $stdlib +o test/gpr_1891_test.cmi test/gpr_1891_test.cmj : cc test/gpr_1891_test.ml | $stdlib +o test/gpr_1943_test.cmi test/gpr_1943_test.cmj : cc test/gpr_1943_test.ml | test/mt.cmj $stdlib +o test/gpr_1946_test.cmi test/gpr_1946_test.cmj : cc test/gpr_1946_test.ml | test/mt.cmj $stdlib +o test/gpr_2250_test.cmi test/gpr_2250_test.cmj : cc test/gpr_2250_test.ml | test/mt.cmj $stdlib +o test/gpr_2316_test.cmi test/gpr_2316_test.cmj : cc test/gpr_2316_test.ml | test/mt.cmj $stdlib +o test/gpr_2352_test.cmi test/gpr_2352_test.cmj : cc test/gpr_2352_test.ml | $stdlib +o test/gpr_2413_test.cmi test/gpr_2413_test.cmj : cc test/gpr_2413_test.ml | $stdlib +o test/gpr_2474.cmi test/gpr_2474.cmj : cc test/gpr_2474.ml | $stdlib +o test/gpr_2487.cmi test/gpr_2487.cmj : cc test/gpr_2487.ml | $stdlib +o test/gpr_2503_test.cmi test/gpr_2503_test.cmj : cc test/gpr_2503_test.ml | test/mt.cmj $stdlib +o test/gpr_2608_test.cmi test/gpr_2608_test.cmj : cc test/gpr_2608_test.ml | test/mt.cmj $stdlib +o test/gpr_2614_test.cmi test/gpr_2614_test.cmj : cc test/gpr_2614_test.ml | $stdlib +o test/gpr_2633_test.cmi test/gpr_2633_test.cmj : cc test/gpr_2633_test.ml | $stdlib +o test/gpr_2642_test.cmi test/gpr_2642_test.cmj : cc test/gpr_2642_test.ml | $stdlib +o test/gpr_2652_test.cmi test/gpr_2652_test.cmj : cc test/gpr_2652_test.ml | $stdlib +o test/gpr_2682_test.cmi test/gpr_2682_test.cmj : cc test/gpr_2682_test.ml | $stdlib +o test/gpr_2700_test.cmi test/gpr_2700_test.cmj : cc test/gpr_2700_test.ml | $stdlib +o test/gpr_2731_test.cmi test/gpr_2731_test.cmj : cc test/gpr_2731_test.ml | $stdlib +o test/gpr_2789_test.cmi test/gpr_2789_test.cmj : cc test/gpr_2789_test.ml | test/mt.cmj $stdlib +o test/gpr_2863_test.cmi test/gpr_2863_test.cmj : cc test/gpr_2863_test.ml | $stdlib +o test/gpr_2931_test.cmi test/gpr_2931_test.cmj : cc test/gpr_2931_test.ml | test/mt.cmj $stdlib +o test/gpr_3142_test.cmi test/gpr_3142_test.cmj : cc test/gpr_3142_test.ml | test/mt.cmj $stdlib +o test/gpr_3154_test.cmi test/gpr_3154_test.cmj : cc test/gpr_3154_test.ml | test/mt.cmj $stdlib +o test/gpr_3209_test.cmi test/gpr_3209_test.cmj : cc test/gpr_3209_test.ml | $stdlib +o test/gpr_3492_test.cmi test/gpr_3492_test.cmj : cc test/gpr_3492_test.ml | test/mt.cmj $stdlib +o test/gpr_3502_test.cmi test/gpr_3502_test.cmj : cc test/gpr_3502_test.ml | $stdlib +o test/gpr_3519_jsx_test.cmi test/gpr_3519_jsx_test.cmj : cc test/gpr_3519_jsx_test.ml | $stdlib +o test/gpr_3519_test.cmi test/gpr_3519_test.cmj : cc test/gpr_3519_test.ml | $stdlib +o test/gpr_3536_test.cmi test/gpr_3536_test.cmj : cc test/gpr_3536_test.ml | test/mt.cmj $stdlib +o test/gpr_3546_test.cmi test/gpr_3546_test.cmj : cc test/gpr_3546_test.ml | $stdlib +o test/gpr_3548_test.cmi test/gpr_3548_test.cmj : cc test/gpr_3548_test.ml | $stdlib +o test/gpr_3549_test.cmi test/gpr_3549_test.cmj : cc test/gpr_3549_test.ml | test/mt.cmj $stdlib +o test/gpr_3566_drive_test.cmi test/gpr_3566_drive_test.cmj : cc test/gpr_3566_drive_test.ml | test/gpr_3566_test.cmj test/mt.cmj $stdlib +o test/gpr_3566_test.cmi test/gpr_3566_test.cmj : cc test/gpr_3566_test.ml | $stdlib +o test/gpr_3595_test.cmi test/gpr_3595_test.cmj : cc test/gpr_3595_test.ml | test/mt.cmj $stdlib +o test/gpr_3609_test.cmi test/gpr_3609_test.cmj : cc test/gpr_3609_test.ml | $stdlib +o test/gpr_3697_test.cmi test/gpr_3697_test.cmj : cc test/gpr_3697_test.ml | $stdlib +o test/gpr_373_test.cmi test/gpr_373_test.cmj : cc test/gpr_373_test.ml | $stdlib +o test/gpr_3770_test.cmi test/gpr_3770_test.cmj : cc test/gpr_3770_test.ml | $stdlib +o test/gpr_3852_alias.cmi test/gpr_3852_alias.cmj : cc test/gpr_3852_alias.ml | test/gpr_3852_effect.cmj $stdlib +o test/gpr_3852_alias_reify.cmj : cc_cmi test/gpr_3852_alias_reify.ml | test/gpr_3852_alias_reify.cmi test/gpr_3852_effect.cmj $stdlib +o test/gpr_3852_alias_reify.cmi : cc test/gpr_3852_alias_reify.mli | $stdlib +o test/gpr_3852_effect.cmi test/gpr_3852_effect.cmj : cc test/gpr_3852_effect.ml | $stdlib +o test/gpr_3865.cmi test/gpr_3865.cmj : cc test/gpr_3865.re | test/gpr_3865_bar.cmj test/gpr_3865_foo.cmj $stdlib +o test/gpr_3865_bar.cmi test/gpr_3865_bar.cmj : cc test/gpr_3865_bar.re | $stdlib +o test/gpr_3865_foo.cmi test/gpr_3865_foo.cmj : cc test/gpr_3865_foo.re | $stdlib +o test/gpr_3875_test.cmi test/gpr_3875_test.cmj : cc test/gpr_3875_test.ml | test/mt.cmj $stdlib +o test/gpr_3877_test.cmi test/gpr_3877_test.cmj : cc test/gpr_3877_test.ml | $stdlib +o test/gpr_3895_test.cmi test/gpr_3895_test.cmj : cc test/gpr_3895_test.ml | $stdlib +o test/gpr_3897_test.cmi test/gpr_3897_test.cmj : cc test/gpr_3897_test.ml | $stdlib +o test/gpr_3931_test.cmi test/gpr_3931_test.cmj : cc test/gpr_3931_test.ml | $stdlib +o test/gpr_3980_test.cmi test/gpr_3980_test.cmj : cc test/gpr_3980_test.ml | $stdlib +o test/gpr_4025_test.cmi test/gpr_4025_test.cmj : cc test/gpr_4025_test.ml | $stdlib +o test/gpr_405_test.cmj : cc_cmi test/gpr_405_test.ml | test/gpr_405_test.cmi $stdlib +o test/gpr_405_test.cmi : cc test/gpr_405_test.mli | $stdlib +o test/gpr_4069_test.cmi test/gpr_4069_test.cmj : cc test/gpr_4069_test.ml | $stdlib +o test/gpr_4265_test.cmi test/gpr_4265_test.cmj : cc test/gpr_4265_test.ml | test/mt.cmj $stdlib +o test/gpr_4274_test.cmi test/gpr_4274_test.cmj : cc test/gpr_4274_test.ml | $stdlib +o test/gpr_4280_test.cmi test/gpr_4280_test.cmj : cc test/gpr_4280_test.ml | test/mt.cmj $stdlib +o test/gpr_4407_test.cmi test/gpr_4407_test.cmj : cc test/gpr_4407_test.ml | test/debug_mode_value.cmj test/mt.cmj $stdlib +o test/gpr_441.cmi test/gpr_441.cmj : cc test/gpr_441.ml | $stdlib +o test/gpr_4442_test.cmi test/gpr_4442_test.cmj : cc test/gpr_4442_test.ml | test/mt.cmj $stdlib +o test/gpr_4491_test.cmi test/gpr_4491_test.cmj : cc test/gpr_4491_test.ml | $stdlib +o test/gpr_4494_test.cmi test/gpr_4494_test.cmj : cc test/gpr_4494_test.ml | $stdlib +o test/gpr_4519_test.cmi test/gpr_4519_test.cmj : cc test/gpr_4519_test.ml | test/mt.cmj $stdlib +o test/gpr_459_test.cmi test/gpr_459_test.cmj : cc test/gpr_459_test.ml | test/mt.cmj $stdlib +o test/gpr_4639_test.cmi test/gpr_4639_test.cmj : cc test/gpr_4639_test.ml | $stdlib +o test/gpr_627_test.cmi test/gpr_627_test.cmj : cc test/gpr_627_test.ml | test/mt.cmj $stdlib +o test/gpr_658.cmi test/gpr_658.cmj : cc test/gpr_658.ml | $stdlib +o test/gpr_858_test.cmi test/gpr_858_test.cmj : cc test/gpr_858_test.ml | $stdlib +o test/gpr_858_unit2_test.cmi test/gpr_858_unit2_test.cmj : cc test/gpr_858_unit2_test.ml | $stdlib +o test/gpr_904_test.cmi test/gpr_904_test.cmj : cc test/gpr_904_test.ml | test/mt.cmj $stdlib +o test/gpr_974_test.cmi test/gpr_974_test.cmj : cc test/gpr_974_test.ml | $stdlib +o test/gpr_977_test.cmi test/gpr_977_test.cmj : cc test/gpr_977_test.ml | test/mt.cmj test/nativeint.cmj $stdlib +o test/gpr_return_type_unused_attribute.cmi test/gpr_return_type_unused_attribute.cmj : cc test/gpr_return_type_unused_attribute.ml | $stdlib +o test/gray_code_test.cmi test/gray_code_test.cmj : cc test/gray_code_test.ml | $stdlib +o test/guide_for_ext.cmi test/guide_for_ext.cmj : cc test/guide_for_ext.ml | $stdlib +o test/hamming_test.cmi test/hamming_test.cmj : cc test/hamming_test.ml | test/mt.cmj $stdlib +o test/hash_collision.cmi test/hash_collision.cmj : cc test/hash_collision.ml | test/mt.cmj $stdlib +o test/hash_test.cmi test/hash_test.cmj : cc test/hash_test.ml | test/mt.cmj test/mt_global.cmj $stdlib +o test/hashtbl_test.cmi test/hashtbl_test.cmj : cc test/hashtbl_test.ml | test/mt.cmj $stdlib +o test/hello.foo.cmi test/hello.foo.cmj : cc test/hello.foo.ml | $stdlib +o test/http_types.cmi test/http_types.cmj : cc test/http_types.ml | $stdlib +o test/if_used_test.cmi test/if_used_test.cmj : cc test/if_used_test.ml | $stdlib +o test/ignore_test.cmi test/ignore_test.cmj : cc test/ignore_test.ml | test/mt.cmj $stdlib +o test/imm_map_bench.cmi test/imm_map_bench.cmj : cc test/imm_map_bench.ml | $stdlib +o test/include_side_effect.cmi test/include_side_effect.cmj : cc test/include_side_effect.ml | test/side_effect.cmj $stdlib +o test/include_side_effect_free.cmi test/include_side_effect_free.cmj : cc test/include_side_effect_free.ml | test/side_effect_free.cmj $stdlib +o test/incomplete_toplevel_test.cmi test/incomplete_toplevel_test.cmj : cc test/incomplete_toplevel_test.ml | $stdlib +o test/infer_type_test.cmj : cc_cmi test/infer_type_test.ml | test/infer_type_test.cmi $stdlib +o test/infer_type_test.cmi : cc test/infer_type_test.mli | $stdlib +o test/inline_const.cmj : cc_cmi test/inline_const.ml | test/inline_const.cmi $stdlib +o test/inline_const.cmi : cc test/inline_const.mli | $stdlib +o test/inline_const_test.cmi test/inline_const_test.cmj : cc test/inline_const_test.ml | test/inline_const.cmj test/mt.cmj $stdlib +o test/inline_edge_cases.cmj : cc_cmi test/inline_edge_cases.ml | test/inline_edge_cases.cmi $stdlib +o test/inline_edge_cases.cmi : cc test/inline_edge_cases.mli | $stdlib +o test/inline_map2_test.cmi test/inline_map2_test.cmj : cc test/inline_map2_test.ml | test/mt.cmj $stdlib +o test/inline_map_test.cmj : cc_cmi test/inline_map_test.ml | test/inline_map_test.cmi test/mt.cmj $stdlib +o test/inline_map_test.cmi : cc test/inline_map_test.mli | $stdlib +o test/inline_record_test.cmi test/inline_record_test.cmj : cc test/inline_record_test.ml | test/mt.cmj $stdlib +o test/inline_regression_test.cmi test/inline_regression_test.cmj : cc test/inline_regression_test.ml | test/mt.cmj $stdlib +o test/inline_string_test.cmi test/inline_string_test.cmj : cc test/inline_string_test.ml | $stdlib +o test/inner_call.cmi test/inner_call.cmj : cc test/inner_call.ml | test/inner_define.cmj $stdlib +o test/inner_define.cmj : cc_cmi test/inner_define.ml | test/inner_define.cmi $stdlib +o test/inner_define.cmi : cc test/inner_define.mli | $stdlib +o test/inner_unused.cmi test/inner_unused.cmj : cc test/inner_unused.ml | $stdlib +o test/installation_test.cmi test/installation_test.cmj : cc test/installation_test.ml | test/mt.cmj $stdlib +o test/int32_test.cmi test/int32_test.cmj : cc test/int32_test.ml | test/ext_array_test.cmj test/mt.cmj $stdlib +o test/int64_mul_div_test.cmi test/int64_mul_div_test.cmj : cc test/int64_mul_div_test.ml | test/mt.cmj $stdlib +o test/int64_string_bench.cmi test/int64_string_bench.cmj : cc test/int64_string_bench.ml | $stdlib +o test/int64_string_test.cmi test/int64_string_test.cmj : cc test/int64_string_test.ml | test/mt.cmj $stdlib +o test/int64_test.cmi test/int64_test.cmj : cc test/int64_test.ml | test/ext_array_test.cmj test/mt.cmj test/nativeint.cmj $stdlib +o test/int_hashtbl_test.cmi test/int_hashtbl_test.cmj : cc test/int_hashtbl_test.ml | test/mt.cmj $stdlib +o test/int_map.cmi test/int_map.cmj : cc test/int_map.ml | $stdlib +o test/int_overflow_test.cmi test/int_overflow_test.cmj : cc test/int_overflow_test.ml | test/mt.cmj $stdlib +o test/int_switch_test.cmi test/int_switch_test.cmj : cc test/int_switch_test.ml | test/mt.cmj $stdlib +o test/internal_unused_test.cmi test/internal_unused_test.cmj : cc test/internal_unused_test.ml | $stdlib +o test/io_test.cmi test/io_test.cmj : cc test/io_test.ml | $stdlib +o test/js_array_test.cmi test/js_array_test.cmj : cc test/js_array_test.ml | test/mt.cmj $stdlib +o test/js_bool_test.cmi test/js_bool_test.cmj : cc test/js_bool_test.ml | test/mt.cmj $stdlib +o test/js_cast_test.cmi test/js_cast_test.cmj : cc test/js_cast_test.ml | test/mt.cmj $stdlib +o test/js_date_test.cmi test/js_date_test.cmj : cc test/js_date_test.ml | test/mt.cmj $stdlib +o test/js_dict_test.cmi test/js_dict_test.cmj : cc test/js_dict_test.ml | test/mt.cmj $stdlib +o test/js_exception_catch_test.cmi test/js_exception_catch_test.cmj : cc test/js_exception_catch_test.ml | test/mt.cmj $stdlib +o test/js_float_test.cmi test/js_float_test.cmj : cc test/js_float_test.ml | test/mt.cmj $stdlib +o test/js_global_test.cmi test/js_global_test.cmj : cc test/js_global_test.ml | test/mt.cmj $stdlib +o test/js_int_test.cmi test/js_int_test.cmj : cc test/js_int_test.ml | test/mt.cmj $stdlib +o test/js_json_test.cmi test/js_json_test.cmj : cc test/js_json_test.ml | test/mt.cmj $stdlib +o test/js_list_test.cmi test/js_list_test.cmj : cc test/js_list_test.ml | test/mt.cmj $stdlib +o test/js_math_test.cmi test/js_math_test.cmj : cc test/js_math_test.ml | test/mt.cmj $stdlib +o test/js_null_test.cmi test/js_null_test.cmj : cc test/js_null_test.ml | test/mt.cmj $stdlib +o test/js_null_undefined_test.cmi test/js_null_undefined_test.cmj : cc test/js_null_undefined_test.ml | test/mt.cmj $stdlib +o test/js_nullable_test.cmi test/js_nullable_test.cmj : cc test/js_nullable_test.ml | test/mt.cmj $stdlib +o test/js_obj_test.cmi test/js_obj_test.cmj : cc test/js_obj_test.ml | test/mt.cmj $stdlib +o test/js_option_test.cmi test/js_option_test.cmj : cc test/js_option_test.ml | test/mt.cmj $stdlib +o test/js_promise_basic_test.cmi test/js_promise_basic_test.cmj : cc test/js_promise_basic_test.ml | test/mt.cmj $stdlib +o test/js_re_test.cmi test/js_re_test.cmj : cc test/js_re_test.ml | test/mt.cmj $stdlib +o test/js_string_test.cmi test/js_string_test.cmj : cc test/js_string_test.ml | test/mt.cmj $stdlib +o test/js_typed_array_test.cmi test/js_typed_array_test.cmj : cc test/js_typed_array_test.ml | test/mt.cmj $stdlib +o test/js_undefined_test.cmi test/js_undefined_test.cmj : cc test/js_undefined_test.ml | test/mt.cmj $stdlib +o test/js_val.cmi test/js_val.cmj : cc test/js_val.ml | $stdlib +o test/jsoo_400_test.cmi test/jsoo_400_test.cmj : cc test/jsoo_400_test.ml | test/mt.cmj $stdlib +o test/jsoo_485_test.cmi test/jsoo_485_test.cmj : cc test/jsoo_485_test.ml | $stdlib +o test/key_word_property.cmi test/key_word_property.cmj : cc test/key_word_property.ml | $stdlib +o test/key_word_property2.cmi test/key_word_property2.cmj : cc test/key_word_property2.ml | test/export_keyword.cmj $stdlib +o test/key_word_property_plus_test.cmi test/key_word_property_plus_test.cmj : cc test/key_word_property_plus_test.ml | test/global_mangles.cmj test/mt.cmj $stdlib +o test/label_uncurry.cmi test/label_uncurry.cmj : cc test/label_uncurry.ml | $stdlib +o test/large_obj_test.cmi test/large_obj_test.cmj : cc test/large_obj_test.ml | $stdlib +o test/large_record_duplication_test.cmi test/large_record_duplication_test.cmj : cc test/large_record_duplication_test.ml | test/mt.cmj $stdlib +o test/largest_int_flow.cmi test/largest_int_flow.cmj : cc test/largest_int_flow.ml | $stdlib +o test/lazy_demo.cmi test/lazy_demo.cmj : cc test/lazy_demo.re | $stdlib +o test/lazy_test.cmi test/lazy_test.cmj : cc test/lazy_test.ml | test/mt.cmj $stdlib +o test/lexer_test.cmi test/lexer_test.cmj : cc test/lexer_test.ml | test/arith_lexer.cmj test/arith_parser.cmj test/arith_syntax.cmj test/mt.cmj test/number_lexer.cmj $stdlib +o test/lib_js_test.cmi test/lib_js_test.cmj : cc test/lib_js_test.ml | test/mt.cmj $stdlib +o test/libarg_test.cmi test/libarg_test.cmj : cc test/libarg_test.ml | test/mt.cmj $stdlib +o test/libqueue_test.cmi test/libqueue_test.cmj : cc test/libqueue_test.ml | $stdlib +o test/limits_test.cmi test/limits_test.cmj : cc test/limits_test.ml | test/mt.cmj $stdlib +o test/list_stack.cmi test/list_stack.cmj : cc test/list_stack.ml | $stdlib +o test/list_test.cmi test/list_test.cmj : cc test/list_test.ml | test/mt.cmj $stdlib +o test/local_class_type.cmi test/local_class_type.cmj : cc test/local_class_type.ml | $stdlib +o test/local_exception_test.cmi test/local_exception_test.cmj : cc test/local_exception_test.ml | $stdlib +o test/loop_regression_test.cmi test/loop_regression_test.cmj : cc test/loop_regression_test.ml | test/mt.cmj $stdlib +o test/loop_suites_test.cmi test/loop_suites_test.cmj : cc test/loop_suites_test.ml | test/for_loop_test.cmj test/mt.cmj $stdlib +o test/map_find_test.cmi test/map_find_test.cmj : cc test/map_find_test.ml | test/mt.cmj $stdlib +o test/map_test.cmj : cc_cmi test/map_test.ml | test/map_test.cmi test/mt.cmj $stdlib +o test/map_test.cmi : cc test/map_test.mli | $stdlib +o test/mario_game.cmi test/mario_game.cmj : cc test/mario_game.ml | $stdlib +o test/method_chain.cmi test/method_chain.cmj : cc test/method_chain.ml | $stdlib +o test/method_name_test.cmi test/method_name_test.cmj : cc test/method_name_test.ml | test/mt.cmj $stdlib +o test/method_string_name.cmi test/method_string_name.cmj : cc test/method_string_name.re | $stdlib +o test/minimal_test.cmi test/minimal_test.cmj : cc test/minimal_test.ml | $stdlib +o test/miss_colon_test.cmi test/miss_colon_test.cmj : cc test/miss_colon_test.ml | $stdlib +o test/mock_mt.cmi test/mock_mt.cmj : cc test/mock_mt.ml | test/mt.cmj $stdlib +o test/module_alias_test.cmi test/module_alias_test.cmj : cc test/module_alias_test.ml | test/mt.cmj $stdlib +o test/module_as_class_ffi.cmi test/module_as_class_ffi.cmj : cc test/module_as_class_ffi.ml | $stdlib +o test/module_as_function.cmi test/module_as_function.cmj : cc test/module_as_function.ml | $stdlib +o test/module_missing_conversion.cmi test/module_missing_conversion.cmj : cc test/module_missing_conversion.ml | $stdlib +o test/module_parameter_test.cmi test/module_parameter_test.cmj : cc test/module_parameter_test.ml | test/mt.cmj $stdlib +o test/module_splice_test.cmi test/module_splice_test.cmj : cc test/module_splice_test.ml | test/mt.cmj $stdlib +o test/more_poly_variant_test.cmi test/more_poly_variant_test.cmj : cc test/more_poly_variant_test.ml | $stdlib +o test/more_uncurry.cmi test/more_uncurry.cmj : cc test/more_uncurry.ml | $stdlib +o test/mpr_6033_test.cmi test/mpr_6033_test.cmj : cc test/mpr_6033_test.ml | test/mt.cmj $stdlib +o test/mt.cmj : cc_cmi test/mt.ml | test/mt.cmi $stdlib +o test/mt.cmi : cc test/mt.mli | $stdlib +o test/mt_global.cmj : cc_cmi test/mt_global.ml | test/mt.cmj test/mt_global.cmi $stdlib +o test/mt_global.cmi : cc test/mt_global.mli | test/mt.cmi $stdlib +o test/mutable_obj_test.cmi test/mutable_obj_test.cmj : cc test/mutable_obj_test.ml | $stdlib +o test/mutable_uncurry_test.cmi test/mutable_uncurry_test.cmj : cc test/mutable_uncurry_test.ml | test/mt.cmj $stdlib +o test/mutual_non_recursive_type.cmi test/mutual_non_recursive_type.cmj : cc test/mutual_non_recursive_type.ml | $stdlib +o test/name_mangle_test.cmi test/name_mangle_test.cmj : cc test/name_mangle_test.ml | test/mt.cmj $stdlib +o test/native_pattern.cmi test/native_pattern.cmj : cc test/native_pattern.ml | test/nativeint.cmj $stdlib +o test/nativeint.cmj : cc_cmi test/nativeint.ml | test/nativeint.cmi $stdlib +o test/nativeint.cmi : cc test/nativeint.mli | $stdlib +o test/nested_include.cmi test/nested_include.cmj : cc test/nested_include.ml | $stdlib +o test/nested_module_alias.cmi test/nested_module_alias.cmj : cc test/nested_module_alias.ml | $stdlib +o test/nested_obj_literal.cmi test/nested_obj_literal.cmj : cc test/nested_obj_literal.ml | $stdlib +o test/nested_obj_test.cmi test/nested_obj_test.cmj : cc test/nested_obj_test.ml | $stdlib +o test/nested_pattern_match_test.cmi test/nested_pattern_match_test.cmj : cc test/nested_pattern_match_test.ml | $stdlib +o test/noassert.cmi test/noassert.cmj : cc test/noassert.ml | $stdlib +o test/node_fs_test.cmi test/node_fs_test.cmj : cc test/node_fs_test.ml | $stdlib +o test/node_path_test.cmi test/node_path_test.cmj : cc test/node_path_test.ml | $stdlib +o test/null_list_test.cmi test/null_list_test.cmj : cc test/null_list_test.ml | $stdlib +o test/number_lexer.cmi test/number_lexer.cmj : cc test/number_lexer.ml | $stdlib +o test/obj_curry_test.cmi test/obj_curry_test.cmj : cc test/obj_curry_test.ml | $stdlib +o test/obj_literal_ppx.cmi test/obj_literal_ppx.cmj : cc test/obj_literal_ppx.ml | $stdlib +o test/obj_literal_ppx_test.cmi test/obj_literal_ppx_test.cmj : cc test/obj_literal_ppx_test.ml | $stdlib +o test/obj_magic_test.cmi test/obj_magic_test.cmj : cc test/obj_magic_test.ml | test/mt.cmj $stdlib +o test/obj_repr_test.cmi test/obj_repr_test.cmj : cc test/obj_repr_test.ml | $stdlib +o test/obj_test.cmi test/obj_test.cmj : cc test/obj_test.ml | test/mt.cmj $stdlib +o test/obj_type_test.cmi test/obj_type_test.cmj : cc test/obj_type_test.ml | $stdlib +o test/ocaml_parsetree_test.cmj : cc_cmi test/ocaml_parsetree_test.ml | test/nativeint.cmj test/ocaml_parsetree_test.cmi $stdlib +o test/ocaml_parsetree_test.cmi : cc test/ocaml_parsetree_test.mli | $stdlib +o test/ocaml_proto_test.cmj : cc_cmi test/ocaml_proto_test.ml | test/mt.cmj test/ocaml_proto_test.cmi $stdlib +o test/ocaml_proto_test.cmi : cc test/ocaml_proto_test.mli | $stdlib +o test/ocaml_re_test.cmi test/ocaml_re_test.cmj : cc test/ocaml_re_test.ml | test/mt.cmj $stdlib +o test/ocaml_typedtree_test.cmj : cc_cmi test/ocaml_typedtree_test.ml | test/nativeint.cmj test/ocaml_typedtree_test.cmi $stdlib +o test/ocaml_typedtree_test.cmi : cc test/ocaml_typedtree_test.mli | $stdlib +o test/of_string_test.cmi test/of_string_test.cmj : cc test/of_string_test.ml | test/mt.cmj $stdlib +o test/offset.cmi test/offset.cmj : cc test/offset.ml | $stdlib +o test/oo_js_test_date.cmi test/oo_js_test_date.cmj : cc test/oo_js_test_date.ml | test/mt.cmj $stdlib +o test/opr_3576_test.cmi test/opr_3576_test.cmj : cc test/opr_3576_test.ml | test/mt.cmj $stdlib +o test/opr_4560_test.cmi test/opr_4560_test.cmj : cc test/opr_4560_test.ml | test/mt.cmj $stdlib +o test/option_repr_test.cmi test/option_repr_test.cmj : cc test/option_repr_test.ml | test/mt.cmj $stdlib +o test/optional_ffi_test.cmi test/optional_ffi_test.cmj : cc test/optional_ffi_test.ml | test/mt.cmj $stdlib +o test/optional_regression_test.cmi test/optional_regression_test.cmj : cc test/optional_regression_test.ml | test/mt.cmj $stdlib +o test/parser_api.cmi test/parser_api.cmj : cc test/parser_api.ml | test/nativeint.cmj $stdlib +o test/parser_api_test.cmi test/parser_api_test.cmj : cc test/parser_api_test.ml | test/mt.cmj test/parser_api.cmj $stdlib +o test/pipe_send_readline.cmi test/pipe_send_readline.cmj : cc test/pipe_send_readline.ml | $stdlib +o test/pipe_syntax.cmi test/pipe_syntax.cmj : cc test/pipe_syntax.ml | $stdlib +o test/poly_empty_array.cmi test/poly_empty_array.cmj : cc test/poly_empty_array.ml | $stdlib +o test/poly_type.cmi test/poly_type.cmj : cc test/poly_type.ml | $stdlib +o test/poly_variant_test.cmj : cc_cmi test/poly_variant_test.ml | test/mt.cmj test/poly_variant_test.cmi $stdlib +o test/poly_variant_test.cmi : cc test/poly_variant_test.mli | $stdlib +o test/polymorphism_test.cmj : cc_cmi test/polymorphism_test.ml | test/polymorphism_test.cmi $stdlib +o test/polymorphism_test.cmi : cc test/polymorphism_test.mli | $stdlib +o test/polyvar_convert.cmi test/polyvar_convert.cmj : cc test/polyvar_convert.ml | $stdlib +o test/polyvar_test.cmi test/polyvar_test.cmj : cc test/polyvar_test.ml | $stdlib +o test/ppx_apply_test.cmi test/ppx_apply_test.cmj : cc test/ppx_apply_test.ml | test/mt.cmj $stdlib +o test/ppx_this_obj_field.cmi test/ppx_this_obj_field.cmj : cc test/ppx_this_obj_field.ml | test/mt.cmj $stdlib +o test/ppx_this_obj_test.cmi test/ppx_this_obj_test.cmj : cc test/ppx_this_obj_test.ml | test/mt.cmj $stdlib +o test/pq_test.cmi test/pq_test.cmj : cc test/pq_test.ml | $stdlib +o test/pr6726.cmi test/pr6726.cmj : cc test/pr6726.ml | $stdlib +o test/pr_regression_test.cmi test/pr_regression_test.cmj : cc test/pr_regression_test.ml | test/mt.cmj $stdlib +o test/prepend_data_ffi.cmi test/prepend_data_ffi.cmj : cc test/prepend_data_ffi.ml | $stdlib +o test/primitive_reg_test.cmi test/primitive_reg_test.cmj : cc test/primitive_reg_test.ml | $stdlib +o test/print_alpha_test.cmi test/print_alpha_test.cmj : cc test/print_alpha_test.ml | test/mt.cmj $stdlib +o test/printf_sim.cmi test/printf_sim.cmj : cc test/printf_sim.ml | $stdlib +o test/printf_test.cmi test/printf_test.cmj : cc test/printf_test.ml | test/mt.cmj $stdlib +o test/promise.cmi test/promise.cmj : cc test/promise.ml | $stdlib +o test/promise_catch_test.cmi test/promise_catch_test.cmj : cc test/promise_catch_test.ml | test/mt.cmj $stdlib +o test/qcc.cmi test/qcc.cmj : cc test/qcc.ml | $stdlib +o test/queue_402.cmi test/queue_402.cmj : cc test/queue_402.ml | $stdlib +o test/queue_test.cmi test/queue_test.cmj : cc test/queue_test.ml | test/mt.cmj test/queue_402.cmj $stdlib +o test/random_test.cmi test/random_test.cmj : cc test/random_test.ml | test/mt.cmj test/mt_global.cmj $stdlib +o test/raw_hash_tbl_bench.cmi test/raw_hash_tbl_bench.cmj : cc test/raw_hash_tbl_bench.ml | $stdlib +o test/raw_output_test.cmi test/raw_output_test.cmj : cc test/raw_output_test.ml | $stdlib +o test/raw_pure_test.cmi test/raw_pure_test.cmj : cc test/raw_pure_test.ml | $stdlib +o test/rbset.cmi test/rbset.cmj : cc test/rbset.ml | $stdlib +o test/re_first_test.cmi test/re_first_test.cmj : cc test/re_first_test.re | $stdlib +o test/react.cmi test/react.cmj : cc test/react.re | $stdlib +o test/reactDOMRe.cmi test/reactDOMRe.cmj : cc test/reactDOMRe.re | test/react.cmj test/reactEvent.cmj test/reasonReact.cmj $stdlib +o test/reactDOMServerRe.cmi test/reactDOMServerRe.cmj : cc test/reactDOMServerRe.re | test/react.cmj $stdlib +o test/reactEvent.cmj : cc_cmi test/reactEvent.re | test/reactEvent.cmi $stdlib +o test/reactEvent.cmi : cc test/reactEvent.rei | $stdlib +o test/reactEventRe.cmj : cc_cmi test/reactEventRe.re | test/reactEvent.cmj test/reactEventRe.cmi $stdlib +o test/reactEventRe.cmi : cc test/reactEventRe.rei | test/reactEvent.cmi $stdlib +o test/reactTestUtils.cmj : cc_cmi test/reactTestUtils.re | test/react.cmj test/reactTestUtils.cmi $stdlib +o test/reactTestUtils.cmi : cc test/reactTestUtils.rei | test/react.cmi $stdlib +o test/reasonReact.cmj : cc_cmi test/reasonReact.re | test/react.cmj test/reasonReact.cmi test/reasonReactOptimizedCreateClass.cmj test/reasonReactRouter.cmj $stdlib +o test/reasonReact.cmi : cc test/reasonReact.rei | test/react.cmi test/reasonReactRouter.cmi $stdlib +o test/reasonReactCompat.cmj : cc_cmi test/reasonReactCompat.re | test/react.cmj test/reasonReact.cmj test/reasonReactCompat.cmi $stdlib +o test/reasonReactCompat.cmi : cc test/reasonReactCompat.rei | test/react.cmi test/reasonReact.cmi $stdlib +o test/reasonReactOptimizedCreateClass.cmi test/reasonReactOptimizedCreateClass.cmj : cc test/reasonReactOptimizedCreateClass.re | $stdlib +o test/reasonReactRouter.cmj : cc_cmi test/reasonReactRouter.re | test/react.cmj test/reasonReactRouter.cmi $stdlib +o test/reasonReactRouter.cmi : cc test/reasonReactRouter.rei | $stdlib +o test/rebind_module.cmi test/rebind_module.cmj : cc test/rebind_module.ml | $stdlib +o test/rebind_module_test.cmi test/rebind_module_test.cmj : cc test/rebind_module_test.ml | test/rebind_module.cmj $stdlib +o test/rec_fun_test.cmi test/rec_fun_test.cmj : cc test/rec_fun_test.ml | test/mt.cmj $stdlib +o test/rec_module_opt.cmi test/rec_module_opt.cmj : cc test/rec_module_opt.ml | $stdlib +o test/rec_module_test.cmi test/rec_module_test.cmj : cc test/rec_module_test.ml | test/mt.cmj $stdlib +o test/rec_value_test.cmi test/rec_value_test.cmj : cc test/rec_value_test.ml | test/mt.cmj $stdlib +o test/record_debug_test.cmi test/record_debug_test.cmj : cc test/record_debug_test.ml | test/mt.cmj $stdlib +o test/record_extension_test.cmi test/record_extension_test.cmj : cc test/record_extension_test.ml | test/mt.cmj $stdlib +o test/record_name_test.cmi test/record_name_test.cmj : cc test/record_name_test.ml | $stdlib +o test/record_with_test.cmi test/record_with_test.cmj : cc test/record_with_test.ml | test/mt.cmj $stdlib +o test/recursive_module.cmi test/recursive_module.cmj : cc test/recursive_module.ml | test/mt.cmj $stdlib +o test/recursive_module_test.cmi test/recursive_module_test.cmj : cc test/recursive_module_test.ml | test/mt.cmj $stdlib +o test/recursive_react_component.cmi test/recursive_react_component.cmj : cc test/recursive_react_component.re | test/react.cmj $stdlib +o test/recursive_records_test.cmi test/recursive_records_test.cmj : cc test/recursive_records_test.ml | test/mt.cmj $stdlib +o test/recursive_unbound_module_test.cmi test/recursive_unbound_module_test.cmj : cc test/recursive_unbound_module_test.ml | $stdlib +o test/regression_print.cmi test/regression_print.cmj : cc test/regression_print.ml | $stdlib +o test/relative_path.cmi test/relative_path.cmj : cc test/relative_path.ml | $stdlib +o test/return_check.cmi test/return_check.cmj : cc test/return_check.ml | $stdlib +o test/runtime_encoding_test.cmi test/runtime_encoding_test.cmj : cc test/runtime_encoding_test.ml | $stdlib +o test/scanf_io.cmi test/scanf_io.cmj : cc test/scanf_io.ml | test/testing.cmj $stdlib +o test/scanf_reference_error_regression_test.cmj : cc_cmi test/scanf_reference_error_regression_test.ml | test/mt.cmj test/mt_global.cmj test/scanf_reference_error_regression_test.cmi $stdlib +o test/scanf_reference_error_regression_test.cmi : cc test/scanf_reference_error_regression_test.mli | $stdlib +o test/scanf_test.cmi test/scanf_test.cmj : cc test/scanf_test.ml | test/mt.cmj test/mt_global.cmj $stdlib +o test/set_gen.cmi test/set_gen.cmj : cc test/set_gen.ml | $stdlib +o test/sexp.cmj : cc_cmi test/sexp.ml | test/sexp.cmi $stdlib +o test/sexp.cmi : cc test/sexp.mli | $stdlib +o test/sexpm.cmj : cc_cmi test/sexpm.ml | test/sexpm.cmi $stdlib +o test/sexpm.cmi : cc test/sexpm.mli | $stdlib +o test/sexpm_test.cmi test/sexpm_test.cmj : cc test/sexpm_test.ml | test/mt.cmj test/sexpm.cmj $stdlib +o test/shift_test.cmi test/shift_test.cmj : cc test/shift_test.ml | test/nativeint.cmj $stdlib +o test/side_effect.cmi test/side_effect.cmj : cc test/side_effect.ml | $stdlib +o test/side_effect_free.cmi test/side_effect_free.cmj : cc test/side_effect_free.ml | $stdlib +o test/simple_derive_test.cmj : cc_cmi test/simple_derive_test.ml | test/simple_derive_test.cmi $stdlib +o test/simple_derive_test.cmi : cc test/simple_derive_test.mli | $stdlib +o test/simple_derive_use.cmj : cc_cmi test/simple_derive_use.ml | test/simple_derive_use.cmi $stdlib +o test/simple_derive_use.cmi : cc test/simple_derive_use.mli | $stdlib +o test/simple_lexer_test.cmi test/simple_lexer_test.cmj : cc test/simple_lexer_test.ml | test/mt.cmj $stdlib +o test/simplify_lambda_632o.cmi test/simplify_lambda_632o.cmj : cc test/simplify_lambda_632o.ml | $stdlib +o test/single_module_alias.cmi test/single_module_alias.cmj : cc test/single_module_alias.ml | $stdlib +o test/singular_unit_test.cmi test/singular_unit_test.cmj : cc test/singular_unit_test.ml | $stdlib +o test/small_inline_test.cmi test/small_inline_test.cmj : cc test/small_inline_test.ml | $stdlib +o test/splice_test.cmi test/splice_test.cmj : cc test/splice_test.ml | test/mt.cmj $stdlib +o test/sprintf_reg_test.cmi test/sprintf_reg_test.cmj : cc test/sprintf_reg_test.ml | test/mt.cmj test/mt_global.cmj $stdlib +o test/stack_comp_test.cmi test/stack_comp_test.cmj : cc test/stack_comp_test.ml | test/mt.cmj test/mt_global.cmj $stdlib +o test/stack_test.cmi test/stack_test.cmj : cc test/stack_test.ml | test/mt.cmj $stdlib +o test/stream_parser_test.cmi test/stream_parser_test.cmj : cc test/stream_parser_test.ml | test/mt.cmj $stdlib +o test/string_bound_get_test.cmi test/string_bound_get_test.cmj : cc test/string_bound_get_test.ml | $stdlib +o test/string_get_set_test.cmi test/string_get_set_test.cmj : cc test/string_get_set_test.ml | test/mt.cmj $stdlib +o test/string_interp_test.cmi test/string_interp_test.cmj : cc test/string_interp_test.ml | $stdlib +o test/string_literal_print_test.cmi test/string_literal_print_test.cmj : cc test/string_literal_print_test.ml | test/mt.cmj $stdlib +o test/string_runtime_test.cmi test/string_runtime_test.cmj : cc test/string_runtime_test.ml | test/mt.cmj test/test_char.cmj $stdlib +o test/string_set.cmi test/string_set.cmj : cc test/string_set.ml | test/set_gen.cmj $stdlib +o test/string_set_test.cmi test/string_set_test.cmj : cc test/string_set_test.ml | test/mt.cmj test/string_set.cmj $stdlib +o test/string_test.cmi test/string_test.cmj : cc test/string_test.ml | test/ext_string_test.cmj test/mt.cmj $stdlib +o test/string_unicode_test.cmi test/string_unicode_test.cmj : cc test/string_unicode_test.ml | $stdlib +o test/stringmatch_test.cmi test/stringmatch_test.cmj : cc test/stringmatch_test.ml | $stdlib +o test/submodule.cmi test/submodule.cmj : cc test/submodule.ml | $stdlib +o test/submodule_call.cmi test/submodule_call.cmj : cc test/submodule_call.ml | test/submodule.cmj $stdlib +o test/swap_test.cmi test/swap_test.cmj : cc test/swap_test.ml | $stdlib +o test/switch_case_test.cmi test/switch_case_test.cmj : cc test/switch_case_test.ml | test/mt.cmj $stdlib +o test/tailcall_inline_test.cmi test/tailcall_inline_test.cmj : cc test/tailcall_inline_test.ml | test/mt.cmj $stdlib +o test/test.cmi test/test.cmj : cc test/test.ml | $stdlib +o test/test_alias.cmi test/test_alias.cmj : cc test/test_alias.ml | test/test_global_print.cmj $stdlib +o test/test_ari.cmi test/test_ari.cmj : cc test/test_ari.ml | $stdlib +o test/test_array.cmi test/test_array.cmj : cc test/test_array.ml | $stdlib +o test/test_array_append.cmi test/test_array_append.cmj : cc test/test_array_append.ml | $stdlib +o test/test_array_primitive.cmi test/test_array_primitive.cmj : cc test/test_array_primitive.ml | $stdlib +o test/test_bool_equal.cmi test/test_bool_equal.cmj : cc test/test_bool_equal.ml | $stdlib +o test/test_bs_this.cmi test/test_bs_this.cmj : cc test/test_bs_this.ml | $stdlib +o test/test_bug.cmi test/test_bug.cmj : cc test/test_bug.ml | test/test_char.cmj $stdlib +o test/test_bytes.cmi test/test_bytes.cmj : cc test/test_bytes.ml | $stdlib +o test/test_case_opt_collision.cmi test/test_case_opt_collision.cmj : cc test/test_case_opt_collision.ml | test/mt.cmj $stdlib +o test/test_case_set.cmi test/test_case_set.cmj : cc test/test_case_set.ml | $stdlib +o test/test_char.cmi test/test_char.cmj : cc test/test_char.ml | $stdlib +o test/test_closure.cmi test/test_closure.cmj : cc test/test_closure.ml | $stdlib +o test/test_common.cmi test/test_common.cmj : cc test/test_common.ml | $stdlib +o test/test_const_elim.cmi test/test_const_elim.cmj : cc test/test_const_elim.ml | $stdlib +o test/test_const_propogate.cmi test/test_const_propogate.cmj : cc test/test_const_propogate.ml | $stdlib +o test/test_cpp.cmi test/test_cpp.cmj : cc test/test_cpp.ml | $stdlib +o test/test_cps.cmi test/test_cps.cmj : cc test/test_cps.ml | $stdlib +o test/test_demo.cmi test/test_demo.cmj : cc test/test_demo.ml | $stdlib +o test/test_dup_param.cmi test/test_dup_param.cmj : cc test/test_dup_param.ml | $stdlib +o test/test_eq.cmi test/test_eq.cmj : cc test/test_eq.ml | $stdlib +o test/test_exception.cmi test/test_exception.cmj : cc test/test_exception.ml | test/test_common.cmj $stdlib +o test/test_exception_escape.cmi test/test_exception_escape.cmj : cc test/test_exception_escape.ml | $stdlib +o test/test_export2.cmi test/test_export2.cmj : cc test/test_export2.ml | $stdlib +o test/test_external.cmi test/test_external.cmj : cc test/test_external.ml | $stdlib +o test/test_external_unit.cmi test/test_external_unit.cmj : cc test/test_external_unit.ml | $stdlib +o test/test_ffi.cmi test/test_ffi.cmj : cc test/test_ffi.ml | $stdlib +o test/test_fib.cmi test/test_fib.cmj : cc test/test_fib.ml | $stdlib +o test/test_filename.cmi test/test_filename.cmj : cc test/test_filename.ml | $stdlib +o test/test_for_loop.cmi test/test_for_loop.cmj : cc test/test_for_loop.ml | $stdlib +o test/test_for_map.cmi test/test_for_map.cmj : cc test/test_for_map.ml | $stdlib +o test/test_for_map2.cmj : cc_cmi test/test_for_map2.ml | test/int_map.cmj test/test_for_map2.cmi $stdlib +o test/test_for_map2.cmi : cc test/test_for_map2.mli | $stdlib +o test/test_format.cmi test/test_format.cmj : cc test/test_format.ml | $stdlib +o test/test_formatter.cmi test/test_formatter.cmj : cc test/test_formatter.ml | $stdlib +o test/test_functor_dead_code.cmi test/test_functor_dead_code.cmj : cc test/test_functor_dead_code.ml | $stdlib +o test/test_generative_module.cmi test/test_generative_module.cmj : cc test/test_generative_module.ml | $stdlib +o test/test_global_print.cmi test/test_global_print.cmj : cc test/test_global_print.ml | $stdlib +o test/test_google_closure.cmi test/test_google_closure.cmj : cc test/test_google_closure.ml | $stdlib +o test/test_http_server.cmj : cc_cmi test/test_http_server.ml | test/http_types.cmj test/test_http_server.cmi $stdlib +o test/test_http_server.cmi : cc test/test_http_server.mli | $stdlib +o test/test_include.cmi test/test_include.cmj : cc test/test_include.ml | test/test_order.cmj $stdlib +o test/test_incomplete.cmi test/test_incomplete.cmj : cc test/test_incomplete.ml | $stdlib +o test/test_incr_ref.cmi test/test_incr_ref.cmj : cc test/test_incr_ref.ml | $stdlib +o test/test_index.cmi test/test_index.cmj : cc test/test_index.ml | $stdlib +o test/test_int_map_find.cmi test/test_int_map_find.cmj : cc test/test_int_map_find.ml | $stdlib +o test/test_internalOO.cmi test/test_internalOO.cmj : cc test/test_internalOO.ml | $stdlib +o test/test_is_js.cmj : cc_cmi test/test_is_js.ml | test/mt.cmj test/test_is_js.cmi $stdlib +o test/test_is_js.cmi : cc test/test_is_js.mli | $stdlib +o test/test_js_ffi.cmi test/test_js_ffi.cmj : cc test/test_js_ffi.ml | $stdlib +o test/test_let.cmi test/test_let.cmj : cc test/test_let.ml | $stdlib +o test/test_list.cmi test/test_list.cmj : cc test/test_list.ml | $stdlib +o test/test_literal.cmi test/test_literal.cmj : cc test/test_literal.ml | $stdlib +o test/test_literals.cmi test/test_literals.cmj : cc test/test_literals.ml | $stdlib +o test/test_match_exception.cmi test/test_match_exception.cmj : cc test/test_match_exception.ml | $stdlib +o test/test_mutliple.cmi test/test_mutliple.cmj : cc test/test_mutliple.ml | $stdlib +o test/test_nat64.cmi test/test_nat64.cmj : cc test/test_nat64.ml | $stdlib +o test/test_nested_let.cmi test/test_nested_let.cmj : cc test/test_nested_let.ml | $stdlib +o test/test_nested_print.cmi test/test_nested_print.cmj : cc test/test_nested_print.ml | $stdlib +o test/test_non_export.cmi test/test_non_export.cmj : cc test/test_non_export.ml | $stdlib +o test/test_nullary.cmi test/test_nullary.cmj : cc test/test_nullary.ml | $stdlib +o test/test_obj.cmi test/test_obj.cmj : cc test/test_obj.ml | $stdlib +o test/test_obj_simple_ffi.cmi test/test_obj_simple_ffi.cmj : cc test/test_obj_simple_ffi.ml | $stdlib +o test/test_order.cmi test/test_order.cmj : cc test/test_order.ml | $stdlib +o test/test_order_tailcall.cmi test/test_order_tailcall.cmj : cc test/test_order_tailcall.ml | $stdlib +o test/test_other_exn.cmi test/test_other_exn.cmj : cc test/test_other_exn.ml | $stdlib +o test/test_pack.cmi test/test_pack.cmj : cc test/test_pack.ml | $stdlib +o test/test_per.cmi test/test_per.cmj : cc test/test_per.ml | $stdlib +o test/test_pervasive.cmi test/test_pervasive.cmj : cc test/test_pervasive.ml | $stdlib +o test/test_pervasives2.cmi test/test_pervasives2.cmj : cc test/test_pervasives2.ml | $stdlib +o test/test_pervasives3.cmi test/test_pervasives3.cmj : cc test/test_pervasives3.ml | $stdlib +o test/test_primitive.cmi test/test_primitive.cmj : cc test/test_primitive.ml | $stdlib +o test/test_promise_bind.cmi test/test_promise_bind.cmj : cc test/test_promise_bind.ml | test/promise.cmj $stdlib +o test/test_ramification.cmi test/test_ramification.cmj : cc test/test_ramification.ml | $stdlib +o test/test_react.cmi test/test_react.cmj : cc test/test_react.ml | $stdlib +o test/test_react_case.cmi test/test_react_case.cmj : cc test/test_react_case.ml | $stdlib +o test/test_regex.cmi test/test_regex.cmj : cc test/test_regex.ml | $stdlib +o test/test_require.cmi test/test_require.cmj : cc test/test_require.ml | $stdlib +o test/test_runtime_encoding.cmi test/test_runtime_encoding.cmj : cc test/test_runtime_encoding.ml | $stdlib +o test/test_scope.cmi test/test_scope.cmj : cc test/test_scope.ml | $stdlib +o test/test_seq.cmi test/test_seq.cmj : cc test/test_seq.ml | $stdlib +o test/test_set.cmi test/test_set.cmj : cc test/test_set.ml | $stdlib +o test/test_side_effect_functor.cmi test/test_side_effect_functor.cmj : cc test/test_side_effect_functor.ml | $stdlib +o test/test_simple_include.cmi test/test_simple_include.cmj : cc test/test_simple_include.ml | $stdlib +o test/test_simple_obj.cmi test/test_simple_obj.cmj : cc test/test_simple_obj.ml | $stdlib +o test/test_simple_pattern_match.cmi test/test_simple_pattern_match.cmj : cc test/test_simple_pattern_match.ml | $stdlib +o test/test_simple_ref.cmi test/test_simple_ref.cmj : cc test/test_simple_ref.ml | $stdlib +o test/test_simple_tailcall.cmi test/test_simple_tailcall.cmj : cc test/test_simple_tailcall.ml | $stdlib +o test/test_small.cmi test/test_small.cmj : cc test/test_small.ml | $stdlib +o test/test_sprintf.cmi test/test_sprintf.cmj : cc test/test_sprintf.ml | $stdlib +o test/test_stack.cmi test/test_stack.cmj : cc test/test_stack.ml | $stdlib +o test/test_static_catch_ident.cmi test/test_static_catch_ident.cmj : cc test/test_static_catch_ident.ml | $stdlib +o test/test_string.cmi test/test_string.cmj : cc test/test_string.ml | $stdlib +o test/test_string_case.cmi test/test_string_case.cmj : cc test/test_string_case.ml | $stdlib +o test/test_string_const.cmi test/test_string_const.cmj : cc test/test_string_const.ml | $stdlib +o test/test_string_map.cmi test/test_string_map.cmj : cc test/test_string_map.ml | $stdlib +o test/test_string_switch.cmi test/test_string_switch.cmj : cc test/test_string_switch.ml | $stdlib +o test/test_switch.cmi test/test_switch.cmj : cc test/test_switch.ml | $stdlib +o test/test_trywith.cmi test/test_trywith.cmj : cc test/test_trywith.ml | $stdlib +o test/test_tuple.cmi test/test_tuple.cmj : cc test/test_tuple.ml | $stdlib +o test/test_tuple_destructring.cmi test/test_tuple_destructring.cmj : cc test/test_tuple_destructring.ml | $stdlib +o test/test_type_based_arity.cmi test/test_type_based_arity.cmj : cc test/test_type_based_arity.ml | test/abstract_type.cmj $stdlib +o test/test_u.cmi test/test_u.cmj : cc test/test_u.ml | $stdlib +o test/test_unsafe_cmp.cmi test/test_unsafe_cmp.cmj : cc test/test_unsafe_cmp.ml | $stdlib +o test/test_unsafe_obj_ffi.cmj : cc_cmi test/test_unsafe_obj_ffi.ml | test/test_unsafe_obj_ffi.cmi $stdlib +o test/test_unsafe_obj_ffi.cmi : cc test/test_unsafe_obj_ffi.mli | $stdlib +o test/test_unsafe_obj_ffi_ppx.cmj : cc_cmi test/test_unsafe_obj_ffi_ppx.ml | test/test_unsafe_obj_ffi_ppx.cmi $stdlib +o test/test_unsafe_obj_ffi_ppx.cmi : cc test/test_unsafe_obj_ffi_ppx.mli | $stdlib +o test/test_unsupported_primitive.cmi test/test_unsupported_primitive.cmj : cc test/test_unsupported_primitive.ml | $stdlib +o test/test_while_closure.cmi test/test_while_closure.cmj : cc test/test_while_closure.ml | $stdlib +o test/test_while_side_effect.cmi test/test_while_side_effect.cmj : cc test/test_while_side_effect.ml | $stdlib +o test/test_zero_nullable.cmi test/test_zero_nullable.cmj : cc test/test_zero_nullable.ml | test/mt.cmj $stdlib +o test/testing.cmj : cc_cmi test/testing.ml | test/testing.cmi $stdlib +o test/testing.cmi : cc test/testing.mli | $stdlib +o test/tfloat_record_test.cmi test/tfloat_record_test.cmj : cc test/tfloat_record_test.ml | test/float_array.cmj test/float_record.cmj test/mt.cmj test/mt_global.cmj $stdlib +o test/ticker.cmi test/ticker.cmj : cc test/ticker.ml | $stdlib +o test/to_string_test.cmi test/to_string_test.cmj : cc test/to_string_test.ml | test/mt.cmj $stdlib +o test/topsort_test.cmi test/topsort_test.cmj : cc test/topsort_test.ml | $stdlib +o test/tramp_fib.cmi test/tramp_fib.cmj : cc test/tramp_fib.ml | test/mt.cmj $stdlib +o test/tscanf_test.cmi test/tscanf_test.cmj : cc test/tscanf_test.ml | test/mt.cmj test/mt_global.cmj test/nativeint.cmj test/testing.cmj $stdlib +o test/tuple_alloc.cmi test/tuple_alloc.cmj : cc test/tuple_alloc.ml | $stdlib +o test/type_disambiguate.cmi test/type_disambiguate.cmj : cc test/type_disambiguate.ml | $stdlib +o test/typeof_test.cmi test/typeof_test.cmj : cc test/typeof_test.ml | test/mt.cmj $stdlib +o test/ui_defs.cmi : cc test/ui_defs.mli | $stdlib +o test/unboxed_attribute_test.cmi test/unboxed_attribute_test.cmj : cc test/unboxed_attribute_test.ml | test/mt.cmj $stdlib +o test/unboxed_use_case.cmj : cc_cmi test/unboxed_use_case.ml | test/unboxed_use_case.cmi $stdlib +o test/unboxed_use_case.cmi : cc test/unboxed_use_case.mli | $stdlib +o test/uncurry_glob_test.cmi test/uncurry_glob_test.cmj : cc test/uncurry_glob_test.ml | $stdlib +o test/uncurry_method.cmi test/uncurry_method.cmj : cc test/uncurry_method.ml | $stdlib +o test/uncurry_test.cmj : cc_cmi test/uncurry_test.ml | test/uncurry_test.cmi $stdlib +o test/uncurry_test.cmi : cc test/uncurry_test.mli | $stdlib +o test/undef_regression2_test.cmi test/undef_regression2_test.cmj : cc test/undef_regression2_test.ml | test/mt.cmj $stdlib +o test/undef_regression_test.cmi test/undef_regression_test.cmj : cc test/undef_regression_test.ml | $stdlib +o test/unicode_type_error.cmi test/unicode_type_error.cmj : cc test/unicode_type_error.ml | $stdlib +o test/unit_undefined_test.cmi test/unit_undefined_test.cmj : cc test/unit_undefined_test.ml | test/mt.cmj $stdlib +o test/unitest_string.cmi test/unitest_string.cmj : cc test/unitest_string.ml | $stdlib +o test/unsafe_full_apply_primitive.cmi test/unsafe_full_apply_primitive.cmj : cc test/unsafe_full_apply_primitive.ml | $stdlib +o test/unsafe_obj_external.cmi test/unsafe_obj_external.cmj : cc test/unsafe_obj_external.ml | $stdlib +o test/unsafe_ppx_test.cmi test/unsafe_ppx_test.cmj : cc test/unsafe_ppx_test.ml | test/ffi_js_test.cmj test/mt.cmj $stdlib +o test/unsafe_this.cmj : cc_cmi test/unsafe_this.ml | test/unsafe_this.cmi $stdlib +o test/unsafe_this.cmi : cc test/unsafe_this.mli | $stdlib +o test/update_record_test.cmi test/update_record_test.cmj : cc test/update_record_test.ml | test/mt.cmj $stdlib +o test/utf8_decode_test.cmi test/utf8_decode_test.cmj : cc test/utf8_decode_test.ml | test/mt.cmj $stdlib +o test/variant.cmi test/variant.cmj : cc test/variant.ml | $stdlib +o test/watch_test.cmi test/watch_test.cmj : cc test/watch_test.ml | $stdlib +o test/webpack_config.cmi test/webpack_config.cmj : cc test/webpack_config.ml | $stdlib diff --git a/scripts/ninja.js b/scripts/ninja.js index 8b01f9dbee..91d361d4d7 100755 --- a/scripts/ninja.js +++ b/scripts/ninja.js @@ -35,9 +35,9 @@ var visitorPattern = ` rule p4of command = camlp4of $flags -impl $in -printer o -o $out generator = true -build core/js_fold.ml: p4of core/js_fold.mlp | core/j.ml +o core/js_fold.ml: p4of core/js_fold.mlp | core/j.ml flags = -I core -filter map -filter trash -build core/js_map.ml: p4of core/js_map.mlp | core/j.ml +o core/js_map.ml: p4of core/js_map.mlp | core/j.ml flags = -I core -filter Camlp4FoldGenerator -filter trash `; /** @@ -405,7 +405,7 @@ function targetsToString(files, cwd) { function ninjaBuild(outputs, inputs, rule, deps, cwd, overrides) { var fileOutputs = targetsToString(outputs, cwd); var fileInputs = targetsToString(inputs, cwd); - var stmt = `build ${fileOutputs} : ${rule} ${fileInputs}`; + var stmt = `o ${fileOutputs} : ${rule} ${fileInputs}`; // deps.push(pseudoTarget('../lib/bsc')) if (deps.length > 0) { var fileDeps = targetsToString(deps, cwd); @@ -1411,7 +1411,7 @@ subninja runtime/env.ninja subninja others/env.ninja subninja $stdlib/env.ninja subninja test/env.ninja -build all: phony runtime others $stdlib test +o all: phony runtime others $stdlib test ` ); } else { @@ -1426,7 +1426,7 @@ subninja runtime/build.ninja subninja others/build.ninja subninja $stdlib/build.ninja subninja test/build.ninja -build all: phony runtime others $stdlib test +o all: phony runtime others $stdlib test ` ); writeFileAscii( @@ -1520,13 +1520,13 @@ function preprocessorNinjaSync() { .readdirSync(path.join(jscompDir, "..", "syntax", "src"), "ascii") .filter((x) => x.endsWith(".ml") || x.endsWith(".mli")); var buildNapkinFiles = napkinFiles - .map((file) => `build napkin/${file} : copy ../syntax/src/${file}`) + .map((file) => `o napkin/${file} : copy ../syntax/src/${file}`) .join("\n"); var cppoNative = ` ${useEnv ? getEnnvConfigNinja() : getVendorConfigNinja()} rule link command = $ocamlopt -g -I +compiler-libs $flags $libs $in -o $out -build ${cppoFile}: link ${cppoMonoFile} +o ${cppoFile}: link ${cppoMonoFile} libs = unix.cmxa str.cmxa generator = true ${cppoRule()} @@ -1562,7 +1562,7 @@ ${cppoList("outcome_printer", [ ${cppoList("syntax", [ ["reactjs_jsx_ppx_v3.ml", "reactjs_jsx_ppx.cppo.ml", ""], ])} -build ../${ +o ../${ process.platform }/refmt.exe: link ${refmtMainPath}/refmt_main3.mli ${refmtMainPath}/refmt_main3.ml libs = ocamlcommon.cmxa @@ -1623,52 +1623,52 @@ rule mk_bsversion generator = true rule gcc command = $ocamlopt -ccopt -fPIC -ccopt -O2 -ccopt -o -ccopt $out -c $in -build stubs/ext_basic_hash_stubs.o : gcc stubs/ext_basic_hash_stubs.c +o stubs/ext_basic_hash_stubs.o : gcc stubs/ext_basic_hash_stubs.c rule ocamlmklib command = $ocamlmklib -v $in -o $name && touch $out rule mk_keywords command = $ocaml $in generator = true -build ext/js_reserved_map.ml: mk_keywords ../scripts/build_sorted.ml keywords.list +o ext/js_reserved_map.ml: mk_keywords ../scripts/build_sorted.ml keywords.list -build stubs/libbs_hash.a stubs/dllbs_hash.so: ocamlmklib stubs/ext_basic_hash_stubs.o +o stubs/libbs_hash.a stubs/dllbs_hash.so: ocamlmklib stubs/ext_basic_hash_stubs.o name = stubs/bs_hash rule stubslib command = $ocamlopt -a $ml -o $out -cclib $clib -build stubs/stubs.cmxa : stubslib stubs/bs_hash_stubs.cmx stubs/libbs_hash.a +o stubs/stubs.cmxa : stubslib stubs/bs_hash_stubs.cmx stubs/libbs_hash.a ml = stubs/bs_hash_stubs.cmx clib = stubs/libbs_hash.a ${generateVisitorPattern()} -build common/bs_version.ml : mk_bsversion build_version.js ../package.json +o common/bs_version.ml : mk_bsversion build_version.js ../package.json -build ../${ +o ../${ process.platform }/bsc: link js_parser/js_parser.cmxa stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa syntax/syntax.cmxa depends/depends.cmxa super_errors/super_errors.cmxa outcome_printer/outcome_printer.cmxa core/core.cmxa napkin/napkin.cmxa main/js_main.cmx libs = ocamlcommon.cmxa -build ../${ +o ../${ process.platform }/bsb.exe: link stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa bsb/bsb.cmxa main/bsb_main.cmx libs = ocamlcommon.cmxa unix.cmxa str.cmxa -build ../${ +o ../${ process.platform }/bsb_helper.exe: link stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa bsb/bsb.cmxa bsb_helper/bsb_helper.cmxa main/bsb_helper_main.cmx libs = ocamlcommon.cmxa unix.cmxa str.cmxa -build ./bin/bspack.exe: link stubs/stubs.cmxa ext/ext.cmxa ./common/common.cmxa ./syntax/syntax.cmxa depends/depends.cmxa ./main/bspack_main.cmx +o ./bin/bspack.exe: link stubs/stubs.cmxa ext/ext.cmxa ./common/common.cmxa ./syntax/syntax.cmxa depends/depends.cmxa ./main/bspack_main.cmx libs = unix.cmxa ocamlcommon.cmxa flags = -I ./bin -w -40-30 -build ./bin/cmjdump.exe: link ./stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa syntax/syntax.cmxa depends/depends.cmxa core/core.cmxa main/cmjdump_main.cmx +o ./bin/cmjdump.exe: link ./stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa syntax/syntax.cmxa depends/depends.cmxa core/core.cmxa main/cmjdump_main.cmx libs = ocamlcommon.cmxa -build ./bin/cmij.exe: link ./stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa syntax/syntax.cmxa depends/depends.cmxa core/core.cmxa main/cmij_main.cmx +o ./bin/cmij.exe: link ./stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa syntax/syntax.cmxa depends/depends.cmxa core/core.cmxa main/cmij_main.cmx libs = ocamlcommon.cmxa rule bspack command = ./bin/bspack.exe $flags -bs-main $main -o $out depfile = $out.d generator = true -build ./bin/tests.exe: link ounit/ounit.cmxa stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa syntax/syntax.cmxa depends/depends.cmxa bsb/bsb.cmxa bsb_helper/bsb_helper.cmxa core/core.cmxa ounit_tests/ounit_tests.cmxa main/ounit_tests_main.cmx +o ./bin/tests.exe: link ounit/ounit.cmxa stubs/stubs.cmxa ext/ext.cmxa common/common.cmxa syntax/syntax.cmxa depends/depends.cmxa bsb/bsb.cmxa bsb_helper/bsb_helper.cmxa core/core.cmxa ounit_tests/ounit_tests.cmxa main/ounit_tests_main.cmx libs = str.cmxa unix.cmxa ocamlcommon.cmxa ${mllRule} @@ -1677,7 +1677,7 @@ ${mllList("ext", ["ext_json_parse.mll"])} rule mk_shared command = $ocamlopt -I +compiler-libs -shared $flags -o $out $in -build ../odoc_gen/generator.cmxs : mk_shared ../odoc_gen/generator.mli ../odoc_gen/generator.ml +o ../odoc_gen/generator.cmxs : mk_shared ../odoc_gen/generator.mli ../odoc_gen/generator.ml flags = -I +ocamldoc -I ../odoc_gen -absname `; /** @@ -1747,13 +1747,13 @@ build ../odoc_gen/generator.cmxs : mk_shared ../odoc_gen/generator.mli ../odoc_g if (y.ext === ".cmx") { var intf = path.join(y.dir, y.name + ".cmi"); var ml = path.join(y.dir, y.name + ".ml"); - return `build ${ + return `o ${ deps.has(intf) ? target : [target, intf].join(" ") } : optc ${ml} | ${setSortedToStringAsNativeDeps(deps)}`; } else { // === 'cmi' var mli = path.join(y.dir, y.name + ".mli"); - return `build ${target} : optc ${mli} | ${setSortedToStringAsNativeDeps( + return `o ${target} : optc ${mli} | ${setSortedToStringAsNativeDeps( deps )}`; } @@ -1762,7 +1762,7 @@ build ../odoc_gen/generator.cmxs : mk_shared ../odoc_gen/generator.mli ../odoc_g libs.forEach((x) => { var output = sortFilesByDeps(x.libs, map); var name = x.name; - stmts.push(`build ${name}/${name}.cmxa : archive ${output.join(" ")}`); + stmts.push(`o ${name}/${name}.cmxa : archive ${output.join(" ")}`); }); writeFileAscii( From c6931eb1794f46a52ea536c2380ac952c85fd971 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Wed, 21 Oct 2020 19:40:05 +0800 Subject: [PATCH 07/14] continue fixes --- scripts/install.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install.js b/scripts/install.js index 1c544d5515..ad0d42f3af 100644 --- a/scripts/install.js +++ b/scripts/install.js @@ -141,7 +141,7 @@ subninja runtime/release.ninja subninja others/release.ninja subninja $stdlib/release.ninja ${process.env.BS_TRAVIS_CI ? "subninja test/build.ninja\n" : "\n"} -build all: phony runtime others $stdlib +o all: phony runtime others $stdlib `; var filePath = path.join(jscomp_dir, "release.ninja"); fs.writeFileSync(filePath, releaseNinja, "ascii"); From 9b228e73602825cf3d59223ca1ab45803cccdbf7 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Thu, 22 Oct 2020 21:05:44 +0800 Subject: [PATCH 08/14] adapt new build engine --- jscomp/bsb/bsb_ninja_file_groups.ml | 8 ++--- jscomp/bsb/bsb_ninja_rule.ml | 14 ++++----- jscomp/bsb/bsb_ninja_targets.ml | 12 -------- jscomp/bsb/bsb_ninja_targets.mli | 2 -- lib/4.06.1/bsb.ml | 47 +++++++---------------------- 5 files changed, 21 insertions(+), 62 deletions(-) diff --git a/jscomp/bsb/bsb_ninja_file_groups.ml b/jscomp/bsb/bsb_ninja_file_groups.ml index 8ef3cbd2ba..13f81a84fd 100644 --- a/jscomp/bsb/bsb_ninja_file_groups.ml +++ b/jscomp/bsb/bsb_ninja_file_groups.ml @@ -131,12 +131,10 @@ let emit_module_build ) in Bsb_ninja_targets.output_build oc - ~outputs:[output_cmj] - ~implicit_outputs: - (if has_intf_file then output_js else output_cmi::output_js ) - ~inputs:[output_ast] - ~implicit_deps:(if has_intf_file then [output_cmi] else [] ) ~order_only_deps:[output_d] + ~outputs: + (if has_intf_file then output_cmj :: output_js else output_cmj::output_cmi::output_js) + ~inputs:(if has_intf_file then [output_ast; output_cmi] else [output_ast]) ~rule (* ; {output_cmj; output_cmi} *) diff --git a/jscomp/bsb/bsb_ninja_rule.ml b/jscomp/bsb/bsb_ninja_rule.ml index 52660efa90..6dc464e597 100644 --- a/jscomp/bsb/bsb_ninja_rule.ml +++ b/jscomp/bsb/bsb_ninja_rule.ml @@ -170,7 +170,7 @@ let make_custom_rules Ext_buffer.add_string buf package_name; Ext_buffer.add_string buf (Bsb_package_specs.package_flag_of_package_specs package_specs "$in_d") end; - Ext_buffer.add_string buf " -o $out $in"; + Ext_buffer.add_string buf " -o $out $i"; begin match postbuild with | None -> () | Some cmd -> @@ -216,7 +216,7 @@ let make_custom_rules ); Ext_buffer.add_char_string buf ' ' bsc_flags; - Ext_buffer.add_string buf " -bs-ast -o $out $in"; + Ext_buffer.add_string buf " -bs-ast -o $out $i"; Ext_buffer.contents buf in let build_ast = @@ -232,8 +232,8 @@ let make_custom_rules define ~command:( if Ext_sys.is_windows_or_cygwin then - "cmd.exe /C copy /Y $in $out > null" - else "cp $in $out" + "cmd.exe /C copy /Y $i $out > null" + else "cp $i $out" ) "copy_resource" in @@ -241,13 +241,13 @@ let make_custom_rules define ~restat:() ~command: - (bs_dep ^ " -hash " ^ digest ^ ns_flag ^ " $in") + (bs_dep ^ " -hash " ^ digest ^ ns_flag ^ " $i") "deps" in let build_bin_deps_dev = define ~restat:() ~command: - (bs_dep ^ " -g -hash " ^ digest ^ ns_flag ^ " $in") + (bs_dep ^ " -g -hash " ^ digest ^ ns_flag ^ " $i") "deps_dev" in let aux ~name ~read_cmi ~postbuild = define @@ -278,7 +278,7 @@ let make_custom_rules ~name:"mi" in let build_package = define - ~command:(bsc ^ " -w -49 -color always -no-alias-deps $in") + ~command:(bsc ^ " -w -49 -color always -no-alias-deps $i") ~restat:() "build_package" in diff --git a/jscomp/bsb/bsb_ninja_targets.ml b/jscomp/bsb/bsb_ninja_targets.ml index bf1ce5a7fb..892e66c3d0 100644 --- a/jscomp/bsb/bsb_ninja_targets.ml +++ b/jscomp/bsb/bsb_ninja_targets.ml @@ -28,8 +28,6 @@ let oc_list xs oc = let output_build ?(order_only_deps=[]) - ?(implicit_deps=[]) - ?(implicit_outputs=[]) ~outputs ~inputs ~rule @@ -37,19 +35,9 @@ let output_build let rule = Bsb_ninja_rule.get_name rule oc in (* Trigger building if not used *) output_string oc "o"; oc_list outputs oc; - if implicit_outputs <> [] then begin - output_string oc " |"; - oc_list implicit_outputs oc - end; output_string oc " : "; output_string oc rule; oc_list inputs oc; - if implicit_deps <> [] then - begin - output_string oc " |"; - oc_list implicit_deps oc - end - ; if order_only_deps <> [] then begin output_string oc " ||"; diff --git a/jscomp/bsb/bsb_ninja_targets.mli b/jscomp/bsb/bsb_ninja_targets.mli index a82b385c27..d7c2ab7ba5 100644 --- a/jscomp/bsb/bsb_ninja_targets.mli +++ b/jscomp/bsb/bsb_ninja_targets.mli @@ -32,8 +32,6 @@ *) val output_build : ?order_only_deps:string list -> - ?implicit_deps:string list -> - ?implicit_outputs: string list -> outputs:string list -> inputs:string list -> rule:Bsb_ninja_rule.t -> diff --git a/lib/4.06.1/bsb.ml b/lib/4.06.1/bsb.ml index d7b2e97d1e..1ff02887c9 100644 --- a/lib/4.06.1/bsb.ml +++ b/lib/4.06.1/bsb.ml @@ -13191,7 +13191,7 @@ let make_custom_rules Ext_buffer.add_string buf package_name; Ext_buffer.add_string buf (Bsb_package_specs.package_flag_of_package_specs package_specs "$in_d") end; - Ext_buffer.add_string buf " -o $out $in"; + Ext_buffer.add_string buf " -o $out $i"; begin match postbuild with | None -> () | Some cmd -> @@ -13237,7 +13237,7 @@ let make_custom_rules ); Ext_buffer.add_char_string buf ' ' bsc_flags; - Ext_buffer.add_string buf " -bs-ast -o $out $in"; + Ext_buffer.add_string buf " -bs-ast -o $out $i"; Ext_buffer.contents buf in let build_ast = @@ -13253,8 +13253,8 @@ let make_custom_rules define ~command:( if Ext_sys.is_windows_or_cygwin then - "cmd.exe /C copy /Y $in $out > null" - else "cp $in $out" + "cmd.exe /C copy /Y $i $out > null" + else "cp $i $out" ) "copy_resource" in @@ -13262,13 +13262,13 @@ let make_custom_rules define ~restat:() ~command: - (bs_dep ^ " -hash " ^ digest ^ ns_flag ^ " $in") + (bs_dep ^ " -hash " ^ digest ^ ns_flag ^ " $i") "deps" in let build_bin_deps_dev = define ~restat:() ~command: - (bs_dep ^ " -g -hash " ^ digest ^ ns_flag ^ " $in") + (bs_dep ^ " -g -hash " ^ digest ^ ns_flag ^ " $i") "deps_dev" in let aux ~name ~read_cmi ~postbuild = define @@ -13299,7 +13299,7 @@ let make_custom_rules ~name:"mi" in let build_package = define - ~command:(bsc ^ " -w -49 -color always -no-alias-deps $in") + ~command:(bsc ^ " -w -49 -color always -no-alias-deps $i") ~restat:() "build_package" in @@ -13366,9 +13366,6 @@ module Bsb_ninja_targets : sig however, for the command we don't need pass `-o` *) val output_build : - ?order_only_deps:string list -> - ?implicit_deps:string list -> - ?implicit_outputs: string list -> outputs:string list -> inputs:string list -> rule:Bsb_ninja_rule.t -> @@ -13416,9 +13413,6 @@ let oc_list xs oc = Ext_list.iter xs (fun s -> output_string oc Ext_string.single_space ; output_string oc s) let output_build - ?(order_only_deps=[]) - ?(implicit_deps=[]) - ?(implicit_outputs=[]) ~outputs ~inputs ~rule @@ -13426,25 +13420,9 @@ let output_build let rule = Bsb_ninja_rule.get_name rule oc in (* Trigger building if not used *) output_string oc "o"; oc_list outputs oc; - if implicit_outputs <> [] then begin - output_string oc " |"; - oc_list implicit_outputs oc - end; output_string oc " : "; output_string oc rule; oc_list inputs oc; - if implicit_deps <> [] then - begin - output_string oc " |"; - oc_list implicit_deps oc - end - ; - if order_only_deps <> [] then - begin - output_string oc " ||"; - oc_list order_only_deps oc - end - ; output_string oc "\n" let phony ?(order_only_deps=[]) ~inputs ~output oc = @@ -13690,7 +13668,7 @@ let emit_module_build ; Bsb_ninja_targets.output_build oc ~outputs:[output_cmi] - ~order_only_deps:[output_d] + (* ~order_only_deps:[output_d] *) ~inputs:[output_iast] ~rule:(if is_dev then rules.mi_dev else rules.mi) ; @@ -13705,12 +13683,9 @@ let emit_module_build ) in Bsb_ninja_targets.output_build oc - ~outputs:[output_cmj] - ~implicit_outputs: - (if has_intf_file then output_js else output_cmi::output_js ) - ~inputs:[output_ast] - ~implicit_deps:(if has_intf_file then [output_cmi] else [] ) - ~order_only_deps:[output_d] + ~outputs: + (if has_intf_file then output_cmj :: output_js else output_cmj::output_cmi::output_js) + ~inputs:(if has_intf_file then [output_ast; output_cmi] else [output_ast]) ~rule (* ; {output_cmj; output_cmi} *) From eac1dd71b772a8ce2b433b01ee6679e326add85a Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Thu, 22 Oct 2020 21:07:36 +0800 Subject: [PATCH 09/14] FIX CI --- jscomp/snapshot.ninja | 20 ++++++++++---------- lib/4.06.1/bsb.ml | 11 ++++++++++- 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/jscomp/snapshot.ninja b/jscomp/snapshot.ninja index 689418d01f..cd3200e6b9 100644 --- a/jscomp/snapshot.ninja +++ b/jscomp/snapshot.ninja @@ -15,22 +15,22 @@ OCAML_SRC_TOOLS=$native_ocaml_path/tools includes = -I js_parser -I stubs -I ext -I common -I syntax -I depends -I core -I super_errors -I outcome_printer -I bsb -I ounit -I ounit_tests -I napkin -I main SNAP=../lib/$snapshot_path -build snapshot: phony $SNAP/whole_compiler.ml $SNAP/bsb_helper.ml $SNAP/bsb.ml $SNAP/unstable/all_ounit_tests.ml +o snapshot: phony $SNAP/whole_compiler.ml $SNAP/bsb_helper.ml $SNAP/bsb.ml $SNAP/unstable/all_ounit_tests.ml # $SNAP/bspp.ml -build $SNAP/whole_compiler.ml: bspack | ./bin/bspack.exe $LTO +o $SNAP/whole_compiler.ml: bspack | ./bin/bspack.exe $LTO flags = ${releaseMode} -D BS_ONLY=true -bs-MD -module-alias Config=Config_whole_compiler -bs-exclude-I config -I $OCAML_SRC_UTILS -I $OCAML_SRC_PARSING -I $OCAML_SRC_TYPING -I $OCAML_SRC_BYTECOMP -I $OCAML_SRC_DRIVER ${includes} main = Js_main post_process = && node $LTO $SNAP/whole_compiler.ml -build $SNAP/bsb_helper.ml: bspack | ./bin/bspack.exe $LTO +o $SNAP/bsb_helper.ml: bspack | ./bin/bspack.exe $LTO flags = -bs-MD ${releaseMode} -I stubs -I common -I ext -I syntax -I depends -I bsb_helper -I main main = Bsb_helper_main -build $SNAP/bsb.ml: bspack | ./bin/bspack.exe $LTO +o $SNAP/bsb.ml: bspack | ./bin/bspack.exe $LTO flags = -D BS_MIN_LEX_DEPS=true -bs-MD ${releaseMode} -I $OCAML_SRC_UTILS -I $OCAML_SRC_PARSING -I stubs -I common -I ext -I syntax -I depends -I bsb -I ext -I main main = Bsb_main -# build $SNAP/bspp.ml: bspack | ./bin/bspack.exe $LTO +# o $SNAP/bspp.ml: bspack | ./bin/bspack.exe $LTO # flags = -D BS_MIN_LEX_DEPS=true ${releaseMode} -bs-MD -module-alias Config=Config_whole_compiler -I $OCAML_SRC_UTILS -I $OCAML_SRC_PARSING?parser -I common -I ext -I syntax -I depends -I bspp -I core -I main # main = Bspp_main @@ -38,19 +38,19 @@ build $SNAP/bsb.ml: bspack | ./bin/bspack.exe $LTO -build $SNAP/unstable/all_ounit_tests.ml: bspack | ./bin/bspack.exe $LTO +o $SNAP/unstable/all_ounit_tests.ml: bspack | ./bin/bspack.exe $LTO flags = -bs-MD -I ounit -I ounit_tests -I stubs -I bsb -I bsb_helper -I common -I ext -I syntax -I depends -I bspp -I core -I main main = Ounit_tests_main -build $SNAP/unstable/bspack.ml: bspack | ./bin/bspack.exe $LTO +o $SNAP/unstable/bspack.ml: bspack | ./bin/bspack.exe $LTO flags = -D BS_PACK=true -bs-MD -module-alias Config=Config_whole_compiler -I $OCAML_SRC_PARSING -I $OCAML_SRC_UTILS -I stubs -I ext -I common -I depends -I core -I main -bs-main Bspack_main main = Bspack_main -build $SNAP/unstable/js_compiler.ml: bspack | ./bin/bspack.exe $LTO +o $SNAP/unstable/js_compiler.ml: bspack | ./bin/bspack.exe $LTO flags = -D BS_BROWSER=true -bs-MD -module-alias Config=Config_whole_compiler -bs-exclude-I config -I $OCAML_SRC_UTILS -I $OCAML_SRC_PARSING -I $OCAML_SRC_TYPING -I $OCAML_SRC_BYTECOMP -I $OCAML_SRC_DRIVER -I stubs -I ext -I syntax -I depends -I common -I core -I super_errors -I bsb -I outcome_printer -I js_parser -I main main = Jsoo_main -build $SNAP/unstable/js_refmt_compiler.ml: bspack | ./bin/bspack.exe $LTO +o $SNAP/unstable/js_refmt_compiler.ml: bspack | ./bin/bspack.exe $LTO flags = -D BS_BROWSER=true -bs-MD -module-alias Config=Config_whole_compiler -bs-exclude-I config -I $OCAML_SRC_UTILS -I $OCAML_SRC_PARSING -I $OCAML_SRC_TYPING -I $OCAML_SRC_BYTECOMP -I $OCAML_SRC_DRIVER -I js_parser -I stubs -I ext -I syntax -I depends -I common -I core -I super_errors -I bsb -I outcome_printer -I js_parser -I main -I refmt main = Jsoo_refmt_main @@ -60,4 +60,4 @@ subninja build.ninja # rule bsbnative # command = $ocamlopt -w -a unix.cmxa str.cmxa ./stubs/ext_basic_hash_stubs.c $in -o $out # only check if it compiles -# build $SNAP/unstable/bsb_native.exe: bsbnative ./bin/bsb_native.ml +# o $SNAP/unstable/bsb_native.exe: bsbnative ./bin/bsb_native.ml diff --git a/lib/4.06.1/bsb.ml b/lib/4.06.1/bsb.ml index 1ff02887c9..1b9ef8a789 100644 --- a/lib/4.06.1/bsb.ml +++ b/lib/4.06.1/bsb.ml @@ -13366,6 +13366,7 @@ module Bsb_ninja_targets : sig however, for the command we don't need pass `-o` *) val output_build : + ?order_only_deps:string list -> outputs:string list -> inputs:string list -> rule:Bsb_ninja_rule.t -> @@ -13413,6 +13414,7 @@ let oc_list xs oc = Ext_list.iter xs (fun s -> output_string oc Ext_string.single_space ; output_string oc s) let output_build + ?(order_only_deps=[]) ~outputs ~inputs ~rule @@ -13423,6 +13425,12 @@ let output_build output_string oc " : "; output_string oc rule; oc_list inputs oc; + if order_only_deps <> [] then + begin + output_string oc " ||"; + oc_list order_only_deps oc + end + ; output_string oc "\n" let phony ?(order_only_deps=[]) ~inputs ~output oc = @@ -13668,7 +13676,7 @@ let emit_module_build ; Bsb_ninja_targets.output_build oc ~outputs:[output_cmi] - (* ~order_only_deps:[output_d] *) + ~order_only_deps:[output_d] ~inputs:[output_iast] ~rule:(if is_dev then rules.mi_dev else rules.mi) ; @@ -13683,6 +13691,7 @@ let emit_module_build ) in Bsb_ninja_targets.output_build oc + ~order_only_deps:[output_d] ~outputs: (if has_intf_file then output_cmj :: output_js else output_cmj::output_cmi::output_js) ~inputs:(if has_intf_file then [output_ast; output_cmi] else [output_ast]) From d4f0e2f9bc3292cb4c6a0a386b27934be0d97801 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Thu, 22 Oct 2020 21:29:10 +0800 Subject: [PATCH 10/14] we do use $in in deps processing --- jscomp/bsb/bsb_ninja_rule.ml | 4 ++-- lib/4.06.1/bsb.ml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/jscomp/bsb/bsb_ninja_rule.ml b/jscomp/bsb/bsb_ninja_rule.ml index 6dc464e597..81a321d62a 100644 --- a/jscomp/bsb/bsb_ninja_rule.ml +++ b/jscomp/bsb/bsb_ninja_rule.ml @@ -241,13 +241,13 @@ let make_custom_rules define ~restat:() ~command: - (bs_dep ^ " -hash " ^ digest ^ ns_flag ^ " $i") + (bs_dep ^ " -hash " ^ digest ^ ns_flag ^ " $in") "deps" in let build_bin_deps_dev = define ~restat:() ~command: - (bs_dep ^ " -g -hash " ^ digest ^ ns_flag ^ " $i") + (bs_dep ^ " -g -hash " ^ digest ^ ns_flag ^ " $in") "deps_dev" in let aux ~name ~read_cmi ~postbuild = define diff --git a/lib/4.06.1/bsb.ml b/lib/4.06.1/bsb.ml index 1b9ef8a789..1bb89096ad 100644 --- a/lib/4.06.1/bsb.ml +++ b/lib/4.06.1/bsb.ml @@ -13262,13 +13262,13 @@ let make_custom_rules define ~restat:() ~command: - (bs_dep ^ " -hash " ^ digest ^ ns_flag ^ " $i") + (bs_dep ^ " -hash " ^ digest ^ ns_flag ^ " $in") "deps" in let build_bin_deps_dev = define ~restat:() ~command: - (bs_dep ^ " -g -hash " ^ digest ^ ns_flag ^ " $i") + (bs_dep ^ " -g -hash " ^ digest ^ ns_flag ^ " $in") "deps_dev" in let aux ~name ~read_cmi ~postbuild = define From 27a7a51f849db84b86aebe28ea75c8a20604af63 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Fri, 23 Oct 2020 09:29:02 +0800 Subject: [PATCH 11/14] comment order only deps --- jscomp/bsb/bsb_ninja_file_groups.ml | 4 ++-- jscomp/bsb/bsb_ninja_targets.ml | 6 +++--- jscomp/bsb/bsb_ninja_targets.mli | 2 +- lib/4.06.1/bsb.ml | 12 ++++++------ 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/jscomp/bsb/bsb_ninja_file_groups.ml b/jscomp/bsb/bsb_ninja_file_groups.ml index 13f81a84fd..01b22babd7 100644 --- a/jscomp/bsb/bsb_ninja_file_groups.ml +++ b/jscomp/bsb/bsb_ninja_file_groups.ml @@ -116,7 +116,7 @@ let emit_module_build ; Bsb_ninja_targets.output_build oc ~outputs:[output_cmi] - ~order_only_deps:[output_d] + (* ~order_only_deps:[output_d] *) ~inputs:[output_iast] ~rule:(if is_dev then rules.mi_dev else rules.mi) ; @@ -131,7 +131,7 @@ let emit_module_build ) in Bsb_ninja_targets.output_build oc - ~order_only_deps:[output_d] + (* ~order_only_deps:[output_d] *) ~outputs: (if has_intf_file then output_cmj :: output_js else output_cmj::output_cmi::output_js) ~inputs:(if has_intf_file then [output_ast; output_cmi] else [output_ast]) diff --git a/jscomp/bsb/bsb_ninja_targets.ml b/jscomp/bsb/bsb_ninja_targets.ml index 892e66c3d0..dab2f418c2 100644 --- a/jscomp/bsb/bsb_ninja_targets.ml +++ b/jscomp/bsb/bsb_ninja_targets.ml @@ -27,7 +27,7 @@ let oc_list xs oc = Ext_list.iter xs (fun s -> output_string oc Ext_string.single_space ; output_string oc s) let output_build - ?(order_only_deps=[]) + (* ?(order_only_deps=[]) *) ~outputs ~inputs ~rule @@ -38,12 +38,12 @@ let output_build output_string oc " : "; output_string oc rule; oc_list inputs oc; - if order_only_deps <> [] then + (* if order_only_deps <> [] then begin output_string oc " ||"; oc_list order_only_deps oc end - ; + ; *) output_string oc "\n" let phony ?(order_only_deps=[]) ~inputs ~output oc = diff --git a/jscomp/bsb/bsb_ninja_targets.mli b/jscomp/bsb/bsb_ninja_targets.mli index d7c2ab7ba5..d5f8816b62 100644 --- a/jscomp/bsb/bsb_ninja_targets.mli +++ b/jscomp/bsb/bsb_ninja_targets.mli @@ -31,7 +31,7 @@ however, for the command we don't need pass `-o` *) val output_build : - ?order_only_deps:string list -> + (* ?order_only_deps:string list -> *) outputs:string list -> inputs:string list -> rule:Bsb_ninja_rule.t -> diff --git a/lib/4.06.1/bsb.ml b/lib/4.06.1/bsb.ml index 1bb89096ad..9b8702554a 100644 --- a/lib/4.06.1/bsb.ml +++ b/lib/4.06.1/bsb.ml @@ -13366,7 +13366,7 @@ module Bsb_ninja_targets : sig however, for the command we don't need pass `-o` *) val output_build : - ?order_only_deps:string list -> + (* ?order_only_deps:string list -> *) outputs:string list -> inputs:string list -> rule:Bsb_ninja_rule.t -> @@ -13414,7 +13414,7 @@ let oc_list xs oc = Ext_list.iter xs (fun s -> output_string oc Ext_string.single_space ; output_string oc s) let output_build - ?(order_only_deps=[]) + (* ?(order_only_deps=[]) *) ~outputs ~inputs ~rule @@ -13425,12 +13425,12 @@ let output_build output_string oc " : "; output_string oc rule; oc_list inputs oc; - if order_only_deps <> [] then + (* if order_only_deps <> [] then begin output_string oc " ||"; oc_list order_only_deps oc end - ; + ; *) output_string oc "\n" let phony ?(order_only_deps=[]) ~inputs ~output oc = @@ -13676,7 +13676,7 @@ let emit_module_build ; Bsb_ninja_targets.output_build oc ~outputs:[output_cmi] - ~order_only_deps:[output_d] + (* ~order_only_deps:[output_d] *) ~inputs:[output_iast] ~rule:(if is_dev then rules.mi_dev else rules.mi) ; @@ -13691,7 +13691,7 @@ let emit_module_build ) in Bsb_ninja_targets.output_build oc - ~order_only_deps:[output_d] + (* ~order_only_deps:[output_d] *) ~outputs: (if has_intf_file then output_cmj :: output_js else output_cmj::output_cmi::output_js) ~inputs:(if has_intf_file then [output_ast; output_cmi] else [output_ast]) From c0c3e76ef5fe7f51fc58c946eb44d6c2b31c9856 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Fri, 23 Oct 2020 09:29:22 +0800 Subject: [PATCH 12/14] update build engine --- ninja | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ninja b/ninja index 178de53a1b..1ad83764e4 160000 --- a/ninja +++ b/ninja @@ -1 +1 @@ -Subproject commit 178de53a1b666793fce33983ce19490979b04a04 +Subproject commit 1ad83764e4e1cac8e45fb09e24846e4c17c1975b From b8d18f35045f2f2e4bfcb5e83c86d7b7c8bb7ee4 Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Fri, 23 Oct 2020 02:32:36 +0100 Subject: [PATCH 13/14] update build engine --- linux/ninja.exe | Bin 171080 -> 166992 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/linux/ninja.exe b/linux/ninja.exe index c71788af66abb39f53401a29db294790d8b1774e..5c1a151c3796d3cd64badae64b2174268e116f6e 100755 GIT binary patch delta 52568 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 E2aG%&d;kCd From eb83f4669b2ad51a440d43a69f37cb40ce0a517c Mon Sep 17 00:00:00 2001 From: Hongbo Zhang Date: Fri, 23 Oct 2020 09:59:45 +0800 Subject: [PATCH 14/14] tweak dyndep --- jscomp/bsb/bsb_ninja_rule.ml | 11 +++++------ jscomp/bsb/bsb_ninja_targets.ml | 7 ------- lib/4.06.1/bsb.ml | 18 +++++------------- 3 files changed, 10 insertions(+), 26 deletions(-) diff --git a/jscomp/bsb/bsb_ninja_rule.ml b/jscomp/bsb/bsb_ninja_rule.ml index 81a321d62a..45f88740cc 100644 --- a/jscomp/bsb/bsb_ninja_rule.ml +++ b/jscomp/bsb/bsb_ninja_rule.ml @@ -37,14 +37,13 @@ let get_name (x : t) oc = x.name oc let print_rule (oc : out_channel) ?description ?(restat : unit option) - ?dyndep + ?(dyndep : unit option) ~command name = output_string oc "rule "; output_string oc name ; output_string oc "\n"; output_string oc " command = "; output_string oc command; output_string oc "\n"; - Ext_option.iter dyndep (fun f -> - output_string oc " dyndep = "; output_string oc f; output_string oc "\n" - ); + (if dyndep <> None then + output_string oc " dyndep = 1\n"); (if restat <> None then output_string oc " restat = 1\n"); begin match description with @@ -254,14 +253,14 @@ let make_custom_rules ~command:(mk_ml_cmj_cmd ~read_cmi ~is_dev:false ~postbuild) - ~dyndep:"$in_e.d" + ~dyndep:() ~restat:() (* Always restat when having mli *) name, define ~command:(mk_ml_cmj_cmd ~read_cmi ~is_dev:true ~postbuild) - ~dyndep:"$in_e.d" + ~dyndep:() ~restat:() (* Always restat when having mli *) (name ^ "_dev") in diff --git a/jscomp/bsb/bsb_ninja_targets.ml b/jscomp/bsb/bsb_ninja_targets.ml index dab2f418c2..4b685f248a 100644 --- a/jscomp/bsb/bsb_ninja_targets.ml +++ b/jscomp/bsb/bsb_ninja_targets.ml @@ -27,7 +27,6 @@ let oc_list xs oc = Ext_list.iter xs (fun s -> output_string oc Ext_string.single_space ; output_string oc s) let output_build - (* ?(order_only_deps=[]) *) ~outputs ~inputs ~rule @@ -38,12 +37,6 @@ let output_build output_string oc " : "; output_string oc rule; oc_list inputs oc; - (* if order_only_deps <> [] then - begin - output_string oc " ||"; - oc_list order_only_deps oc - end - ; *) output_string oc "\n" let phony ?(order_only_deps=[]) ~inputs ~output oc = diff --git a/lib/4.06.1/bsb.ml b/lib/4.06.1/bsb.ml index 9b8702554a..39779e9872 100644 --- a/lib/4.06.1/bsb.ml +++ b/lib/4.06.1/bsb.ml @@ -13058,14 +13058,13 @@ let get_name (x : t) oc = x.name oc let print_rule (oc : out_channel) ?description ?(restat : unit option) - ?dyndep + ?(dyndep : unit option) ~command name = output_string oc "rule "; output_string oc name ; output_string oc "\n"; output_string oc " command = "; output_string oc command; output_string oc "\n"; - Ext_option.iter dyndep (fun f -> - output_string oc " dyndep = "; output_string oc f; output_string oc "\n" - ); + (if dyndep <> None then + output_string oc " dyndep = 1\n"); (if restat <> None then output_string oc " restat = 1\n"); begin match description with @@ -13275,14 +13274,14 @@ let make_custom_rules ~command:(mk_ml_cmj_cmd ~read_cmi ~is_dev:false ~postbuild) - ~dyndep:"$in_e.d" + ~dyndep:() ~restat:() (* Always restat when having mli *) name, define ~command:(mk_ml_cmj_cmd ~read_cmi ~is_dev:true ~postbuild) - ~dyndep:"$in_e.d" + ~dyndep:() ~restat:() (* Always restat when having mli *) (name ^ "_dev") in @@ -13414,7 +13413,6 @@ let oc_list xs oc = Ext_list.iter xs (fun s -> output_string oc Ext_string.single_space ; output_string oc s) let output_build - (* ?(order_only_deps=[]) *) ~outputs ~inputs ~rule @@ -13425,12 +13423,6 @@ let output_build output_string oc " : "; output_string oc rule; oc_list inputs oc; - (* if order_only_deps <> [] then - begin - output_string oc " ||"; - oc_list order_only_deps oc - end - ; *) output_string oc "\n" let phony ?(order_only_deps=[]) ~inputs ~output oc =