]> SALOME platform Git repositories - modules/hexablock.git/blob - configure.ac
Salome HOME
First publish of HEXABLOCKcomponant
[modules/hexablock.git] / configure.ac
1 #  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
2 #
3 #  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 #
6 #  This library is free software; you can redistribute it and/or
7 #  modify it under the terms of the GNU Lesser General Public
8 #  License as published by the Free Software Foundation; either
9 #  version 2.1 of the License.
10 #
11 #  This library is distributed in the hope that it will be useful,
12 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 #  Lesser General Public License for more details.
15 #
16 #  You should have received a copy of the GNU Lesser General Public
17 #  License along with this library; if not, write to the Free Software
18 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 #
20 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 #
22 #  PLEASE DO NOT MODIFY configure.in FILE
23 #  ALL CHANGES WILL BE DISCARDED BY THE NEXT
24 #  build_configure COMMAND
25 #  CHANGES MUST BE MADE IN configure.in.base FILE
26 # Author : Marc Tajchman (CEA)
27 # Date : 28/06/2001
28 # Modified by : Patrick GOLDBRONN (CEA)
29 # Modified by : Marc Tajchman (CEA)
30 # Created from configure.in.base
31 #
32 AC_INIT([Salome6 Project HEXABLOCK module],[5.1.2], [webmaster.salome@opencascade.com], [SalomeHEXABLOCK])
33 AC_CONFIG_AUX_DIR(adm_local/unix/config_files)
34 AC_CANONICAL_HOST
35 AC_CANONICAL_TARGET
36 AM_INIT_AUTOMAKE([-Wno-portability])
37
38 XVERSION=`echo $VERSION | awk -F. '{printf("0x%02x%02x%02x",$1,$2,$3)}'`
39 AC_SUBST(XVERSION)
40
41 # set up MODULE_NAME variable for dynamic construction of directories (resources, etc.)
42 MODULE_NAME=hexablock
43 AC_SUBST(MODULE_NAME)
44
45 dnl
46 dnl Initialize source and build root directories
47 dnl
48
49 ROOT_BUILDDIR=`pwd`
50 ROOT_SRCDIR=`echo $0 | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"`
51 cd $ROOT_SRCDIR
52 ROOT_SRCDIR=`pwd`
53 cd $ROOT_BUILDDIR
54
55 AC_SUBST(ROOT_SRCDIR)
56 AC_SUBST(ROOT_BUILDDIR)
57
58 echo
59 echo Source root directory : $ROOT_SRCDIR
60 echo Build  root directory : $ROOT_BUILDDIR
61 echo
62 echo
63
64 AC_CHECK_PROG(SHELL,sh)
65 AC_SUBST(SHELL)
66
67 if test -z "$AR"; then
68    AC_CHECK_PROGS(AR,ar xar,:,$PATH)
69 fi
70 AC_SUBST(AR)
71
72 dnl Export the AR macro so that it will be placed in the libtool file
73 dnl correctly.
74 export AR
75
76 echo
77 echo ---------------------------------------------
78 echo testing make
79 echo ---------------------------------------------
80 echo
81
82 AC_PROG_MAKE_SET
83 AC_PROG_INSTALL
84 dnl 
85 dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + for shared libraries
86
87 AC_ENABLE_DEBUG(yes)
88 AC_DISABLE_PRODUCTION
89
90 echo ---------------------------------------------
91 echo testing libtool
92 echo ---------------------------------------------
93
94 dnl first, we set static to no!
95 dnl if we want it, use --enable-static
96 AC_ENABLE_STATIC(no)
97
98 AC_LIBTOOL_DLOPEN
99 AC_PROG_LIBTOOL
100
101 dnl Fix up the INSTALL macro if it s a relative path. We want the
102 dnl full-path to the binary instead.
103 case "$INSTALL" in
104    *install-sh*)
105       INSTALL='\${KERNEL_ROOT_DIR}'/salome_adm/unix/config_files/install-sh
106       ;;
107 esac
108
109 echo
110 echo ---------------------------------------------
111 echo testing C/C++
112 echo ---------------------------------------------
113 echo
114
115 cc_ok=no
116 dnl inutil car libtool
117 dnl AC_PROG_CC
118 AC_PROG_CXX
119 AC_CXX_WARNINGS
120 AC_CXX_TEMPLATE_OPTIONS
121 AC_DEPEND_FLAG
122 # AC_CC_WARNINGS([ansi])
123 cc_ok=yes
124
125 dnl Library libdl :
126 AC_CHECK_LIB(dl,dlopen)
127
128 dnl Library librt : for alpha/osf
129 AC_CHECK_LIB(rt,nanosleep)
130
131 dnl add library libm :
132 AC_CHECK_LIB(m,ceil)
133
134 AC_CXX_USE_STD_IOSTREAM
135 AC_CXX_HAVE_SSTREAM
136
137 dnl
138 dnl ---------------------------------------------
139 dnl testing linker
140 dnl ---------------------------------------------
141 dnl
142
143 AC_LINKER_OPTIONS
144
145 echo
146 echo ---------------------------------------------
147 echo testing threads
148 echo ---------------------------------------------
149 echo
150
151 ENABLE_PTHREADS
152
153 echo
154 echo ---------------------------------------------
155 echo testing python
156 echo ---------------------------------------------
157 echo
158
159 CHECK_PYTHON
160
161 AM_PATH_PYTHON(2.3)
162
163 echo
164 echo ---------------------------------------------
165 echo testing QT
166 echo ---------------------------------------------
167 echo
168
169 CHECK_QT
170
171 echo
172 echo ---------------------------------------------
173 echo BOOST Library
174 echo ---------------------------------------------
175 echo
176
177 CHECK_BOOST
178
179 echo
180 echo ---------------------------------------------
181 echo Testing OpenCascade
182 echo ---------------------------------------------
183 echo
184
185 CHECK_CAS
186
187 echo
188 echo ---------------------------------------------
189 echo testing omniORB
190 echo ---------------------------------------------
191 echo
192
193 CHECK_OMNIORB
194
195 echo
196 echo ---------------------------------------------
197 echo default ORB : omniORB
198 echo ---------------------------------------------
199 echo
200
201 DEFAULT_ORB=omniORB
202 CHECK_CORBA
203
204 AC_SUBST_FILE(CORBA)
205 corba=make_$ORB
206 CORBA=adm_local/unix/$corba
207
208
209
210 echo
211 echo ----------------------------------------------
212 echo testing CPPUNIT only required for unit testing
213 echo ----------------------------------------------
214 echo
215 CHECK_CPPUNIT
216
217
218
219 echo
220 echo ---------------------------------------------
221 echo Testing Kernel
222 echo ---------------------------------------------
223 echo
224
225 CHECK_KERNEL
226
227
228
229 echo
230 echo ---------------------------------------------
231 echo Testing Geom
232 echo ---------------------------------------------
233 echo
234
235 CHECK_GEOM
236
237
238
239
240 echo
241 echo ---------------------------------------------
242 echo Testing GUI
243 echo ---------------------------------------------
244 echo
245
246 CHECK_SALOME_GUI
247
248 echo
249 echo ---------------------------------------------
250 echo Testing full GUI
251 echo ---------------------------------------------
252 echo
253
254 CHECK_CORBA_IN_GUI
255 if test "x${CORBA_IN_GUI}" != "xyes"; then
256   echo "failed : For configure HEXABLOCK module necessary full GUI !"
257   exit
258 fi
259
260
261 echo
262 echo ---------------------------------------------
263 echo Summary
264 echo ---------------------------------------------
265 echo
266
267 echo Configure
268 variables="cc_ok threads_ok boost_ok python_ok omniORB_ok qt_ok Kernel_ok SalomeGUI_ok"
269
270 for var in $variables
271 do
272    printf "   %10s : " `echo \$var | sed -e "s,_ok,,"`
273    eval echo \$$var
274 done
275
276 echo
277 echo "Default ORB   : $DEFAULT_ORB"
278 echo
279
280 dnl We don t need to say when we re entering directories if we re using
281 dnl GNU make becuase make does it for us.
282 if test "X$GMAKE" = "Xyes"; then
283    AC_SUBST(SETX) SETX=":"
284 else
285    AC_SUBST(SETX) SETX="set -x"
286 fi
287 echo
288 echo ---------------------------------------------
289 echo generating Makefiles and configure files
290 echo ---------------------------------------------
291 echo
292
293 AC_OUTPUT_COMMANDS([ \
294       chmod +x ./bin/*; \
295 ])
296
297 # This list is initiated using autoscan and must be updated manually
298 # when adding a new file <filename>.in to manage. When you execute
299 # autoscan, the Makefile list is generated in the output file configure.scan.
300
301 # This could be helpfull to update de configuration.
302 AC_OUTPUT([ \
303   salome_adm/unix/SALOMEconfig.h \
304   adm_local/Makefile \
305   adm_local/unix/Makefile \
306   adm_local/unix/config_files/Makefile \
307   bin/VERSION \
308   bin/runAppli \
309   bin/Makefile \
310   doc/Makefile \
311   HEXABLOCK_version.h \
312   resources/HEXABLOCKCatalog.xml \
313   src/Makefile \
314   src/HEXABLOCK/Makefile \
315   src/HEXABLOCK_I/Makefile \
316   src/HEXABLOCKGUI/Makefile \
317   src/TEST_CPP/Makefile \
318   src/TEST_PY/Makefile \
319   resources/Makefile \
320   idl/Makefile \
321   Makefile \
322 ])