Skip to content

Commit ead187e

Browse files
committed
fix(grader): allow exercises to use vg, gg
since the libraries are already available
1 parent cb417d1 commit ead187e

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/repo/learnocaml_precompile_exercise.ml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ let grading_cmis_dir =
1515
let ( / ) = Filename.concat in
1616
ref (prefix/"lib"/"learn-ocaml"/"test_lib")
1717

18+
let extra_cmis_dirs =
19+
let prefix = Filename.dirname (Filename.dirname (Sys.executable_name)) in
20+
let ( / ) = Filename.concat in
21+
ref [prefix/"lib"/"vg"; prefix/"lib"/"gg"]
22+
1823
let run ?dir cmd args =
1924
Lwt_process.exec ?cwd:dir ("", Array.of_list (cmd::args)) >>= function
2025
| Unix.WEXITED 0 -> Lwt.return_unit
@@ -42,6 +47,9 @@ let ocamlc ?(dir=Sys.getcwd ()) ?(opn=[]) ?(ppx=[]) ~source ~target args =
4247
ppx args
4348
in
4449
let args = "-I" :: dir :: "-I" :: !grading_cmis_dir :: args in
50+
let args =
51+
List.flatten (List.map (fun d -> ["-I"; d]) !extra_cmis_dirs) @ args
52+
in
4553
let args = args @ List.map d source @ ["-o"; d target] in
4654
let args = List.fold_right (fun m acc -> "-open" :: m :: acc) opn args in
4755
run "ocamlc" args

0 commit comments

Comments
 (0)