open! Stdune let pwd = Sys.getcwd () let valid_ocaml_config = Printf.sprintf {|version: 4.02.3 standard_library_default: %s standard_library: %s standard_runtime: /usr/bin/ocamlrun ccomp_type: cc bytecomp_c_compiler: gcc -O -fno-defer-pop -Wall -D_FILE_OFFSET_BITS=64 -D_REENTRANT -O -fPIC bytecomp_c_libraries: -lm -ldl -lcurses -lpthread native_c_compiler: gcc -O -Wall -D_FILE_OFFSET_BITS=64 -D_REENTRANT native_c_libraries: -lm -ldl native_pack_linker: ld -r -o ranlib: ranlib cc_profile: -pg architecture: none model: default system: unknown asm: asm_cfi_supported: false with_frame_pointers: false ext_obj: .o ext_asm: .s ext_lib: .a ext_dll: .so os_type: Unix default_executable_name: a.out systhread_supported: true host: mips-unknown-linux-gnu target: mips-unknown-linux-gnu exec_magic_number: Caml1999X011 cmi_magic_number: Caml1999I017 cmo_magic_number: Caml1999O010 cma_magic_number: Caml1999A011 cmx_magic_number: Caml1999Y014 cmxa_magic_number: Caml1999Z013 ast_impl_magic_number: Caml1999M016 ast_intf_magic_number: Caml1999N015 cmxs_magic_number: Caml2007D002 cmt_magic_number: Caml2012T004|} pwd pwd ;; let () = match match valid_ocaml_config |> String.split_lines |> Ocaml_config.Vars.of_lines with | Ok x -> Ocaml_config.make x | Error msg -> Error (Ocamlc_config, msg) with | Error (_, e) -> failwith e | Ok c -> (* Check that [Ocaml_config.to_list] and [Ocaml_config.by_name] agree *) List.iter (Ocaml_config.to_list c) ~f:(fun (name, v) -> assert (Ocaml_config.by_name c name = Some v)) ;;