2012-08-09 16:03:55 +06:00
# Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
2009-02-17 10:27:49 +05:00
#
2012-08-09 16:03:55 +06:00
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License.
2009-02-17 10:27:49 +05:00
#
2012-08-09 16:03:55 +06:00
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
2009-02-17 10:27:49 +05:00
#
2012-08-09 16:03:55 +06:00
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
2009-02-17 10:27:49 +05:00
#
2012-08-09 16:03:55 +06:00
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
2003-05-19 19:18:36 +06:00
#
2012-08-09 16:03:55 +06:00
2003-05-19 19:18:36 +06:00
# Author : Marc Tajchman (CEA)
# Date : 28/06/2001
# Modified by : Patrick GOLDBRONN (CEA)
# Modified by : Marc Tajchman (CEA)
2008-03-07 12:47:05 +05:00
# Modified by : Alexander BORODIN (OCN) - autotools usage
2003-05-19 19:18:36 +06:00
# Created from configure.in.base
#
2012-08-15 16:44:59 +06:00
AC_INIT([Salome2 Project SMESH module], [7.0.0], [webmaster.salome@opencascade.com], [SalomeSMESH])
2012-08-09 16:03:55 +06:00
AC_CONFIG_AUX_DIR(adm_local/unix/config_files)
2008-03-07 12:47:05 +05:00
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
2012-08-09 16:03:55 +06:00
AM_INIT_AUTOMAKE([-Wno-portability])
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
XVERSION=`echo $VERSION | awk -F. '{printf("0x%02x%02x%02x",$1,$2,$3)}'`
2006-06-01 17:39:17 +06:00
AC_SUBST(XVERSION)
2012-08-09 16:03:55 +06:00
VERSION_DEV=1
AC_SUBST(VERSION_DEV)
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
# set up MODULE_NAME variable for dynamic construction of directories (resources, etc.)
MODULE_NAME=smesh
AC_SUBST(MODULE_NAME)
echo
echo ---------------------------------------------
echo Initialize source and build root directories
echo ---------------------------------------------
echo
2003-05-19 19:18:36 +06:00
dnl
dnl Initialize source and build root directories
dnl
ROOT_BUILDDIR=`pwd`
ROOT_SRCDIR=`echo $0 | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"`
cd $ROOT_SRCDIR
ROOT_SRCDIR=`pwd`
cd $ROOT_BUILDDIR
AC_SUBST(ROOT_SRCDIR)
AC_SUBST(ROOT_BUILDDIR)
echo
echo Source root directory : $ROOT_SRCDIR
echo Build root directory : $ROOT_BUILDDIR
echo
echo
if test -z "$AR"; then
AC_CHECK_PROGS(AR,ar xar,:,$PATH)
fi
AC_SUBST(AR)
dnl Export the AR macro so that it will be placed in the libtool file
dnl correctly.
export AR
echo
echo ---------------------------------------------
echo testing make
echo ---------------------------------------------
echo
AC_PROG_MAKE_SET
AC_PROG_INSTALL
2012-08-09 16:03:55 +06:00
AC_LOCAL_INSTALL
2008-03-07 12:47:05 +05:00
dnl
2003-05-19 19:18:36 +06:00
dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + pour les librairies dynamiques !
2008-03-07 12:47:05 +05:00
echo
echo ---------------------------------------------
2012-08-09 16:03:55 +06:00
echo Configuring production
2008-03-07 12:47:05 +05:00
echo ---------------------------------------------
echo
2003-05-19 19:18:36 +06:00
AC_ENABLE_DEBUG(yes)
AC_DISABLE_PRODUCTION
echo ---------------------------------------------
echo testing libtool
echo ---------------------------------------------
dnl first, we set static to no!
dnl if we want it, use --enable-static
AC_ENABLE_STATIC(no)
AC_LIBTOOL_DLOPEN
AC_PROG_LIBTOOL
dnl Fix up the INSTALL macro if it s a relative path. We want the
dnl full-path to the binary instead.
case "$INSTALL" in
*install-sh*)
2012-08-09 16:03:55 +06:00
INSTALL='\${ROOT_BUILDDIR}'/adm_local/unix/config_files/install-sh
2003-05-19 19:18:36 +06:00
;;
esac
echo
echo ---------------------------------------------
echo testing C/C++
echo ---------------------------------------------
echo
cc_ok=no
dnl inutil car libtool
dnl AC_PROG_CC
AC_PROG_CXX
2008-03-07 12:47:05 +05:00
AC_CXX_WARNINGS
AC_CXX_TEMPLATE_OPTIONS
2003-05-19 19:18:36 +06:00
AC_DEPEND_FLAG
# AC_CC_WARNINGS([ansi])
cc_ok=yes
2008-03-07 12:47:05 +05:00
echo
echo ---------------------------------------------
echo testing Fortran
echo ---------------------------------------------
echo
fortran_ok=no
AC_PROG_F77
AC_F77_LIBRARY_LDFLAGS
AC_PROG_FC
AC_FC_LIBRARY_LDFLAGS
if test "X$FC" != "X" ; then
fortran_ok=yes
2009-02-17 10:27:49 +05:00
F77=$FC
2008-03-07 12:47:05 +05:00
fi
dnl AM_CONDITIONAL( USE_GFORTRAN, [test "$F77" = "gfortran"])
echo
2003-05-19 19:18:36 +06:00
dnl Library libdl :
AC_CHECK_LIB(dl,dlopen)
dnl add library libm :
AC_CHECK_LIB(m,ceil)
2008-03-07 12:47:05 +05:00
dnl
2003-05-19 19:18:36 +06:00
dnl Well we use sstream which is not in gcc pre-2.95.3
dnl We must test if it exists. If not, add it in include !
dnl
AC_CXX_HAVE_SSTREAM
dnl
dnl ---------------------------------------------
dnl testing MPICH
dnl ---------------------------------------------
dnl
2012-08-09 16:03:55 +06:00
dnl CHECK_MPICH
echo
echo ---------------------------------------------
echo testing MPI
echo ---------------------------------------------
echo
CHECK_MPI
2003-05-19 19:18:36 +06:00
echo
echo ---------------------------------------------
echo testing LEX \& YACC
echo ---------------------------------------------
echo
lex_yacc_ok=no
AC_PROG_YACC
AC_PROG_LEX
lex_yacc_ok=yes
echo
echo ---------------------------------------------
echo testing python
echo ---------------------------------------------
echo
CHECK_PYTHON
2003-07-10 20:47:01 +06:00
dnl echo
dnl echo ---------------------------------------------
dnl echo testing java
dnl echo ---------------------------------------------
dnl echo
2003-05-19 19:18:36 +06:00
2003-07-10 20:47:01 +06:00
dnl CHECK_JAVA
2003-05-19 19:18:36 +06:00
echo
echo ---------------------------------------------
echo testing swig
echo ---------------------------------------------
echo
2008-03-07 12:47:05 +05:00
AM_PATH_PYTHON(2.3)
2003-05-19 19:18:36 +06:00
CHECK_SWIG
echo
echo ---------------------------------------------
echo testing threads
echo ---------------------------------------------
echo
ENABLE_PTHREADS
2008-03-07 12:47:05 +05:00
if test "x${GUI_DISABLE_CORBA}" != "xyes" ; then
echo
echo ---------------------------------------------
echo testing omniORB
echo ---------------------------------------------
echo
CHECK_OMNIORB
2003-05-19 19:18:36 +06:00
2003-07-10 20:47:01 +06:00
dnl echo
dnl echo ---------------------------------------------
dnl echo testing mico
dnl echo ---------------------------------------------
dnl echo
2003-05-19 19:18:36 +06:00
2003-07-10 20:47:01 +06:00
dnl CHECK_MICO
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
echo
echo ---------------------------------------------
echo default ORB : omniORB
echo ---------------------------------------------
echo
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
DEFAULT_ORB=omniORB
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
echo
echo ---------------------------------------------
echo testing Corba
echo ---------------------------------------------
echo
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
CHECK_CORBA
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
AC_SUBST_FILE(CORBA)
corba=make_$ORB
CORBA=adm_local/unix/$corba
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
fi
2003-05-19 19:18:36 +06:00
2012-08-09 16:03:55 +06:00
echo
echo ---------------------------------------------
echo Testing GUI
echo ---------------------------------------------
echo
CHECK_GUI_MODULE
gui_ok=no
if test "${SalomeGUI_need}" != "no" -a "${FullGUI_ok}" = "yes" ; then
gui_ok=yes
fi
AM_CONDITIONAL(SMESH_ENABLE_GUI, [test "${gui_ok}" = "yes"])
if test "${SalomeGUI_need}" == "yes"; then
if test "${FullGUI_ok}" != "yes"; then
AC_MSG_WARN(For configure SMESH module necessary full GUI!)
fi
elif test "${SalomeGUI_need}" == "auto"; then
if test "${FullGUI_ok}" != "yes"; then
AC_MSG_WARN(Full GUI not found. Build will be done without GUI!)
fi
elif test "${SalomeGUI_need}" == "no"; then
echo Build without GUI option has been chosen
fi
2003-05-19 19:18:36 +06:00
2012-08-09 16:03:55 +06:00
if test "${gui_ok}" = "yes"; then
2008-03-07 12:47:05 +05:00
echo
echo ---------------------------------------------
echo testing openGL
echo ---------------------------------------------
echo
2005-06-07 19:22:20 +06:00
2008-03-07 12:47:05 +05:00
CHECK_OPENGL
2005-06-07 19:22:20 +06:00
2008-03-07 12:47:05 +05:00
echo
echo ---------------------------------------------
echo testing QT
echo ---------------------------------------------
echo
CHECK_QT
echo
echo ---------------------------------------------
2012-08-09 16:03:55 +06:00
echo testing sip
2008-03-07 12:47:05 +05:00
echo ---------------------------------------------
echo
2012-08-09 16:03:55 +06:00
CHECK_SIP
2003-05-19 19:18:36 +06:00
2008-03-07 12:47:05 +05:00
echo
echo ---------------------------------------------
2012-08-09 16:03:55 +06:00
echo testing pyqt
2008-03-07 12:47:05 +05:00
echo ---------------------------------------------
echo
2012-08-09 16:03:55 +06:00
CHECK_PYQT
2008-03-07 12:47:05 +05:00
echo
echo ---------------------------------------------
2012-08-09 16:03:55 +06:00
echo Testing qwt
2008-03-07 12:47:05 +05:00
echo ---------------------------------------------
echo
2012-08-09 16:03:55 +06:00
CHECK_QWT
2008-03-07 12:47:05 +05:00
fi
2003-05-19 19:18:36 +06:00
2012-08-09 16:03:55 +06:00
echo
echo ---------------------------------------------
echo testing VTK
echo ---------------------------------------------
echo
CHECK_VTK
2003-05-19 19:18:36 +06:00
echo
echo ---------------------------------------------
echo testing HDF5
echo ---------------------------------------------
echo
CHECK_HDF5
2012-08-09 16:03:55 +06:00
echo
echo ---------------------------------------------
echo testing MED3
echo ---------------------------------------------
echo
CHECK_MED3
2006-06-01 17:39:17 +06:00
echo
echo ---------------------------------------------
echo BOOST Library
echo ---------------------------------------------
echo
CHECK_BOOST
2003-05-19 19:18:36 +06:00
echo
echo ---------------------------------------------
echo Testing OpenCascade
echo ---------------------------------------------
echo
CHECK_CAS
2006-03-13 20:29:49 +05:00
echo
echo ---------------------------------------------
2012-08-09 16:03:55 +06:00
echo Testing html generators
2006-03-13 20:29:49 +05:00
echo ---------------------------------------------
echo
2012-08-09 16:03:55 +06:00
CHECK_HTML_GENERATORS
2006-03-13 20:29:49 +05:00
echo
echo ---------------------------------------------
2012-08-09 16:03:55 +06:00
echo testing sphinx
2006-03-13 20:29:49 +05:00
echo ---------------------------------------------
echo
2012-08-09 16:03:55 +06:00
CHECK_SPHINX
2006-03-13 20:29:49 +05:00
2012-08-09 16:03:55 +06:00
echo
echo ---------------------------------------------
echo testing libxm
echo ---------------------------------------------
echo
dnl Check the libxml that will be required to use the SALOME launcher
CHECK_LIBXML
2006-03-13 20:29:49 +05:00
2003-05-19 19:18:36 +06:00
echo
echo ---------------------------------------------
echo Testing Kernel
echo ---------------------------------------------
echo
CHECK_KERNEL
echo
echo ---------------------------------------------
echo Testing Geom
echo ---------------------------------------------
echo
CHECK_GEOM
2003-05-28 13:17:03 +06:00
echo
echo ---------------------------------------------
echo Testing Med
echo ---------------------------------------------
echo
CHECK_MED
2008-03-07 12:47:05 +05:00
CHECK_PLATFORM
2012-08-09 16:03:55 +06:00
echo
echo ---------------------------------------------
echo Testing CGNS library
echo ---------------------------------------------
echo
CHECK_CGNS
echo
echo ---------------------------------------------
echo Testing PADDER library
echo ---------------------------------------------
echo
CHECK_CGAL
CHECK_PADDER
echo
echo ---------------------------------------------
echo Testing TBB library
echo ---------------------------------------------
echo
CHECK_TBB
2003-05-19 19:18:36 +06:00
echo
echo ---------------------------------------------
echo Summary
echo ---------------------------------------------
echo
echo Configure
2008-03-07 12:47:05 +05:00
2012-08-09 16:03:55 +06:00
if test "${gui_ok}" = "yes"; then
variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok cgns_ok tbb_ok omniORB_ok occ_ok doxygen_ok graphviz_ok sphinx_ok qwt_ok Kernel_ok Geom_ok Med_ok gui_ok"
elif test "${SalomeGUI_need}" != "no"; then
variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok vtk_ok hdf5_ok cgns_ok tbb_ok med3_ok omniORB_ok occ_ok doxygen_ok graphviz_ok sphinx_ok Kernel_ok Geom_ok Med_ok gui_ok"
else
variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok vtk_ok hdf5_ok cgns_ok tbb_ok med3_ok omniORB_ok occ_ok doxygen_ok graphviz_ok sphinx_ok Kernel_ok Geom_ok Med_ok"
2008-03-07 12:47:05 +05:00
fi
2003-05-19 19:18:36 +06:00
for var in $variables
do
printf " %10s : " `echo \$var | sed -e "s,_ok,,"`
eval echo \$$var
done
echo
echo "Default ORB : $DEFAULT_ORB"
echo
2012-08-09 16:03:55 +06:00
echo "Optionnal products (for plugins):"
optional_vars="cgal_ok padder_ok"
for var in $optional_vars
do
printf " %10s : " `echo \$var | sed -e "s,_ok,,"`
eval echo \$$var
done
2003-05-19 19:18:36 +06:00
dnl We don t need to say when we re entering directories if we re using
dnl GNU make becuase make does it for us.
if test "X$GMAKE" = "Xyes"; then
AC_SUBST(SETX) SETX=":"
else
AC_SUBST(SETX) SETX="set -x"
fi
2008-03-07 12:47:05 +05:00
dnl AM_CONDITIONAL(GUI_ENABLE_CORBA, [test "$GUI_DISABLE_CORBA" = no])
dnl AM_CONDITIONAL(ENABLE_PYCONSOLE, [test "$DISABLE_PYCONSOLE" = no])
dnl AM_CONDITIONAL(ENABLE_GLVIEWER, [test "$DISABLE_GLVIEWER" = no])
dnl AM_CONDITIONAL(ENABLE_PLOT2DVIEWER, [test "$DISABLE_PLOT2DVIEWER" = no])
dnl AM_CONDITIONAL(ENABLE_SUPERVGRAPHVIEWER, [test "$DISABLE_SUPERVGRAPHVIEWER" = no])
dnl AM_CONDITIONAL(ENABLE_OCCVIEWER, [test "$DISABLE_OCCVIEWER" = no])
dnl AM_CONDITIONAL(ENABLE_VTKVIEWER, [test "$DISABLE_VTKVIEWER" = no])
dnl AM_CONDITIONAL(ENABLE_SALOMEOBJECT, [test "$DISABLE_SALOMEOBJECT" = no])
2003-05-19 19:18:36 +06:00
2012-08-09 16:03:55 +06:00
dnl Build with SMESH cancel compute feature
AC_DEFINE(WITH_SMESH_CANCEL_COMPUTE)
2003-05-19 19:18:36 +06:00
echo
echo ---------------------------------------------
echo generating Makefiles and configure files
echo ---------------------------------------------
echo
2009-02-17 10:27:49 +05:00
#AC_OUTPUT_COMMANDS([ \
# chmod +x ./bin/*; \
# chmod +x ./bin/salome/*; \
#])
2003-05-19 19:18:36 +06:00
2012-08-09 16:03:55 +06:00
AC_HACK_LIBTOOL
AC_CONFIG_COMMANDS([hack_libtool],[
sed -i "s%^CC=\"\(.*\)\"%hack_libtool (){ \n\
$(pwd)/hack_libtool \1 \"\$[@]\" \n\
}\n\
CC=\"hack_libtool\"%g" libtool
sed -i "s%\(\s*\)for searchdir in \$newlib_search_path \$lib_search_path \$sys_lib_search_path \$shlib_search_path; do%\1searchdirs=\"\$newlib_search_path \$lib_search_path \$sys_lib_search_path \$shlib_search_path\"\n\1for searchdir in \$searchdirs; do%g" libtool
sed -i "s%\(\s*\)searchdirs=\"\$newlib_search_path \$lib_search_path \(.*\)\"%\1searchdirs=\"\$newlib_search_path \$lib_search_path\"\n\1sss_beg=\"\"\n\1sss_end=\"\2\"%g" libtool
sed -i "s%\(\s*\)\(for searchdir in \$searchdirs; do\)%\1for sss in \$searchdirs; do\n\1 if ! test -d \$sss; then continue; fi\n\1 ssss=\$(cd \$sss; pwd)\n\1 if test \"\$ssss\" != \"\" \&\& test -d \$ssss; then\n\1 case \$ssss in\n\1 /usr/lib | /usr/lib64 ) ;;\n\1 * ) sss_beg=\"\$sss_beg \$ssss\" ;;\n\1 esac\n\1 fi\n\1done\n\1searchdirs=\"\$sss_beg \$sss_end\"\n\1\2%g" libtool
],[])
2008-03-07 12:47:05 +05:00
# This list is initiated using autoscan and must be updated manually
# when adding a new file <filename>.in to manage. When you execute
# autoscan, the Makefile list is generated in the output file configure.scan.
# This could be helpfull to update de configuration.
AC_OUTPUT([ \
2012-08-09 16:03:55 +06:00
adm_local/Makefile \
adm_local/cmake_files/Makefile \
adm_local/unix/Makefile \
adm_local/unix/config_files/Makefile \
bin/VERSION \
bin/Makefile \
SMESH_version.h \
doc/Makefile \
doc/docutils/Makefile \
doc/docutils/conf.py \
doc/salome/Makefile \
doc/salome/gui/Makefile \
doc/salome/gui/SMESH/Makefile \
doc/salome/gui/SMESH/doxyfile \
doc/salome/gui/SMESH/doxyfile_py \
doc/salome/gui/SMESH/static/header.html \
doc/salome/gui/SMESH/static/header_py.html \
doc/salome/tui/Makefile \
doc/salome/tui/doxyfile \
doc/salome/tui/static/header.html \
src/Makefile \
src/Controls/Makefile \
src/Driver/Makefile \
src/DriverDAT/Makefile \
src/DriverMED/Makefile \
src/DriverSTL/Makefile \
src/DriverUNV/Makefile \
src/DriverCGNS/Makefile \
src/MEFISTO2/Makefile \
src/OBJECT/Makefile \
src/PluginUtils/Makefile \
src/SMDS/Makefile \
src/SMESH/Makefile \
src/SMESHUtils/Makefile \
src/SMESHClient/Makefile \
src/SMESHDS/Makefile \
src/SMESHFiltersSelection/Makefile \
src/SMESHGUI/Makefile \
src/SMESH_I/Makefile \
src/SMESH_SWIG/Makefile \
src/SMESH_SWIG_WITHIHM/Makefile \
src/StdMeshers/Makefile \
src/StdMeshersGUI/Makefile \
src/StdMeshers_I/Makefile \
src/SMESH_PY/Makefile \
src/Tools/Makefile \
src/Tools/MeshCut/Makefile \
src/Tools/padder/Makefile \
src/Tools/padder/meshjob/Makefile \
src/Tools/padder/meshjob/idl/Makefile \
src/Tools/padder/meshjob/impl/Makefile \
src/Tools/padder/spadderpy/Makefile \
src/Tools/padder/spadderpy/padder.cfg \
src/Tools/padder/spadderpy/gui/Makefile \
src/Tools/padder/spadderpy/plugin/Makefile \
src/Tools/padder/spadderpy/plugin/envPlugins.sh \
src/Tools/padder/resources/Makefile \
src/Tools/padder/resources/appligen/Makefile \
src/Tools/padder/resources/appligen/appligen.sh \
src/Tools/padder/resources/appligen/config_appli.xml \
src/Tools/padder/resources/padderexe/Makefile \
src/Tools/padder/resources/padderexe/envPadder.sh \
src/Tools/padder/unittests/Makefile \
src/Tools/padder/unittests/autotest.sh \
src/Tools/padder/doc/Makefile \
src/Tools/padder/doc/doxyfile \
resources/Makefile \
resources/SMESHCatalog.xml \
resources/SalomeApp.xml \
idl/Makefile \
2008-03-07 12:47:05 +05:00
Makefile
])