Skip to content

Commit 54e20fc

Browse files
authored
Merge pull request #2375 from BuckleScript/bs_deriving_abstract
make standard_library path consistent between BS_DEBUG and release mode
2 parents 3aecdad + d1efe1d commit 54e20fc

File tree

6 files changed

+65
-40
lines changed

6 files changed

+65
-40
lines changed

jscomp/all.depend

+2-1
Original file line numberDiff line numberDiff line change
@@ -409,7 +409,8 @@ core/ocaml_types.cmx : common/ext_log.cmx ext/ext_list.cmx \
409409
core/ocaml_stdlib_slots.cmx :
410410
core/bs_conditional_initial.cmx : common/js_config.cmx common/bs_version.cmx \
411411
core/bs_conditional_initial.cmi
412-
core/ocaml_options.cmx : common/bs_version.cmx core/ocaml_options.cmi
412+
core/ocaml_options.cmx : common/bs_version.cmx \
413+
core/bs_conditional_initial.cmx core/ocaml_options.cmi
413414
core/ocaml_parse.cmx : syntax/ppx_entry.cmx common/js_config.cmx \
414415
ext/ext_path.cmx core/ocaml_parse.cmi
415416
core/js_op.cmx :

jscomp/core/bs_conditional_initial.ml

+7
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,10 @@ let setup_env () =
2929
#end
3030
Lexer.replace_directive_bool "BS" true;
3131
Lexer.replace_directive_string "BS_VERSION" Bs_version.version
32+
33+
let standard_library =
34+
#if BS_DEBUG then
35+
Filename.concat (Filename.dirname Sys.executable_name) "ocaml"
36+
#else
37+
Config.standard_library
38+
#end

jscomp/core/bs_conditional_initial.mli

+2
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,5 @@
3232
Is understood, also make sure the playground do the same initialization.
3333
*)
3434
val setup_env : unit -> unit
35+
36+
val standard_library : string

jscomp/core/ocaml_options.ml

+23-21
Original file line numberDiff line numberDiff line change
@@ -253,32 +253,34 @@ let show_config () =
253253
exit 0;
254254
;;
255255

256-
let ocaml_options =
257-
let bs_version_string =
258-
"BuckleScript " ^ Bs_version.version ^
259-
" (Using OCaml" ^ Config.version ^ " )" in
260-
261-
let print_version_and_library compiler =
262-
Printf.printf "The OCaml %s, version " compiler;
263-
print_string bs_version_string; print_newline();
264-
print_string "Standard library directory: ";
265-
print_string Config.standard_library; print_newline();
266-
exit 0 in
267-
268-
let print_standard_library = Compenv.print_standard_library in
269-
270-
let print_version_string () =
271-
print_string bs_version_string;
272-
print_newline ();
273-
exit 0 in
256+
let bs_version_string =
257+
"BuckleScript " ^ Bs_version.version ^
258+
" (Using OCaml" ^ Config.version ^ " )"
259+
260+
let print_version_string () =
261+
print_string bs_version_string;
262+
print_newline ();
263+
exit 0
264+
265+
266+
let print_standard_library () =
267+
print_string Bs_conditional_initial.standard_library; print_newline(); exit 0
268+
269+
let print_version_and_library compiler =
270+
Printf.printf "The OCaml %s, version " compiler;
271+
print_string bs_version_string; print_newline();
272+
print_string "Standard library directory: ";
273+
print_string Bs_conditional_initial.standard_library; print_newline();
274+
exit 0
274275

276+
let ocaml_options =
275277
let set r () = r := true in
276278
let unset r () = r := false in
277279
let _absname = set Location.absname in
278280
let _color option =
279-
match Clflags.parse_color_setting option with
280-
| None -> ()
281-
| Some setting -> Clflags.color := setting in
281+
match Clflags.parse_color_setting option with
282+
| None -> ()
283+
| Some setting -> Clflags.color := setting in
282284
let _annot = set annotations in
283285
let _binannot = set binary_annotations in
284286
let _c = set compile_only in

lib/bsdep.ml

+5
Original file line numberDiff line numberDiff line change
@@ -20503,6 +20503,7 @@ module Bs_conditional_initial : sig
2050320503
*)
2050420504
val setup_env : unit -> unit
2050520505

20506+
val standard_library : string
2050620507
end = struct
2050720508
#1 "bs_conditional_initial.ml"
2050820509
(* Copyright (C) 2015-2016 Bloomberg Finance L.P.
@@ -20535,6 +20536,10 @@ let setup_env () =
2053520536
Lexer.replace_directive_bool "BS" true;
2053620537
Lexer.replace_directive_string "BS_VERSION" Bs_version.version
2053720538

20539+
let standard_library =
20540+
20541+
Config.standard_library
20542+
2053820543
end
2053920544
module Compenv : sig
2054020545
#1 "compenv.mli"

lib/whole_compiler.ml

+26-18
Original file line numberDiff line numberDiff line change
@@ -20503,6 +20503,7 @@ module Bs_conditional_initial : sig
2050320503
*)
2050420504
val setup_env : unit -> unit
2050520505

20506+
val standard_library : string
2050620507
end = struct
2050720508
#1 "bs_conditional_initial.ml"
2050820509
(* Copyright (C) 2015-2016 Bloomberg Finance L.P.
@@ -20535,6 +20536,10 @@ let setup_env () =
2053520536
Lexer.replace_directive_bool "BS" true;
2053620537
Lexer.replace_directive_string "BS_VERSION" Bs_version.version
2053720538

20539+
let standard_library =
20540+
20541+
Config.standard_library
20542+
2053820543
end
2053920544
module Ident : sig
2054020545
#1 "ident.mli"
@@ -115547,32 +115552,35 @@ let show_config () =
115547115552
exit 0;
115548115553
;;
115549115554

115550-
let ocaml_options =
115551-
let bs_version_string =
115552-
"BuckleScript " ^ Bs_version.version ^
115553-
" (Using OCaml" ^ Config.version ^ " )" in
115555+
let bs_version_string =
115556+
"BuckleScript " ^ Bs_version.version ^
115557+
" (Using OCaml" ^ Config.version ^ " )"
115554115558

115555-
let print_version_and_library compiler =
115556-
Printf.printf "The OCaml %s, version " compiler;
115557-
print_string bs_version_string; print_newline();
115558-
print_string "Standard library directory: ";
115559-
print_string Config.standard_library; print_newline();
115560-
exit 0 in
115559+
let print_version_string () =
115560+
print_string bs_version_string;
115561+
print_newline ();
115562+
exit 0
115561115563

115562-
let print_standard_library = Compenv.print_standard_library in
115564+
115565+
let print_standard_library () =
115566+
(* Compenv.print_standard_library *)
115567+
print_string Bs_conditional_initial.standard_library; print_newline(); exit 0
115563115568

115564-
let print_version_string () =
115565-
print_string bs_version_string;
115566-
print_newline ();
115567-
exit 0 in
115569+
let print_version_and_library compiler =
115570+
Printf.printf "The OCaml %s, version " compiler;
115571+
print_string bs_version_string; print_newline();
115572+
print_string "Standard library directory: ";
115573+
print_string Bs_conditional_initial.standard_library; print_newline();
115574+
exit 0
115568115575

115576+
let ocaml_options =
115569115577
let set r () = r := true in
115570115578
let unset r () = r := false in
115571115579
let _absname = set Location.absname in
115572115580
let _color option =
115573-
match Clflags.parse_color_setting option with
115574-
| None -> ()
115575-
| Some setting -> Clflags.color := setting in
115581+
match Clflags.parse_color_setting option with
115582+
| None -> ()
115583+
| Some setting -> Clflags.color := setting in
115576115584
let _annot = set annotations in
115577115585
let _binannot = set binary_annotations in
115578115586
let _c = set compile_only in

0 commit comments

Comments
 (0)