Package: findlib / 1.6.2-1

0002-Extra-configuration-search-path.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
From: Stefano Zacchiroli <zack@debian.org>
Date: Sat, 12 Feb 2011 10:21:40 +0100
Subject: Extra configuration search path

Support for an extra, debian-specific, dir where to look for
configuration file snippets (namely /usr/share/ocaml-findlib/).

Forwarded: not-needed
Signed-off-by: Stephane Glondu <steph@glondu.net>
---
 src/findlib/findlib.ml         | 9 ++++++++-
 src/findlib/findlib_config.mlp | 1 +
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/findlib/findlib.ml b/src/findlib/findlib.ml
index 2376315..e2e2689 100644
--- a/src/findlib/findlib.ml
+++ b/src/findlib/findlib.ml
@@ -116,6 +116,8 @@ let init
   let configd_file =
     config_file ^ ".d" in
 
+  let extra_configd_file = Findlib_config.extra_configd_file in
+
   let vars_of_file f =
     let ch = open_in f in
     try
@@ -159,12 +161,17 @@ let init
 	  vars_of_file config_file
 	else
 	  [] in
+      let extra_configd_vars =  (* Debian specific *)
+        if Sys.file_exists extra_configd_file then
+          vars_of_dir extra_configd_file
+        else
+          [] in
       let configd_vars =
 	if Sys.file_exists configd_file then 
 	  vars_of_dir configd_file
 	else
 	  [] in
-      let vars = config_vars @ configd_vars in
+      let vars = config_vars @ configd_vars @ extra_configd_vars in
       if vars <> [] then (
         let found = ref false in
 	let lookup name default =
diff --git a/src/findlib/findlib_config.mlp b/src/findlib/findlib_config.mlp
index 64b4840..cf2fa86 100644
--- a/src/findlib/findlib_config.mlp
+++ b/src/findlib/findlib_config.mlp
@@ -4,6 +4,7 @@
  *)
 
 let config_file = "@CONFIGFILE@";;
+let extra_configd_file = "/usr/share/ocaml-findlib/";; (* Debian specific *)
 
 let ocaml_stdlib = "@STDLIB@";;