Salome HOME
Qt4 porting. Hypothesis Nb segment count Number of segment as not positive first...
[modules/smesh.git] / configure.ac
1 #
2 # Author : Marc Tajchman (CEA)
3 # Date : 28/06/2001
4 # Modified by : Patrick GOLDBRONN (CEA)
5 # Modified by : Marc Tajchman (CEA)
6 # Modified by : Alexander BORODIN (OCN) - autotools usage
7 #
8 # Created from configure.in.base
9 #
10
11
12 AC_INIT([Salome2 Project SMESH module], [5.0.0], [webmaster.salome@opencascade.com], [SalomeSMESH])
13 AC_CONFIG_AUX_DIR(salome_adm/unix/config_files)
14 AC_CANONICAL_HOST
15 AC_CANONICAL_TARGET
16 AM_INIT_AUTOMAKE
17
18 XVERSION=`echo $VERSION | awk -F. '{printf("0x%02x%02x%02x",$1,$2,$3)}'`
19 AC_SUBST(XVERSION)
20
21 # set up MODULE_NAME variable for dynamic construction of directories (resources, etc.)
22 MODULE_NAME=smesh
23 AC_SUBST(MODULE_NAME)
24
25 echo
26 echo ---------------------------------------------
27 echo Initialize source and build root directories
28 echo ---------------------------------------------
29 echo
30
31 dnl
32 dnl Initialize source and build root directories
33 dnl
34
35 ROOT_BUILDDIR=`pwd`
36 ROOT_SRCDIR=`echo $0 | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"`
37 cd $ROOT_SRCDIR
38 ROOT_SRCDIR=`pwd`
39 cd $ROOT_BUILDDIR
40
41 AC_SUBST(ROOT_SRCDIR)
42 AC_SUBST(ROOT_BUILDDIR)
43
44 echo
45 echo Source root directory : $ROOT_SRCDIR
46 echo Build  root directory : $ROOT_BUILDDIR
47 echo
48 echo
49
50 if test -z "$AR"; then
51    AC_CHECK_PROGS(AR,ar xar,:,$PATH)
52 fi
53 AC_SUBST(AR)
54
55 dnl Export the AR macro so that it will be placed in the libtool file
56 dnl correctly.
57 export AR
58
59 echo
60 echo ---------------------------------------------
61 echo testing make
62 echo ---------------------------------------------
63 echo
64
65 AC_PROG_MAKE_SET
66 AC_PROG_INSTALL
67 dnl
68 dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + pour les librairies dynamiques !
69
70 echo
71 echo ---------------------------------------------
72 echo Coniguring production
73 echo ---------------------------------------------
74 echo
75 AC_ENABLE_DEBUG(yes)
76 AC_DISABLE_PRODUCTION
77
78 echo ---------------------------------------------
79 echo testing libtool
80 echo ---------------------------------------------
81
82 dnl first, we set static to no!
83 dnl if we want it, use --enable-static
84 AC_ENABLE_STATIC(no)
85
86 AC_LIBTOOL_DLOPEN
87 AC_PROG_LIBTOOL
88
89 dnl Fix up the INSTALL macro if it s a relative path. We want the
90 dnl full-path to the binary instead.
91 case "$INSTALL" in
92    *install-sh*)
93       INSTALL='\${ROOT_BUILDDIR}'/salome_adm/unix/config_files/install-sh
94       ;;
95 esac
96
97 echo
98 echo ---------------------------------------------
99 echo testing C/C++
100 echo ---------------------------------------------
101 echo
102
103 cc_ok=no
104 dnl inutil car libtool
105 dnl AC_PROG_CC
106 AC_PROG_CXX
107 AC_CXX_WARNINGS
108 AC_CXX_TEMPLATE_OPTIONS
109 AC_DEPEND_FLAG
110 # AC_CC_WARNINGS([ansi])
111 cc_ok=yes
112
113 echo
114 echo ---------------------------------------------
115 echo testing Fortran
116 echo ---------------------------------------------
117 echo
118
119 fortran_ok=no
120 AC_PROG_F77
121 AC_F77_LIBRARY_LDFLAGS
122 AC_PROG_FC
123 AC_FC_LIBRARY_LDFLAGS
124 if test "X$FC" != "X" ; then
125    fortran_ok=yes
126    F77=$FC
127 fi
128
129 dnl AM_CONDITIONAL( USE_GFORTRAN, [test "$F77" = "gfortran"])
130
131 echo
132
133 dnl Library libdl :
134 AC_CHECK_LIB(dl,dlopen)
135
136 dnl add library libm :
137 AC_CHECK_LIB(m,ceil)
138
139 dnl
140 dnl Well we use sstream which is not in gcc pre-2.95.3
141 dnl We must test if it exists. If not, add it in include !
142 dnl
143
144 AC_CXX_HAVE_SSTREAM
145
146 dnl
147 dnl ---------------------------------------------
148 dnl testing MPICH
149 dnl ---------------------------------------------
150 dnl
151
152 CHECK_MPICH
153
154 echo
155 echo ---------------------------------------------
156 echo testing LEX \& YACC
157 echo ---------------------------------------------
158 echo
159
160 lex_yacc_ok=no
161 AC_PROG_YACC
162 AC_PROG_LEX
163 lex_yacc_ok=yes
164
165 echo
166 echo ---------------------------------------------
167 echo testing python
168 echo ---------------------------------------------
169 echo
170
171 CHECK_PYTHON
172
173 dnl echo
174 dnl echo ---------------------------------------------
175 dnl echo testing java
176 dnl echo ---------------------------------------------
177 dnl echo
178
179 dnl CHECK_JAVA
180
181 echo
182 echo ---------------------------------------------
183 echo testing swig
184 echo ---------------------------------------------
185 echo
186
187 AM_PATH_PYTHON(2.3)
188 CHECK_SWIG
189
190 echo
191 echo ---------------------------------------------
192 echo testing threads
193 echo ---------------------------------------------
194 echo
195
196 ENABLE_PTHREADS
197
198 SMESH_WITH_GUI=yes
199
200 AM_CONDITIONAL(SMESH_ENABLE_GUI, [test "${SMESH_WITH_GUI}" = "yes"])
201
202 if test "x${GUI_DISABLE_CORBA}" != "xyes" ; then
203     echo
204     echo ---------------------------------------------
205     echo testing omniORB
206     echo ---------------------------------------------
207     echo
208
209     CHECK_OMNIORB
210
211 dnl echo
212 dnl echo ---------------------------------------------
213 dnl echo testing mico
214 dnl echo ---------------------------------------------
215 dnl echo
216
217 dnl CHECK_MICO
218
219     echo
220     echo ---------------------------------------------
221     echo default ORB : omniORB
222     echo ---------------------------------------------
223     echo
224
225     DEFAULT_ORB=omniORB
226
227     echo
228     echo ---------------------------------------------
229     echo testing Corba
230     echo ---------------------------------------------
231     echo
232
233     CHECK_CORBA
234
235     AC_SUBST_FILE(CORBA)
236     corba=make_$ORB
237     CORBA=adm_local/unix/$corba
238
239 fi
240
241
242 if test "${SMESH_WITH_GUI}" = "yes"; then
243     echo
244     echo ---------------------------------------------
245     echo testing openGL
246     echo ---------------------------------------------
247     echo
248
249     CHECK_OPENGL
250
251     echo
252     echo ---------------------------------------------
253     echo testing QT
254     echo ---------------------------------------------
255     echo
256
257     CHECK_QT
258
259     echo
260     echo ---------------------------------------------
261     echo testing VTK
262     echo ---------------------------------------------
263     echo
264
265     CHECK_VTK
266
267     echo
268     echo ---------------------------------------------
269     echo Testing GUI
270     echo ---------------------------------------------
271     echo
272
273     CHECK_SALOME_GUI
274
275     echo
276     echo ---------------------------------------------
277     echo Testing full GUI
278     echo ---------------------------------------------
279     echo
280
281     CHECK_CORBA_IN_GUI
282     if test "x${CORBA_IN_GUI}" != "xyes"; then
283       echo "failed : For configure SMESH module necessary full GUI !"
284       exit
285     fi
286 fi
287
288 echo
289 echo ---------------------------------------------
290 echo testing HDF5
291 echo ---------------------------------------------
292 echo
293
294 CHECK_HDF5
295
296 echo
297 echo ---------------------------------------------
298 echo BOOST Library
299 echo ---------------------------------------------
300 echo
301
302 CHECK_BOOST
303
304 echo
305 echo ---------------------------------------------
306 echo Testing OpenCascade
307 echo ---------------------------------------------
308 echo
309
310 CHECK_CAS
311
312 if test "${SMESH_WITH_GUI}" = "yes"; then
313
314 echo
315 echo ---------------------------------------------
316 echo Testing qwt
317 echo ---------------------------------------------
318 echo
319
320 CHECK_QWT
321
322 fi
323
324 echo
325 echo ---------------------------------------------
326 echo Testing html generators
327 echo ---------------------------------------------
328 echo
329
330 CHECK_HTML_GENERATORS
331
332 echo
333 echo ---------------------------------------------
334 echo Testing Kernel
335 echo ---------------------------------------------
336 echo
337
338 CHECK_KERNEL
339
340 echo
341 echo ---------------------------------------------
342 echo Testing Geom
343 echo ---------------------------------------------
344 echo
345
346 CHECK_GEOM
347
348 echo
349 echo ---------------------------------------------
350 echo Testing Med
351 echo ---------------------------------------------
352 echo
353
354 CHECK_MED
355
356 CHECK_PLATFORM
357
358 echo
359 echo ---------------------------------------------
360 echo Summary
361 echo ---------------------------------------------
362 echo
363
364 echo Configure
365 if test "${SMESH_WITH_GUI}" = "yes"; then
366 variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok qwt_ok Kernel_ok Geom_ok Med_ok SalomeGUI_ok"
367 fi
368
369 if test "${SMESH_WITH_GUI}" = "no"; then
370 variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok Kernel_ok Geom_ok Med_ok"
371 fi
372
373 for var in $variables
374 do
375    printf "   %10s : " `echo \$var | sed -e "s,_ok,,"`
376    eval echo \$$var
377 done
378
379 echo
380 echo "Default ORB   : $DEFAULT_ORB"
381 echo
382
383 dnl We don t need to say when we re entering directories if we re using
384 dnl GNU make becuase make does it for us.
385 if test "X$GMAKE" = "Xyes"; then
386    AC_SUBST(SETX) SETX=":"
387 else
388    AC_SUBST(SETX) SETX="set -x"
389 fi
390
391 dnl AM_CONDITIONAL(GUI_ENABLE_CORBA, [test "$GUI_DISABLE_CORBA" = no])
392 dnl AM_CONDITIONAL(ENABLE_PYCONSOLE, [test "$DISABLE_PYCONSOLE" = no])
393 dnl AM_CONDITIONAL(ENABLE_GLVIEWER, [test "$DISABLE_GLVIEWER" = no])
394 dnl AM_CONDITIONAL(ENABLE_PLOT2DVIEWER, [test "$DISABLE_PLOT2DVIEWER" = no])
395 dnl AM_CONDITIONAL(ENABLE_SUPERVGRAPHVIEWER, [test "$DISABLE_SUPERVGRAPHVIEWER" = no])
396 dnl AM_CONDITIONAL(ENABLE_OCCVIEWER, [test "$DISABLE_OCCVIEWER" = no])
397 dnl AM_CONDITIONAL(ENABLE_VTKVIEWER, [test "$DISABLE_VTKVIEWER" = no])
398 dnl AM_CONDITIONAL(ENABLE_SALOMEOBJECT, [test "$DISABLE_SALOMEOBJECT" = no])
399
400 echo
401 echo ---------------------------------------------
402 echo generating Makefiles and configure files
403 echo ---------------------------------------------
404 echo
405
406 #AC_OUTPUT_COMMANDS([ \
407 #  chmod +x ./bin/*; \
408 #  chmod +x ./bin/salome/*; \
409 #])
410
411 # This list is initiated using autoscan and must be updated manually
412 # when adding a new file <filename>.in to manage. When you execute
413 # autoscan, the Makefile list is generated in the output file configure.scan.
414 # This could be helpfull to update de configuration.
415 AC_OUTPUT([ \
416   ./salome_adm/unix/SALOMEconfig.h \
417   ./adm_local/Makefile \
418   ./adm_local/unix/Makefile \
419   ./adm_local/unix/config_files/Makefile \
420   ./bin/VERSION \
421   ./bin/Makefile \
422   ./SMESH_version.h \
423   ./doc/Makefile \
424   ./doc/salome/Makefile \
425   ./doc/salome/gui/Makefile \
426   ./doc/salome/gui/SMESH/Makefile \
427   ./doc/salome/gui/SMESH/doxyfile \
428   ./doc/salome/gui/SMESH/doxyfile_py \
429   ./doc/salome/tui/Makefile \
430   ./doc/salome/tui/doxyfile \
431   ./src/Makefile \
432   ./src/Controls/Makefile \
433   ./src/Driver/Makefile \
434   ./src/DriverDAT/Makefile \
435   ./src/DriverMED/Makefile \
436   ./src/DriverSTL/Makefile \
437   ./src/DriverUNV/Makefile \
438   ./src/MEFISTO2/Makefile \
439   ./src/OBJECT/Makefile \
440   ./src/SMDS/Makefile \
441   ./src/SMESH/Makefile \
442   ./src/SMESHClient/Makefile \
443   ./src/SMESHDS/Makefile \
444   ./src/SMESHFiltersSelection/Makefile \
445   ./src/SMESHGUI/Makefile \
446   ./src/SMESH_I/Makefile \
447   ./src/SMESH_SWIG/Makefile \
448   ./src/SMESH_SWIG_WITHIHM/Makefile \
449   ./src/StdMeshers/Makefile \
450   ./src/StdMeshersGUI/Makefile \
451   ./src/StdMeshers_I/Makefile \
452   ./resources/Makefile \
453   ./resources/SMESHCatalog.xml \
454   ./idl/Makefile \
455   Makefile
456 ])