@@ -13629,8 +13629,10 @@ let output_installation_file cwd_lib_bs namespace files_to_install =
13629
13629
o (if Ext_sys.is_windows_or_cygwin then
13630
13630
"rule cp\n command = cmd.exe /C copy /Y $i $out >NUL\n"
13631
13631
else
13632
- "rule cp\n command = cp $i $out\n"
13632
+ "rule cp\n command = cp $i $out\n\
13633
+ rule touch\n command = touch $out\n"
13633
13634
);
13635
+ let essentials = Ext_buffer.create 1_000 in
13634
13636
files_to_install
13635
13637
|> Queue.iter (fun ({name_sans_extension;syntax_kind; info} : Bsb_db.module_info) ->
13636
13638
let base = Filename.basename name_sans_extension in
@@ -13639,6 +13641,12 @@ let output_installation_file cwd_lib_bs namespace files_to_install =
13639
13641
oo Literals.suffix_cmi ~dest:ns_base ~src:(bs//ns_origin);
13640
13642
oo Literals.suffix_cmj ~dest:ns_base ~src:(bs//ns_origin);
13641
13643
oo Literals.suffix_cmt ~dest:ns_base ~src:(bs//ns_origin);
13644
+ Ext_buffer.add_string essentials ns_base ;
13645
+ Ext_buffer.add_string essentials Literals.suffix_cmi;
13646
+ Ext_buffer.add_string essentials " ";
13647
+ Ext_buffer.add_string essentials ns_base ;
13648
+ Ext_buffer.add_string essentials Literals.suffix_cmj;
13649
+ Ext_buffer.add_string essentials " ";
13642
13650
let suffix =
13643
13651
match syntax_kind with
13644
13652
| Ml -> Literals.suffix_ml
@@ -13663,8 +13671,16 @@ let output_installation_file cwd_lib_bs namespace files_to_install =
13663
13671
let src = bs // x in
13664
13672
oo Literals.suffix_cmi ~dest:x ~src;
13665
13673
oo Literals.suffix_cmj ~dest:x ~src;
13666
- oo Literals.suffix_cmt ~dest:x ~src
13674
+ oo Literals.suffix_cmt ~dest:x ~src;
13675
+ Ext_buffer.add_string essentials x ;
13676
+ Ext_buffer.add_string essentials Literals.suffix_cmi;
13677
+ Ext_buffer.add_string essentials " ";
13678
+ Ext_buffer.add_string essentials x ;
13679
+ Ext_buffer.add_string essentials Literals.suffix_cmj;
13667
13680
end;
13681
+ Ext_buffer.add_string essentials "\n";
13682
+ o "build install.stamp : touch ";
13683
+ Ext_buffer.output_buffer install_oc essentials;
13668
13684
close_out install_oc
13669
13685
13670
13686
let output_ninja_and_namespace_map
@@ -13758,7 +13774,7 @@ let output_ninja_and_namespace_map
13758
13774
let oc = open_out_bin (cwd_lib_bs // Literals.build_ninja) in
13759
13775
mark_rescript oc;
13760
13776
let finger_file =
13761
- fun (x : Bsb_config_types.dependency) -> x.package_install_path //".ninja_log "
13777
+ fun (x : Bsb_config_types.dependency) -> x.package_install_path //"install.stamp "
13762
13778
in
13763
13779
Ext_list.iter bs_dependencies (fun x ->
13764
13780
Bsb_ninja_targets.output_finger Bsb_ninja_global_vars.g_finger
0 commit comments