try
Sys.getenv "HELM_CONFIGURATION_DIR"
with
- Not_found -> "@HELM_DEFAULT_CONFIGURATION_DIR@"
+ Not_found -> "@HELM_CONFIGURATION_DIR@"
in
prefix ^ "/configuration.xml";;
((xml_document ())#root#sub_nodes)
;;
+(* try to read a configuration variable, given its name into the
+ * configuration.xml file and its name into the shell environment.
+ * The shell variable, if present, has precedence over configuration.xml
+ *)
+let read_configuration_var xml_name env_name =
+ try
+ Sys.getenv env_name
+ with
+ Not_found -> Hashtbl.find vars xml_name
+
let helm_dir = Hashtbl.find vars "helm_dir";;
let dtd_dir = Hashtbl.find vars "dtd_dir";;
+let style_dir = read_configuration_var "style_dir" "HELM_STYLE_DIR";;
let servers_file = Hashtbl.find vars "servers_file";;
let uris_dbm = Hashtbl.find vars "uris_dbm";;
let dest = Hashtbl.find vars "dest";;
let tmpdir = Hashtbl.find vars "tmpdir";;
let helm_dir = Hashtbl.find vars "helm_dir";;
let getter_url = Hashtbl.find vars "getter_url";;
+let processor_url = read_configuration_var "processor_url" "HELM_PROCESSOR_URL"
let _ = Hashtbl.clear vars;;