@@ -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
69696969let 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
74527452let 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
77097703let 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
77127706end
77137707module Bsb_gen : sig
0 commit comments