]> matita.cs.unibo.it Git - helm.git/blob - helm/software/configure.ac
Release 0.5.9.
[helm.git] / helm / software / configure.ac
1 AC_INIT(matita/matitaTypes.ml)
2
3 # Distribution settings
4 # (i.e. settings (automatically) manipulated before a release)
5 DEBUG_DEFAULT="true"
6 DEFAULT_DBHOST="mysql://mowgli.cs.unibo.it"
7 RT_BASE_DIR_DEFAULT="`pwd`/matita"
8 MATITA_VERSION="0.5.9"
9 DISTRIBUTED="no"  # "yes" for distributed tarballs
10 # End of distribution settings
11
12 SRCROOT=`pwd`
13 AC_CHECK_PROG(HAVE_OCAMLC, ocamlc, yes, no)
14 if test $HAVE_OCAMLC = "no"; then
15   AC_MSG_ERROR(could not find ocamlc)
16 fi
17 AC_CHECK_PROG(HAVE_OCAMLOPT, ocamlopt, yes, no)
18 if test $HAVE_OCAMLOPT = "no"; then
19   AC_MSG_WARN(could not find ocamlopt: native code compilation disabled)
20 fi
21 AC_CHECK_PROG(HAVE_OCAMLFIND, ocamlfind, yes, no)
22 if test $HAVE_OCAMLFIND = "yes"; then
23   OCAMLFIND="ocamlfind"
24 else
25   AC_MSG_ERROR(could not find ocamlfind)
26 fi
27 AC_CHECK_PROG(HAVE_LABLGLADECC, lablgladecc2, yes, no)
28 if test $HAVE_LABLGLADECC = "yes"; then
29   LABLGLADECC="lablgladecc2"
30 else
31   AC_MSG_ERROR(could not find lablgladecc2)
32 fi
33 AC_CHECK_PROG(HAVE_CAMLP5O, camlp5o, yes, no)
34 if test $HAVE_CAMLP5O = "yes"; then
35   CAMLP5O="camlp5o"
36 else
37   AC_MSG_ERROR(could not find camlp5o)
38 fi
39
40 # look for METAS dir
41
42 LIBSPATH="`pwd`/components"
43 OCAMLPATH="$LIBSPATH/METAS"
44
45 # creating META.*
46
47 echo -n "creating METAs ... "
48 for f in $OCAMLPATH/meta.*.src; do
49   basename=`basename $f`
50   metaname=`echo $basename | sed 's/meta\.\(.*\)\.src/\1/'`
51   dirname=`echo $metaname | sed 's/^helm-//'`
52   metafile="$OCAMLPATH/META.$metaname"
53   cp $f $metafile
54   echo "directory=\"$LIBSPATH/$dirname\"" >> $metafile
55 done
56 echo "done"
57
58 # (libs) findlib requisites
59
60 FINDLIB_LIBSREQUIRES="\
61 expat \
62 gdome2 \
63 http \
64 lablgtk2 \
65 lablgtkmathview \
66 mysql \
67 netstring \
68 ulex08 \
69 zip \
70 "
71
72 # (Matita) findlib requisites
73
74 FINDLIB_COMREQUIRES="\
75 helm-disambiguation \
76 helm-cic_disambiguation \
77 helm-grafite \
78 helm-grafite_engine \
79 helm-tptp_grafite \
80 helm-ng_disambiguation \
81 helm-ng_cic_content \
82 helm-grafite_parser \
83 helm-acic_procedural \
84 helm-content_pres \
85 helm-hgdome \
86 helm-tactics \
87 helm-ng_paramodulation \
88 helm-ng_tactics \
89 helm-cic_exportation \
90 "
91 FINDLIB_CREQUIRES=" \
92 $FINDLIB_COMREQUIRES \
93 "
94 FINDLIB_REQUIRES="\
95 $FINDLIB_CREQUIRES \
96 lablgtk2.glade \
97 lablgtk2.sourceview2 \
98 lablgtkmathview \
99 helm-xmldiff \
100 "
101 for r in $FINDLIB_LIBSREQUIRES $FINDLIB_REQUIRES
102 do
103   AC_MSG_CHECKING(for $r ocaml library)
104   if OCAMLPATH=$OCAMLPATH $OCAMLFIND query $r &> /dev/null; then
105     AC_MSG_RESULT(yes)
106   else
107     AC_MSG_ERROR(could not find $r ocaml library)
108   fi
109 done
110
111 OCAMLFIND_COMMANDS=""
112 # AC_CHECK_PROG(HAVE_OCAMLC_OPT, ocamlc.opt, yes, no)
113 # if test $HAVE_OCAMLC_OPT = "yes"; then
114 #   if test "$OCAMLFIND_COMMANDS" = ""; then
115 #     OCAMLFIND_COMMANDS="ocamlc=ocamlc.opt"
116 #   else
117 #     OCAMLFIND_COMMANDS="$OCAMLFIND_COMMANDS ocamlc=ocamlc.opt"
118 #   fi
119 # fi
120 # AC_CHECK_PROG(HAVE_OCAMLOPT_OPT, ocamlopt.opt, yes, no)
121 # if test $HAVE_OCAMLOPT_OPT = "yes"; then
122 #   if test "$OCAMLFIND_COMMANDS" = ""; then
123 #     OCAMLFIND_COMMANDS="ocamlopt=ocamlopt.opt"
124 #   else
125 #     OCAMLFIND_COMMANDS="$OCAMLFIND_COMMANDS ocamlopt=ocamlopt.opt"
126 #   fi
127 # fi
128 if test "$OCAMLFIND_COMMANDS" != ""; then
129   OCAMLFIND="OCAMLFIND_COMMANDS='$OCAMLFIND_COMMANDS' $OCAMLFIND"
130 fi
131
132 AC_MSG_CHECKING(--enable-debug argument)
133 AC_ARG_ENABLE(debug,
134   [  --enable-debug       Turn on debugging],
135   [GIVEN="yes";
136    case "${enableval}" in
137    yes) DEBUG=true ;;
138    no)  DEBUG=false ;;
139    *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
140   esac],
141   [GIVEN="no"; DEBUG="$DEBUG_DEFAULT"])
142 MSG=$GIVEN
143 if test "$DEBUG" = "true"; then
144   MSG="$MSG, debugging enabled."
145 else
146   MSG="$MSG, debugging disabled."
147 fi
148 AC_MSG_RESULT($MSG)
149
150 AC_MSG_CHECKING(--enable-annot argument)
151 AC_ARG_ENABLE(annot,
152   [  --enable-annot       Turn on -dtypes compilation option],
153   [GIVEN="yes";
154    case "${enableval}" in
155    yes) ANNOT=true;;
156    no)  ANNOT=false;;
157    *) AC_MSG_ERROR(bad value ${enableval} for --enable-annot) ;;
158   esac],
159   [GIVEN="no"; ANNOT="false"])
160 MSG=$GIVEN
161 if test "$ANNOT" = "true"; then
162   MSG="$MSG, type annotation enabled."
163 else
164   MSG="$MSG, type annotation disabled."
165 fi
166 AC_MSG_RESULT($MSG)
167
168
169 AC_MSG_CHECKING(--with-runtime-dir argument)
170 AC_ARG_WITH(runtime-dir,
171   [  --with-runtime-dir      Runtime directory (current working directory if not given)],
172   [ RT_BASE_DIR="${withval}" ],
173   [ RT_BASE_DIR="$RT_BASE_DIR_DEFAULT" ])
174 MSG="$RT_BASE_DIR"
175 if test "yes" = "$RT_BASE_DIR"; then
176   MSG="
177 ** error:                                                                  **
178 **  empty --with-runtime-dir argument, please use --with-runtime-dir=value **"
179 fi
180 AC_MSG_RESULT($MSG)
181
182 AC_MSG_CHECKING(--with-dbhost argument)
183 AC_ARG_WITH(dbhost,
184   [  --with-dbhost           SQL database hostname],
185   [ DBHOST="${withval}" ],
186   [ DBHOST="$DEFAULT_DBHOST" ])
187 MSG="$DBHOST"
188 if test "yes" = "$DBHOST"; then
189   MSG="
190 ** error:                                                                  **
191 **  empty --with-dbhost argument, please use --with-dbhost=value           **"
192 fi
193 AC_MSG_RESULT($MSG)
194
195 AC_SUBST(CAMLP5O)
196 AC_SUBST(DBHOST)
197 AC_SUBST(DEBUG)
198 AC_SUBST(ANNOT)
199 AC_SUBST(DISTRIBUTED)
200 AC_SUBST(FINDLIB_CREQUIRES)
201 AC_SUBST(FINDLIB_REQUIRES)
202 AC_SUBST(HAVE_OCAMLOPT)
203 AC_SUBST(LABLGLADECC)
204 AC_SUBST(MATITA_VERSION)
205 AC_SUBST(OCAMLFIND)
206 AC_SUBST(OCAMLPATH)
207 AC_SUBST(RT_BASE_DIR)
208 AC_SUBST(SRCROOT)
209 AC_SUBST(TRANSFORMER_MODULE)
210
211 AC_OUTPUT([
212   components/extlib/componentsConf.ml
213   matita/matita.conf.xml
214   matita/buildTimeConf.ml
215   matita/gtkmathview.matita.conf.xml
216   matita/help/C/version.txt
217   Makefile.defs
218 ])