Skip to content

Commit 67af904

Browse files
authored
Merge pull request #4744 from rescript-lang/shrink_ninja_file
(part 1) no package flags when building cmi files
2 parents 19d8e38 + f84a1f6 commit 67af904

File tree

5 files changed

+67
-69
lines changed

5 files changed

+67
-69
lines changed

jscomp/bsb/bsb_ninja_file_groups.ml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ let emit_module_build
146146
~shadows:common_shadows
147147
~order_only_deps:[output_d]
148148
~inputs:[output_mliast]
149-
~rule:(if is_dev then rules.ml_cmi_dev else rules.ml_cmi)
149+
~rule:(if is_dev then rules.mi_dev else rules.mi)
150150
;
151151
end;
152152

@@ -160,11 +160,11 @@ let emit_module_build
160160
in
161161
let rule =
162162
if has_intf_file then
163-
(if is_dev then rules.ml_cmj_js_dev
164-
else rules.ml_cmj_js)
163+
(if is_dev then rules.mj_dev
164+
else rules.mj)
165165
else
166-
(if is_dev then rules.ml_cmj_cmi_js_dev
167-
else rules.ml_cmj_cmi_js
166+
(if is_dev then rules.mij_dev
167+
else rules.mij
168168
)
169169
in
170170
Bsb_ninja_targets.output_build oc

jscomp/bsb/bsb_ninja_rule.ml

Lines changed: 22 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -98,12 +98,12 @@ type builtin = {
9898
(** Rules below all need restat *)
9999
build_bin_deps : t ;
100100
build_bin_deps_dev : t;
101-
ml_cmj_js : t;
102-
ml_cmj_js_dev : t;
103-
ml_cmj_cmi_js : t ;
104-
ml_cmj_cmi_js_dev : t ;
105-
ml_cmi : t;
106-
ml_cmi_dev : t ;
101+
mj : t;
102+
mj_dev : t;
103+
mij : t ;
104+
mij_dev : t ;
105+
mi : t;
106+
mi_dev : t ;
107107

108108
build_package : t ;
109109
customs : t Map_string.t
@@ -127,13 +127,13 @@ let make_custom_rules
127127
since the default is already good -- it does not*)
128128
let buf = Ext_buffer.create 100 in
129129
let mk_ml_cmj_cmd
130-
~read_cmi
130+
~(read_cmi : [`yes | `is_cmi | `no])
131131
~is_dev
132132
~postbuild : string =
133133
Ext_buffer.clear buf;
134134
Ext_buffer.add_string buf "$bsc";
135135
Ext_buffer.add_ninja_prefix_var buf Bsb_ninja_global_vars.g_pkg_flg;
136-
if read_cmi then
136+
if read_cmi = `yes then
137137
Ext_buffer.add_string buf " -bs-read-cmi";
138138
if is_dev then
139139
Ext_buffer.add_ninja_prefix_var buf Bsb_ninja_global_vars.g_dev_incls;
@@ -203,7 +203,6 @@ let make_custom_rules
203203
("$bsdep -g -hash " ^ digest ^" $g_ns $in")
204204
"mk_deps_dev" in
205205
let aux ~name ~read_cmi ~postbuild =
206-
let postbuild = has_postbuild && postbuild in
207206
define
208207
~command:(mk_ml_cmj_cmd
209208
~read_cmi ~is_dev:false
@@ -220,16 +219,16 @@ let make_custom_rules
220219
(name ^ "_dev")
221220
in
222221
(* [g_lib_incls] are fixed for libs *)
223-
let ml_cmj_js, ml_cmj_js_dev =
224-
aux ~name:"ml_cmj_only" ~read_cmi:true ~postbuild:true in
225-
let ml_cmj_cmi_js, ml_cmj_cmi_js_dev =
222+
let mj, mj_dev =
223+
aux ~name:"mj" ~read_cmi:`yes ~postbuild:has_postbuild in
224+
let mij, mij_dev =
226225
aux
227-
~read_cmi:false
228-
~name:"ml_cmj_cmi" ~postbuild:true in
229-
let ml_cmi, ml_cmi_dev =
226+
~read_cmi:`no
227+
~name:"mij" ~postbuild:has_postbuild in
228+
let mi, mi_dev =
230229
aux
231-
~read_cmi:false ~postbuild:false
232-
~name:"ml_cmi" in
230+
~read_cmi:`is_cmi ~postbuild:false
231+
~name:"mi" in
233232
let build_package =
234233
define
235234
~command:"$bsc -w -49 -color always -no-alias-deps $in"
@@ -246,13 +245,13 @@ let make_custom_rules
246245
(** Rules below all need restat *)
247246
build_bin_deps ;
248247
build_bin_deps_dev;
249-
ml_cmj_js ;
250-
ml_cmj_js_dev ;
251-
ml_cmj_cmi_js ;
252-
ml_cmi ;
248+
mj ;
249+
mj_dev ;
250+
mij ;
251+
mi ;
253252

254-
ml_cmj_cmi_js_dev;
255-
ml_cmi_dev;
253+
mij_dev;
254+
mi_dev ;
256255

257256
build_package ;
258257
customs =

jscomp/bsb/bsb_ninja_rule.mli

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,12 @@ type builtin = {
4646
(** Rules below all need restat *)
4747
build_bin_deps : t ;
4848
build_bin_deps_dev : t ;
49-
ml_cmj_js : t;
50-
ml_cmj_js_dev : t;
51-
ml_cmj_cmi_js : t ;
52-
ml_cmj_cmi_js_dev : t ;
53-
ml_cmi : t;
54-
ml_cmi_dev : t ;
49+
mj : t;
50+
mj_dev : t;
51+
mij : t ;
52+
mij_dev : t ;
53+
mi : t;
54+
mi_dev : t ;
5555

5656
build_package : t ;
5757
customs : t Map_string.t

lib/4.06.1/bsb.ml

Lines changed: 33 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -13017,12 +13017,12 @@ type builtin = {
1301713017
(** Rules below all need restat *)
1301813018
build_bin_deps : t ;
1301913019
build_bin_deps_dev : t ;
13020-
ml_cmj_js : t;
13021-
ml_cmj_js_dev : t;
13022-
ml_cmj_cmi_js : t ;
13023-
ml_cmj_cmi_js_dev : t ;
13024-
ml_cmi : t;
13025-
ml_cmi_dev : t ;
13020+
mj : t;
13021+
mj_dev : t;
13022+
mij : t ;
13023+
mij_dev : t ;
13024+
mi : t;
13025+
mi_dev : t ;
1302613026

1302713027
build_package : t ;
1302813028
customs : t Map_string.t
@@ -13154,12 +13154,12 @@ type builtin = {
1315413154
(** Rules below all need restat *)
1315513155
build_bin_deps : t ;
1315613156
build_bin_deps_dev : t;
13157-
ml_cmj_js : t;
13158-
ml_cmj_js_dev : t;
13159-
ml_cmj_cmi_js : t ;
13160-
ml_cmj_cmi_js_dev : t ;
13161-
ml_cmi : t;
13162-
ml_cmi_dev : t ;
13157+
mj : t;
13158+
mj_dev : t;
13159+
mij : t ;
13160+
mij_dev : t ;
13161+
mi : t;
13162+
mi_dev : t ;
1316313163

1316413164
build_package : t ;
1316513165
customs : t Map_string.t
@@ -13183,13 +13183,13 @@ let make_custom_rules
1318313183
since the default is already good -- it does not*)
1318413184
let buf = Ext_buffer.create 100 in
1318513185
let mk_ml_cmj_cmd
13186-
~read_cmi
13186+
~(read_cmi : [`yes | `is_cmi | `no])
1318713187
~is_dev
1318813188
~postbuild : string =
1318913189
Ext_buffer.clear buf;
1319013190
Ext_buffer.add_string buf "$bsc";
1319113191
Ext_buffer.add_ninja_prefix_var buf Bsb_ninja_global_vars.g_pkg_flg;
13192-
if read_cmi then
13192+
if read_cmi = `yes then
1319313193
Ext_buffer.add_string buf " -bs-read-cmi";
1319413194
if is_dev then
1319513195
Ext_buffer.add_ninja_prefix_var buf Bsb_ninja_global_vars.g_dev_incls;
@@ -13259,7 +13259,6 @@ let make_custom_rules
1325913259
("$bsdep -g -hash " ^ digest ^" $g_ns $in")
1326013260
"mk_deps_dev" in
1326113261
let aux ~name ~read_cmi ~postbuild =
13262-
let postbuild = has_postbuild && postbuild in
1326313262
define
1326413263
~command:(mk_ml_cmj_cmd
1326513264
~read_cmi ~is_dev:false
@@ -13276,16 +13275,16 @@ let make_custom_rules
1327613275
(name ^ "_dev")
1327713276
in
1327813277
(* [g_lib_incls] are fixed for libs *)
13279-
let ml_cmj_js, ml_cmj_js_dev =
13280-
aux ~name:"ml_cmj_only" ~read_cmi:true ~postbuild:true in
13281-
let ml_cmj_cmi_js, ml_cmj_cmi_js_dev =
13278+
let mj, mj_dev =
13279+
aux ~name:"mj" ~read_cmi:`yes ~postbuild:has_postbuild in
13280+
let mij, mij_dev =
1328213281
aux
13283-
~read_cmi:false
13284-
~name:"ml_cmj_cmi" ~postbuild:true in
13285-
let ml_cmi, ml_cmi_dev =
13282+
~read_cmi:`no
13283+
~name:"mij" ~postbuild:has_postbuild in
13284+
let mi, mi_dev =
1328613285
aux
13287-
~read_cmi:false ~postbuild:false
13288-
~name:"ml_cmi" in
13286+
~read_cmi:`is_cmi ~postbuild:false
13287+
~name:"mi" in
1328913288
let build_package =
1329013289
define
1329113290
~command:"$bsc -w -49 -color always -no-alias-deps $in"
@@ -13302,13 +13301,13 @@ let make_custom_rules
1330213301
(** Rules below all need restat *)
1330313302
build_bin_deps ;
1330413303
build_bin_deps_dev;
13305-
ml_cmj_js ;
13306-
ml_cmj_js_dev ;
13307-
ml_cmj_cmi_js ;
13308-
ml_cmi ;
13304+
mj ;
13305+
mj_dev ;
13306+
mij ;
13307+
mi ;
1330913308

13310-
ml_cmj_cmi_js_dev;
13311-
ml_cmi_dev;
13309+
mij_dev;
13310+
mi_dev ;
1331213311

1331313312
build_package ;
1331413313
customs =
@@ -13795,7 +13794,7 @@ let emit_module_build
1379513794
~shadows:common_shadows
1379613795
~order_only_deps:[output_d]
1379713796
~inputs:[output_mliast]
13798-
~rule:(if is_dev then rules.ml_cmi_dev else rules.ml_cmi)
13797+
~rule:(if is_dev then rules.mi_dev else rules.mi)
1379913798
;
1380013799
end;
1380113800

@@ -13809,11 +13808,11 @@ let emit_module_build
1380913808
in
1381013809
let rule =
1381113810
if has_intf_file then
13812-
(if is_dev then rules.ml_cmj_js_dev
13813-
else rules.ml_cmj_js)
13811+
(if is_dev then rules.mj_dev
13812+
else rules.mj)
1381413813
else
13815-
(if is_dev then rules.ml_cmj_cmi_js_dev
13816-
else rules.ml_cmj_cmi_js
13814+
(if is_dev then rules.mij_dev
13815+
else rules.mij
1381713816
)
1381813817
in
1381913818
Bsb_ninja_targets.output_build oc

ninja

0 commit comments

Comments
 (0)