diff options
author | Bernhard Schommer <bernhardschommer@gmail.com> | 2014-10-06 18:53:58 +0200 |
---|---|---|
committer | Bernhard Schommer <bernhardschommer@gmail.com> | 2014-10-06 18:53:58 +0200 |
commit | 64faa3f42647da25c69941053211492b7f74a35d (patch) | |
tree | f84d1fac316cf8c31427c3840c76eeb61f7ad8dc /driver/Configuration.ml | |
parent | a2bed030e01bfe6e3addbe44f724de5c5fbeab65 (diff) | |
download | compcert-kvx-64faa3f42647da25c69941053211492b7f74a35d.tar.gz compcert-kvx-64faa3f42647da25c69941053211492b7f74a35d.zip |
Removed environment variable for the stdlib_path and added a new variable for the configuration file.
Diffstat (limited to 'driver/Configuration.ml')
-rw-r--r-- | driver/Configuration.ml | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/driver/Configuration.ml b/driver/Configuration.ml index c4bcf278..1956b151 100644 --- a/driver/Configuration.ml +++ b/driver/Configuration.ml @@ -18,18 +18,22 @@ let config_vars: (string, string) Hashtbl.t = Hashtbl.create 10 let _ = try let file = - let dir = Sys.getcwd () - and name = Sys.argv.(0) in - let dirname = if Filename.is_relative name then - Filename.dirname (Filename.concat dir name) - else - Filename.dirname name - in - let share_dir = Filename.concat (Filename.concat dirname Filename.parent_dir_name) "share" in try - open_in (Filename.concat dirname "compcert.ini") - with Sys_error _ -> - open_in (Filename.concat share_dir "compcert.ini") + let env_file = Sys.getenv "COMPCERT_CONFIG" in + open_in env_file + with Not_found -> + let dir = Sys.getcwd () + and name = Sys.argv.(0) in + let dirname = if Filename.is_relative name then + Filename.dirname (Filename.concat dir name) + else + Filename.dirname name + in + let share_dir = Filename.concat (Filename.concat dirname Filename.parent_dir_name) "share" in + try + open_in (Filename.concat dirname "compcert.ini") + with Sys_error _ -> + open_in (Filename.concat share_dir "compcert.ini") in (try let ini_line = Str.regexp "\\([^=]+\\)=\\(.+\\)" in |