Salome HOME
Join modifications from BR_Dev_For_4_0 tag V4_1_1.
[modules/geom.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 GEOM module], [4.1.1], [webmaster.salome@opencascade.com], [salome])
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=geom
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 dnl Library libdl :
114 AC_CHECK_LIB(dl,dlopen)
115
116 dnl add library libm :
117 AC_CHECK_LIB(m,ceil)
118
119 dnl
120 dnl Well we use sstream which is not in gcc pre-2.95.3
121 dnl We must test if it exists. If not, add it in include !
122 dnl
123
124 AC_CXX_HAVE_SSTREAM
125
126 dnl
127 dnl ---------------------------------------------
128 dnl testing MPICH
129 dnl ---------------------------------------------
130 dnl
131
132 CHECK_MPICH
133
134 echo
135 echo ---------------------------------------------
136 echo testing LEX \& YACC
137 echo ---------------------------------------------
138 echo
139
140 lex_yacc_ok=no
141 AC_PROG_YACC
142 AC_PROG_LEX
143 lex_yacc_ok=yes
144
145 echo
146 echo ---------------------------------------------
147 echo testing python
148 echo ---------------------------------------------
149 echo
150
151 CHECK_PYTHON
152
153 dnl echo
154 dnl echo ---------------------------------------------
155 dnl echo testing java
156 dnl echo ---------------------------------------------
157 dnl echo
158
159 dnl CHECK_JAVA
160
161 echo
162 echo ---------------------------------------------
163 echo testing swig
164 echo ---------------------------------------------
165 echo
166
167 AM_PATH_PYTHON(2.3)
168 CHECK_SWIG
169
170 echo
171 echo ---------------------------------------------
172 echo testing threads
173 echo ---------------------------------------------
174 echo
175
176 ENABLE_PTHREADS
177
178 if test "x${GUI_DISABLE_CORBA}" != "xyes" ; then
179 echo
180 echo ---------------------------------------------
181 echo testing omniORB
182 echo ---------------------------------------------
183 echo
184
185 CHECK_OMNIORB
186
187 dnl echo
188 dnl echo ---------------------------------------------
189 dnl echo testing mico
190 dnl echo ---------------------------------------------
191 dnl echo
192
193 dnl CHECK_MICO
194
195 echo
196 echo ---------------------------------------------
197 echo default ORB : omniORB
198 echo ---------------------------------------------
199 echo
200
201 DEFAULT_ORB=omniORB
202
203 echo
204 echo ---------------------------------------------
205 echo testing Corba
206 echo ---------------------------------------------
207 echo
208
209 CHECK_CORBA
210
211 AC_SUBST_FILE(CORBA)
212 corba=make_$ORB
213 CORBA=adm_local/unix/$corba
214
215 fi
216
217 GEOM_WITH_GUI=yes
218
219 AM_CONDITIONAL(GEOM_ENABLE_GUI, [test "${GEOM_WITH_GUI}" = "yes"])
220
221 if test "${GEOM_WITH_GUI}" = "yes"; then
222     echo
223     echo ---------------------------------------------
224     echo testing msg2qm
225     echo ---------------------------------------------
226     echo
227
228     CHECK_MSG2QM
229
230     echo
231     echo ---------------------------------------------
232     echo testing openGL
233     echo ---------------------------------------------
234     echo
235
236     CHECK_OPENGL
237
238     echo
239     echo ---------------------------------------------
240     echo testing QT
241     echo ---------------------------------------------
242     echo
243
244     CHECK_QT
245
246     echo
247     echo ---------------------------------------------
248     echo testing VTK
249     echo ---------------------------------------------
250     echo
251
252     CHECK_VTK
253
254     echo
255     echo ---------------------------------------------
256     echo Testing GUI
257     echo ---------------------------------------------
258     echo
259
260     CHECK_SALOME_GUI
261
262     echo
263     echo ---------------------------------------------
264     echo Testing full GUI
265     echo ---------------------------------------------
266     echo
267
268     CHECK_CORBA_IN_GUI
269     if test "x${CORBA_IN_GUI}" != "xyes"; then
270       echo "failed : For configure GEOM module necessary full GUI !"
271       exit
272     fi
273 fi
274
275 echo
276 echo ---------------------------------------------
277 echo testing HDF5
278 echo ---------------------------------------------
279 echo
280
281 CHECK_HDF5
282
283 echo
284 echo ---------------------------------------------
285 echo BOOST Library
286 echo ---------------------------------------------
287 echo
288
289 CHECK_BOOST
290
291 echo
292 echo ---------------------------------------------
293 echo Testing OpenCascade
294 echo ---------------------------------------------
295 echo
296
297 CHECK_CAS
298
299 echo
300 echo ---------------------------------------------
301 echo Testing html generators
302 echo ---------------------------------------------
303 echo
304
305 CHECK_HTML_GENERATORS
306
307 echo
308 echo ---------------------------------------------
309 echo Testing Kernel
310 echo ---------------------------------------------
311 echo
312
313 CHECK_KERNEL
314
315 echo
316 echo ---------------------------------------------
317 echo Summary
318 echo ---------------------------------------------
319 echo
320
321 echo Configure
322
323 if test "${GEOM_WITH_GUI}" = "yes"; then
324 variables="cc_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok boost_ok occ_ok doxygen_ok graphviz_ok Kernel_ok"
325 fi
326 if test "${GEOM_WITH_GUI}" = "no"; then
327 variables="cc_ok lex_yacc_ok python_ok swig_ok threads_ok hdf5_ok omniORB_ok boost_ok occ_ok doxygen_ok graphviz_ok Kernel_ok"
328 fi
329
330 for var in $variables
331 do
332    printf "   %10s : " `echo \$var | sed -e "s,_ok,,"`
333    eval echo \$$var
334 done
335
336 echo
337 echo "Default ORB   : $DEFAULT_ORB"
338 echo
339
340 dnl We don t need to say when we re entering directories if we re using
341 dnl GNU make becuase make does it for us.
342 if test "X$GMAKE" = "Xyes"; then
343    AC_SUBST(SETX) SETX=":"
344 else
345    AC_SUBST(SETX) SETX="set -x"
346 fi
347
348 dnl copy shells and utilities contained in the bin directory
349 dnl excluding .in files (treated in AC-OUTPUT below) and CVS
350 dnl directory
351
352
353 echo
354 echo ---------------------------------------------
355 echo generating Makefiles and configure files
356 echo ---------------------------------------------
357 echo
358
359 AC_OUTPUT_COMMANDS([ \
360   chmod +x ./bin/*; \
361 ])
362
363 # This list is initiated using autoscan and must be updated manually
364 # when adding a new file <filename>.in to manage. When you execute
365 # autoscan, the Makefile list is generated in the output file configure.scan.
366 # This could be helpfull to update de configuration.
367 AC_OUTPUT([ \
368   ./salome_adm/unix/SALOMEconfig.h \
369   ./adm_local/Makefile \
370   ./adm_local/unix/Makefile \
371   ./adm_local/unix/config_files/Makefile \
372   ./bin/VERSION \
373   ./bin/Makefile \
374   ./GEOM_version.h \
375   ./doc/Makefile \
376   ./doc/salome/Makefile \
377   ./doc/salome/gui/Makefile \
378   ./doc/salome/gui/GEOM/doxyfile \
379   ./doc/salome/gui/GEOM/doxyfile_py \
380   ./doc/salome/tui/Makefile \
381   ./doc/salome/tui/GEOM/doxyfile \
382   ./doc/salome/tui/GEOM/sources/static/tree.js \
383   ./src/Makefile \
384   ./src/ARCHIMEDE/Makefile \
385   ./src/BREPExport/Makefile \
386   ./src/BREPImport/Makefile \
387   ./src/BasicGUI/Makefile \
388   ./src/BlocksGUI/Makefile \
389   ./src/BooleanGUI/Makefile \
390   ./src/BuildGUI/Makefile \
391   ./src/DisplayGUI/Makefile \
392   ./src/DlgRef/Makefile \
393   ./src/EntityGUI/Makefile \
394   ./src/GEOM/Makefile \
395   ./src/GEOMAlgo/Makefile \
396   ./src/GEOMBase/Makefile \
397   ./src/GEOMClient/Makefile \
398   ./src/GEOMFiltersSelection/Makefile \
399   ./src/GEOMGUI/Makefile \
400   ./src/GEOMImpl/Makefile \
401   ./src/GEOMToolsGUI/Makefile \
402   ./src/GEOM_I/Makefile \
403   ./src/GEOM_I_Superv/Makefile \
404   ./src/GEOM_SWIG/Makefile \
405   ./src/GEOM_SWIG_WITHIHM/Makefile \
406   ./src/GenerationGUI/Makefile \
407   ./src/GroupGUI/Makefile \
408   ./src/IGESExport/Makefile \
409   ./src/IGESImport/Makefile \
410   ./src/MeasureGUI/Makefile \
411   ./src/NMTAlgo/Makefile \
412   ./src/NMTDS/Makefile \
413   ./src/NMTTools/Makefile \
414   ./src/OBJECT/Makefile \
415   ./src/OperationGUI/Makefile \
416   ./src/PrimitiveGUI/Makefile \
417   ./src/RepairGUI/Makefile \
418   ./src/SKETCHER/Makefile \
419   ./src/STEPExport/Makefile \
420   ./src/STEPImport/Makefile \
421   ./src/STLExport/Makefile \
422   ./src/ShHealOper/Makefile \
423   ./src/TransformationGUI/Makefile \
424   ./resources/Makefile \
425   ./resources/GEOMCatalog.xml \
426   ./idl/Makefile \
427   Makefile \
428 ])