Merge branch 'local-ocamlbuild' into local-trunk
[SXSI/xpathcomp.git] / configure
1 #!/usr/bin/env ocaml
2
3 #directory "utils";;
4 #use "conf.ml";;
5
6 Conf.start ();;
7
8 Conf.check_prog "C compiler" "gcc --version";;
9 Conf.check_prog "C++ compiler" "g++ --version";;
10 let _,version, _ = Conf.prog "Ocaml bytecode compiler" "ocamlc -version";;
11 Conf.check "Ocaml version >= 3.11.0" Conf.version version (fun c -> c >= (3,11,0));;
12 Conf.check_prog ~required:false "Ocaml native compiler" "ocamlopt -version";;
13 Conf.check_prog "ocamlbuild" "ocamlbuild -version";;
14 Conf.check_prog "ocamlfind" "ocamlfind printconf";;
15 Conf.check_prog "pkg-config" "pkg-config --version";;
16
17 Conf.check_prog "libxml++-2.6" "pkg-config --exists libxml++-2.6" ;;
18 Conf.check_prog "ulex" "ocamlfind query ulex";;
19 Conf.check "XMLTree" (Conf.absolute) ("%s/src/XMLTree/libXMLTree.a") (Sys.file_exists);;
20
21 let _, libxmlI, _ = Conf.exec "pkg-config --cflags-only-I libxml++-2.6";;
22 let libxmlI = Conf.explode (libxmlI);;
23
24 let _, libxmlL, _ = Conf.exec "pkg-config --libs-only-L libxml++-2.6";;
25 let libxmlL = Conf.explode (libxmlL);;
26
27 let _, libxmll, _ = Conf.exec "pkg-config --libs-only-l libxml++-2.6";;
28 let libxmll = Conf.explode (libxmll);;
29
30 let libXMLTreeI = [ Conf.absolute "-I%s/src/XMLTree";
31                           Conf.absolute "-I%s/src/XMLTree/libcds/includes";
32                           Conf.absolute "-I%s/src/XMLTree/TextCollection" ]
33 ;;
34 let libXMLTreeL = [ Conf.absolute "-L%s/src/XMLTree" ];;
35 let libXMLTreel = [ "-lXMLTree" ];;
36
37 let _,ocamlI,_ = Conf.exec "ocamlc -where";;
38 let ocamlI = [ "-I" ^ ocamlI ];;
39
40 Conf.def_str "cxx_cmd" "g++";;
41
42 Conf.def_list "cxx_includes" (libxmlI @ libXMLTreeI @ ocamlI);;
43 Conf.def_list "cxx_lpaths" (libxmlL @ libXMLTreeL);;
44 Conf.def_list "cxx_libs" ( libXMLTreel @ libxmll );;
45
46
47
48 Conf.finish ();;