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