@@ -648,7 +648,6 @@ val add_string_char :
648648
649649val add_ninja_prefix_var :
650650 t ->
651- char ->
652651 string ->
653652 unit
654653
@@ -772,14 +771,14 @@ let add_char_string b c s =
772771 b.position <- new_position
773772
774773(* equivalent to add_char " "; add_char "$"; add_string s *)
775- let add_ninja_prefix_var b char s =
774+ let add_ninja_prefix_var b s =
776775 let s_len = String.length s in
777776 let len = s_len + 2 in
778777 let new_position = b.position + len in
779778 if new_position > b.length then resize b len;
780779 let b_buffer = b.buffer in
781780 let b_position = b.position in
782- Bytes.unsafe_set b_buffer b_position char ;
781+ Bytes.unsafe_set b_buffer b_position ' ' ;
783782 Bytes.unsafe_set b_buffer (b_position + 1) '$' ;
784783 Ext_bytes.unsafe_blit_string s 0 b_buffer (b_position + 2) s_len;
785784 b.position <- new_position
@@ -12741,14 +12740,14 @@ val make_custom_rules :
1274112740 package_specs:Bsb_package_specs.t ->
1274212741 namespace:string option ->
1274312742 package_name:string ->
12744- bsc:string ->
1274512743 warnings:string ->
12746- bs_dep:string ->
1274712744 ppx_files:Bsb_config_types.ppx list ->
1274812745 bsc_flags:string ->
1274912746 dpkg_incls:string ->
1275012747 lib_incls:string ->
1275112748 dev_incls:string ->
12749+ bs_dependencies:Bsb_config_types.dependencies ->
12750+ bs_dev_dependencies:Bsb_config_types.dependencies ->
1275212751 command Map_string.t ->
1275312752 builtin
1275412753
@@ -12880,16 +12879,18 @@ let make_custom_rules
1288012879 ~(package_specs: Bsb_package_specs.t)
1288112880 ~(namespace : string option)
1288212881 ~package_name
12883- ~bsc
12884- ~warnings
12885- ~(bs_dep : string)
12882+ ~warnings
1288612883 ~(ppx_files : Bsb_config_types.ppx list)
1288712884 ~bsc_flags
1288812885 ~(dpkg_incls : string)
1288912886 ~(lib_incls : string)
1289012887 ~(dev_incls : string)
12888+ ~bs_dependencies
12889+ ~bs_dev_dependencies
1289112890 (custom_rules : command Map_string.t) :
1289212891 builtin =
12892+ let bs_dep = Ext_filename.maybe_quote Bsb_global_paths.vendor_bsdep in
12893+ let bsc = Ext_filename.maybe_quote Bsb_global_paths.vendor_bsc in
1289312894 (** FIXME: We don't need set [-o ${out}] when building ast
1289412895 since the default is already good -- it does not*)
1289512896 let buf = Ext_buffer.create 100 in
@@ -12929,8 +12930,12 @@ let make_custom_rules
1292912930 Ext_buffer.add_string buf package_name;
1293012931 Ext_buffer.add_string buf (Bsb_package_specs.package_flag_of_package_specs package_specs "$in_d")
1293112932 end;
12932- Ext_buffer.add_string buf " -bs-v ";
12933- Ext_buffer.add_ninja_prefix_var buf '-' Bsb_ninja_global_vars.g_finger;
12933+ begin match bs_dependencies, bs_dev_dependencies with
12934+ | [], [] -> ()
12935+ | _, _ ->
12936+ Ext_buffer.add_string buf " -bs-v";
12937+ Ext_buffer.add_ninja_prefix_var buf Bsb_ninja_global_vars.g_finger;
12938+ end;
1293412939 Ext_buffer.add_string buf " $i";
1293512940 begin match postbuild with
1293612941 | None -> ()
@@ -13682,8 +13687,6 @@ let output_ninja_and_namespace_map
1368213687
1368313688 let warnings = Bsb_warning.to_bsb_string ~package_kind warning in
1368413689 let bsc_flags = (get_bsc_flags bsc_flags) in
13685- let bsc_path = (Ext_filename.maybe_quote Bsb_global_paths.vendor_bsc) in
13686- let bs_dep = (Ext_filename.maybe_quote Bsb_global_paths.vendor_bsdep) in
1368713690 let dpkg_incls = (Bsb_build_util.include_dirs_by
1368813691 bs_dev_dependencies
1368913692 (fun x -> x.package_install_path)) in
@@ -13731,27 +13734,29 @@ let output_ninja_and_namespace_map
1373113734 ~namespace
1373213735 ~digest
1373313736 ~package_name
13734- ~bsc:bsc_path
13735- ~warnings
13736- ~bs_dep
13737+ ~warnings
1373713738 ~ppx_files
1373813739 ~bsc_flags
1373913740 ~dpkg_incls (* dev dependencies *)
1374013741 ~lib_incls (* its own libs *)
1374113742 ~dev_incls (* its own devs *)
13743+ ~bs_dependencies
13744+ ~bs_dev_dependencies
1374213745 generators in
1374313746
1374413747 let oc = open_out_bin (cwd_lib_bs // Literals.build_ninja) in
1374513748 mark_rescript oc;
1374613749 let finger_file =
1374713750 fun (x : Bsb_config_types.dependency) -> x.package_install_path //".ninja_log"
1374813751 in
13749- Bsb_ninja_targets.output_finger
13750- Bsb_ninja_global_vars.g_finger
13751- (String.concat " "
13752- (Ext_list.map_append bs_dependencies
13753- (Ext_list.map bs_dev_dependencies finger_file) finger_file))
13754- oc ;
13752+ Ext_list.iter bs_dependencies (fun x ->
13753+ Bsb_ninja_targets.output_finger Bsb_ninja_global_vars.g_finger
13754+ (finger_file x) oc
13755+ );
13756+ Ext_list.iter bs_dev_dependencies (fun x ->
13757+ Bsb_ninja_targets.output_finger Bsb_ninja_global_vars.g_finger
13758+ (finger_file x) oc
13759+ );
1375513760 (match gentype_config with
1375613761 | None -> ()
1375713762 | Some x -> output_string oc ("cleaner = " ^ x.path ^ "\n"));
0 commit comments