Salome HOME
0022100: EDF 2413 SMESH: Take into account TRIA7
[modules/smesh.git] / configure.ac
index 4aeb847b623b8f813306f0394b9a0c58af862e34..83aaf368578504bafa31c24d694712edeb417c7a 100644 (file)
@@ -1,24 +1,22 @@
-#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
 #
-#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+# 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.
 #
-#  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.
+# 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.
 #
-#  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.
+# 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
 #
-#  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
-#
-#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+
 # Author : Marc Tajchman (CEA)
 # Date : 28/06/2001
 # Modified by : Patrick GOLDBRONN (CEA)
 # Modified by : Alexander BORODIN (OCN) - autotools usage
 # Created from configure.in.base
 #
-AC_INIT([Salome2 Project SMESH module], [5.1.0], [webmaster.salome@opencascade.com], [SalomeSMESH])
-AC_CONFIG_AUX_DIR(salome_adm/unix/config_files)
+AC_INIT([Salome2 Project SMESH module], [7.2.0], [webmaster.salome@opencascade.com], [SalomeSMESH])
+AC_CONFIG_AUX_DIR(adm_local/unix/config_files)
 AC_CANONICAL_HOST
 AC_CANONICAL_TARGET
-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([-Wno-portability])
 
 XVERSION=`echo $VERSION | awk -F. '{printf("0x%02x%02x%02x",$1,$2,$3)}'`
 AC_SUBST(XVERSION)
+VERSION_DEV=0
+AC_SUBST(VERSION_DEV)
 
 # set up MODULE_NAME variable for dynamic construction of directories (resources, etc.)
 MODULE_NAME=smesh
@@ -81,12 +81,13 @@ echo
 
 AC_PROG_MAKE_SET
 AC_PROG_INSTALL
+AC_LOCAL_INSTALL
 dnl
 dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + pour les librairies dynamiques !
 
 echo
 echo ---------------------------------------------
-echo Coniguring production
+echo Configuring production
 echo ---------------------------------------------
 echo
 AC_ENABLE_DEBUG(yes)
@@ -107,7 +108,7 @@ 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*)
-      INSTALL='\${ROOT_BUILDDIR}'/salome_adm/unix/config_files/install-sh
+      INSTALL='\${ROOT_BUILDDIR}'/adm_local/unix/config_files/install-sh
       ;;
 esac
 
@@ -166,7 +167,15 @@ dnl testing MPICH
 dnl ---------------------------------------------
 dnl
 
-CHECK_MPICH
+dnl CHECK_MPICH
+
+echo
+echo ---------------------------------------------
+echo testing MPI
+echo ---------------------------------------------
+echo
+
+CHECK_MPI
 
 echo
 echo ---------------------------------------------
@@ -212,10 +221,6 @@ echo
 
 ENABLE_PTHREADS
 
-SMESH_WITH_GUI=yes
-
-AM_CONDITIONAL(SMESH_ENABLE_GUI, [test "${SMESH_WITH_GUI}" = "yes"])
-
 if test "x${GUI_DISABLE_CORBA}" != "xyes" ; then
     echo
     echo ---------------------------------------------
@@ -255,8 +260,34 @@ dnl CHECK_MICO
 
 fi
 
+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
 
-if test "${SMESH_WITH_GUI}" = "yes"; then
+if test "${gui_ok}" = "yes"; then
     echo
     echo ---------------------------------------------
     echo testing openGL
@@ -275,33 +306,37 @@ if test "${SMESH_WITH_GUI}" = "yes"; then
 
     echo
     echo ---------------------------------------------
-    echo testing VTK
+    echo testing sip
     echo ---------------------------------------------
     echo
 
-    CHECK_VTK
+    CHECK_SIP
 
     echo
     echo ---------------------------------------------
-    echo Testing GUI
+    echo testing pyqt
     echo ---------------------------------------------
     echo
 
-    CHECK_SALOME_GUI
+    CHECK_PYQT
 
     echo
     echo ---------------------------------------------
-    echo Testing full GUI
+    echo Testing qwt
     echo ---------------------------------------------
     echo
 
-    CHECK_CORBA_IN_GUI
-    if test "x${CORBA_IN_GUI}" != "xyes"; then
-      echo "failed : For configure SMESH module necessary full GUI !"
-      exit
-    fi
+    CHECK_QWT
 fi
 
+echo
+echo ---------------------------------------------
+echo testing VTK
+echo ---------------------------------------------
+echo
+
+CHECK_VTK
+
 echo
 echo ---------------------------------------------
 echo testing HDF5
@@ -310,6 +345,14 @@ echo
 
 CHECK_HDF5
 
+echo
+echo ---------------------------------------------
+echo testing MED3
+echo ---------------------------------------------
+echo
+
+CHECK_MED3
+
 echo
 echo ---------------------------------------------
 echo BOOST Library
@@ -326,25 +369,28 @@ echo
 
 CHECK_CAS
 
-if test "${SMESH_WITH_GUI}" = "yes"; then
-
 echo
 echo ---------------------------------------------
-echo Testing qwt
+echo Testing html generators
 echo ---------------------------------------------
 echo
 
-CHECK_QWT
-
-fi
+CHECK_HTML_GENERATORS
 
 echo
 echo ---------------------------------------------
-echo Testing html generators
+echo testing sphinx
 echo ---------------------------------------------
 echo
+CHECK_SPHINX
 
-CHECK_HTML_GENERATORS
+echo
+echo ---------------------------------------------
+echo testing libxm
+echo ---------------------------------------------
+echo
+dnl Check the libxml that will be required to use the SALOME launcher
+CHECK_LIBXML
 
 echo
 echo ---------------------------------------------
@@ -372,6 +418,31 @@ CHECK_MED
 
 CHECK_PLATFORM
 
+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
+
 echo
 echo ---------------------------------------------
 echo Summary
@@ -379,12 +450,13 @@ echo ---------------------------------------------
 echo
 
 echo Configure
-if test "${SMESH_WITH_GUI}" = "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 omniORB_ok occ_ok doxygen_ok graphviz_ok qwt_ok Kernel_ok Geom_ok Med_ok SalomeGUI_ok"
-fi
 
-if test "${SMESH_WITH_GUI}" = "no"; then
-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"
+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"
 fi
 
 for var in $variables
@@ -397,6 +469,16 @@ echo
 echo "Default ORB   : $DEFAULT_ORB"
 echo
 
+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
+
+
+
 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
@@ -414,6 +496,9 @@ 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])
 
+dnl Build with SMESH cancel compute feature
+AC_DEFINE(WITH_SMESH_CANCEL_COMPUTE)
+
 echo
 echo ---------------------------------------------
 echo generating Makefiles and configure files
@@ -425,49 +510,95 @@ echo
 #  chmod +x ./bin/salome/*; \
 #])
 
+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
+],[])
+
 # 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([ \
-  ./salome_adm/unix/SALOMEconfig.h \
-  ./adm_local/Makefile \
-  ./adm_local/unix/Makefile \
-  ./adm_local/unix/config_files/Makefile \
-  ./bin/VERSION \
-  ./bin/Makefile \
-  ./SMESH_version.h \
-  ./doc/Makefile \
-  ./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/tui/Makefile \
-  ./doc/salome/tui/doxyfile \
-  ./src/Makefile \
-  ./src/Controls/Makefile \
-  ./src/Driver/Makefile \
-  ./src/DriverDAT/Makefile \
-  ./src/DriverMED/Makefile \
-  ./src/DriverSTL/Makefile \
-  ./src/DriverUNV/Makefile \
-  ./src/MEFISTO2/Makefile \
-  ./src/OBJECT/Makefile \
-  ./src/SMDS/Makefile \
-  ./src/SMESH/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 \
-  ./resources/Makefile \
-  ./resources/SMESHCatalog.xml \
-  ./idl/Makefile \
+  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/examples/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/DriverGMF/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/YamsPlug/Makefile \
+  src/Tools/YamsPlug/doc/Makefile \
+  src/Tools/YamsPlug/doc/conf.py \
+  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/testdata/Makefile \
+  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 \
   Makefile
 ])