Skip to content

Commit e5725f9

Browse files
committed
1.generate merlin by default 2. install sources of public interface for merlin too
1 parent 3c70b6b commit e5725f9

File tree

3 files changed

+118
-130
lines changed

3 files changed

+118
-130
lines changed

jscomp/bin/bsb.ml

Lines changed: 59 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -6964,7 +6964,7 @@ let internal_override_package_specs str =
69646964
) String_set.empty lst
69656965

69666966

6967-
let generate_merlin = ref false
6967+
let generate_merlin = ref true
69686968

69696969
let get_generate_merlin () = !generate_merlin
69706970

@@ -7291,7 +7291,7 @@ module Rules = struct
72917291
print_rule oc ~description ?depfile ?restat ~command name;
72927292
self.used <- true
72937293
end ;
7294-
self.rule_name
7294+
self.rule_name
72957295
} in self
72967296

72977297

@@ -7346,7 +7346,7 @@ module Rules = struct
73467346
(**************************************)
73477347
(* below are rules not local any more *)
73487348
(**************************************)
7349-
7349+
73507350
(* [bsc_lib_includes] are fixed for libs
73517351
[bsc_extra_includes] are for app test etc
73527352
it wil be
@@ -7394,10 +7394,10 @@ let output_build
73947394
output_string oc output ;
73957395
outputs |> List.iter (fun s -> output_string oc " " ; output_string oc s );
73967396
begin match implicit_outputs with
7397-
| [] -> ()
7398-
| _ ->
7399-
output_string oc " | ";
7400-
implicit_outputs |> List.iter (fun s -> output_string oc " " ; output_string oc s)
7397+
| [] -> ()
7398+
| _ ->
7399+
output_string oc " | ";
7400+
implicit_outputs |> List.iter (fun s -> output_string oc " " ; output_string oc s)
74017401
end;
74027402
output_string oc " : ";
74037403
output_string oc rule;
@@ -7441,12 +7441,12 @@ let output_build
74417441
output_string oc s ; output_string oc "\n"
74427442
) xs
74437443
end;
7444-
begin match restat with
7445-
| None -> ()
7446-
| Some () ->
7447-
output_string oc " " ;
7448-
output_string oc "restat = 1 \n"
7449-
end
7444+
begin match restat with
7445+
| None -> ()
7446+
| Some () ->
7447+
output_string oc " " ;
7448+
output_string oc "restat = 1 \n"
7449+
end
74507450

74517451

74527452
let phony ?(order_only_deps=[]) ~inputs ~output oc =
@@ -7496,9 +7496,9 @@ let (++) (us : info) (vs : info) =
74967496
else
74977497
{
74987498
all_config_deps = us.all_config_deps @ vs.all_config_deps
7499-
;
7499+
;
75007500
all_installs = us.all_installs @ vs.all_installs
7501-
}
7501+
}
75027502

75037503

75047504

@@ -7527,39 +7527,39 @@ let handle_file_group oc ~package_specs ~js_post_build_cmd acc (group: Bsb_buil
75277527
let output_cmj = output_file_sans_extension ^ Literals.suffix_cmj in
75287528
let output_js =
75297529
String_set.fold (fun s acc ->
7530-
let prefix =
7530+
let prefix =
75317531
if s = Literals.commonjs then
75327532
Bsb_config.common_js_prefix
75337533
else if s = Literals.amdjs then
75347534
Bsb_config.amd_js_prefix
75357535
else Bsb_config.goog_prefix
75367536
in
7537-
(Bsb_config.proj_rel @@ prefix
7538-
output_file_sans_extension ^ Literals.suffix_js) :: acc
7539-
) package_specs []
7537+
(Bsb_config.proj_rel @@ prefix
7538+
output_file_sans_extension ^ Literals.suffix_js) :: acc
7539+
) package_specs []
75407540
in
75417541
(* let output_mldeps = output_file_sans_extension ^ Literals.suffix_mldeps in *)
75427542
(* let output_mlideps = output_file_sans_extension ^ Literals.suffix_mlideps in *)
75437543
let shadows =
75447544
let package_flags =
75457545
( "bs_package_flags",
75467546
`Append
7547-
(String_set.fold (fun s acc ->
7548-
acc ^ " -bs-package-output " ^ s ^ ":" ^
7549-
if s = Literals.amdjs then
7550-
(Bsb_config.amd_js_prefix @@ Filename.dirname output_cmi)
7551-
else if s = Literals.commonjs then
7552-
(Bsb_config.common_js_prefix @@ Filename.dirname output_cmi)
7553-
else
7554-
(Bsb_config.goog_prefix @@ Filename.dirname output_cmi)
7555-
) package_specs "")
7547+
(String_set.fold (fun s acc ->
7548+
acc ^ " -bs-package-output " ^ s ^ ":" ^
7549+
if s = Literals.amdjs then
7550+
(Bsb_config.amd_js_prefix @@ Filename.dirname output_cmi)
7551+
else if s = Literals.commonjs then
7552+
(Bsb_config.common_js_prefix @@ Filename.dirname output_cmi)
7553+
else
7554+
(Bsb_config.goog_prefix @@ Filename.dirname output_cmi)
7555+
) package_specs "")
75567556
) ::
75577557
(if group.dir_index = 0 then [] else
7558-
[("bsc_extra_includes",
7559-
`Overwrite
7560-
("${" ^ Bsb_build_util.string_of_bsb_dev_include group.dir_index ^ "}")
7561-
)]
7562-
)
7558+
[("bsc_extra_includes",
7559+
`Overwrite
7560+
("${" ^ Bsb_build_util.string_of_bsb_dev_include group.dir_index ^ "}")
7561+
)]
7562+
)
75637563
in
75647564

75657565
match bs_dependencies with
@@ -7577,6 +7577,17 @@ let handle_file_group oc ~package_specs ~js_post_build_cmd acc (group: Bsb_buil
75777577
~output:output_ml
75787578
~input
75797579
~rule: Rules.build_ml_from_mll ;
7580+
let install_files files =
7581+
files
7582+
|> List.iter
7583+
(
7584+
fun x ->
7585+
output_build oc
7586+
~output:(Bsb_config.proj_rel @@
7587+
Bsb_config.ocaml_bin_install_prefix @@ Filename.basename x)
7588+
~input:x
7589+
~rule:Rules.copy_resources
7590+
) in
75807591
begin match kind with
75817592
| `Mll
75827593
| `Ml
@@ -7601,7 +7612,7 @@ let handle_file_group oc ~package_specs ~js_post_build_cmd acc (group: Bsb_buil
76017612
~input:output_mlast
76027613
~rule:Rules.build_bin_deps
76037614
?shadows:(if group.dir_index = 0 then None else Some ["group", `Overwrite (string_of_int group.dir_index)])
7604-
;
7615+
;
76057616
let rule_name , cm_outputs, deps =
76067617
if module_info.mli = Mli_empty then
76077618
Rules.build_cmj_cmi_js, [output_cmi], []
@@ -7613,7 +7624,7 @@ let handle_file_group oc ~package_specs ~js_post_build_cmd acc (group: Bsb_buil
76137624
| None -> shadows
76147625
| Some cmd ->
76157626
("postbuild",
7616-
`Overwrite ("&& " ^ cmd ^ " " ^ String.concat " " output_js)) :: shadows
7627+
`Overwrite ("&& " ^ cmd ^ " " ^ String.concat " " output_js)) :: shadows
76177628
in
76187629
output_build oc
76197630
~output:output_cmj
@@ -7623,20 +7634,10 @@ let handle_file_group oc ~package_specs ~js_post_build_cmd acc (group: Bsb_buil
76237634
~implicit_deps:deps
76247635
~rule:rule_name ;
76257636
if installable then
7626-
begin
7627-
output_cmj :: cm_outputs
7628-
|> List.iter
7629-
(
7630-
fun x ->
7631-
output_build oc
7632-
~output:(Bsb_config.proj_rel @@
7633-
Bsb_config.ocaml_bin_install_prefix @@ Filename.basename x)
7634-
~input:x
7635-
~rule:Rules.copy_resources
7636-
)
7637-
end;
7638-
{all_config_deps = [output_mlastd]; all_installs = [output_cmi]; }
7639-
7637+
install_files (input::output_cmj :: cm_outputs)
7638+
;
7639+
{all_config_deps = [output_mlastd]; all_installs = [output_cmi]; }
7640+
76407641
end
76417642
| `Mli
76427643
| `Rei ->
@@ -7653,7 +7654,7 @@ let handle_file_group oc ~package_specs ~js_post_build_cmd acc (group: Bsb_buil
76537654
~input:output_mliast
76547655
~rule:Rules.build_bin_deps
76557656
?shadows:(if group.dir_index = 0 then None
7656-
else Some [Bsb_build_schemas.bsb_dir_group, `Overwrite (string_of_int group.dir_index)])
7657+
else Some [Bsb_build_schemas.bsb_dir_group, `Overwrite (string_of_int group.dir_index)])
76577658
;
76587659
output_build oc
76597660
~shadows
@@ -7662,20 +7663,13 @@ let handle_file_group oc ~package_specs ~js_post_build_cmd acc (group: Bsb_buil
76627663
(* ~implicit_deps:[output_mliastd] *)
76637664
~rule:Rules.build_cmi;
76647665
if installable then
7665-
begin
7666-
output_build oc
7667-
~output:(Bsb_config.proj_rel @@
7668-
Bsb_config.ocaml_bin_install_prefix @@
7669-
Filename.basename output_cmi)
7670-
~input:output_cmi
7671-
~rule:Rules.copy_resources
7672-
end;
7673-
{
7674-
all_config_deps = [output_mliastd];
7675-
all_installs = [output_cmi] ;
7676-
7677-
}
7678-
7666+
install_files [output_cmi; input];
7667+
{
7668+
all_config_deps = [output_mliastd];
7669+
all_installs = [output_cmi] ;
7670+
7671+
}
7672+
76797673
end
76807674
in
76817675
begin match module_info.ml with
@@ -7707,7 +7701,7 @@ let handle_file_group oc ~package_specs ~js_post_build_cmd acc (group: Bsb_buil
77077701

77087702

77097703
let handle_file_groups oc ~package_specs ~js_post_build_cmd (file_groups : Bsb_build_ui.file_group list) st =
7710-
List.fold_left (handle_file_group oc ~package_specs ~js_post_build_cmd ) st file_groups
7704+
List.fold_left (handle_file_group oc ~package_specs ~js_post_build_cmd ) st file_groups
77117705

77127706
end
77137707
module Bsb_gen : sig

jscomp/bsb/bsb_default.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ let internal_override_package_specs str =
190190
) String_set.empty lst
191191

192192

193-
let generate_merlin = ref false
193+
let generate_merlin = ref true
194194

195195
let get_generate_merlin () = !generate_merlin
196196

0 commit comments

Comments
 (0)