mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2024-11-15 10:08:35 +05:00
238 lines
7.2 KiB
Plaintext
238 lines
7.2 KiB
Plaintext
dnl Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
|
|
dnl
|
|
dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
|
dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
|
dnl
|
|
dnl This library is free software; you can redistribute it and/or
|
|
dnl modify it under the terms of the GNU Lesser General Public
|
|
dnl License as published by the Free Software Foundation; either
|
|
dnl version 2.1 of the License.
|
|
dnl
|
|
dnl This library is distributed in the hope that it will be useful,
|
|
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
dnl Lesser General Public License for more details.
|
|
dnl
|
|
dnl You should have received a copy of the GNU Lesser General Public
|
|
dnl License along with this library; if not, write to the Free Software
|
|
dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
dnl
|
|
dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
|
dnl
|
|
dnl OPTIONS_VTK
|
|
dnl ------------------------------------------------------------------------
|
|
dnl Adds the --with-vtk=path and --with-vtk-version configure options
|
|
dnl
|
|
AC_DEFUN([OPTIONS_VTK], [
|
|
AC_ARG_WITH([vtk],
|
|
[AC_HELP_STRING([--with-vtk], [The prefix where VTK is installed (default "" means taking from environment variable)])],
|
|
[with_vtk=$withval], [with_vtk=""])
|
|
|
|
AC_ARG_WITH([vtk-version],
|
|
[AC_HELP_STRING([--with-vtk-version], [VTK include directory name is vtk-suffix, e.g. vtk-5.0/. What is the suffix? (Default "yes" means taking from environment variable)])],
|
|
[vtk_suffix=$withval], [vtk_suffix="yes"])
|
|
|
|
AC_ARG_WITH([paraview],
|
|
[AC_HELP_STRING([--with-paraview], [ParaView from the specified location is used instead of VTK (default "" means ParaView should not be used)])])
|
|
])
|
|
|
|
dnl
|
|
dnl CHECK_VTK
|
|
dnl ------------------------------------------------------------------------
|
|
dnl
|
|
AC_DEFUN([CHECK_VTK], [
|
|
AC_REQUIRE([AC_PROG_CC])dnl
|
|
AC_REQUIRE([AC_PROG_CXX])dnl
|
|
AC_REQUIRE([AC_PROG_CPP])dnl
|
|
AC_REQUIRE([AC_PROG_CXXCPP])dnl
|
|
AC_REQUIRE([AC_LINKER_OPTIONS])dnl
|
|
|
|
AC_REQUIRE([OPTIONS_VTK])dnl
|
|
|
|
AC_CHECKING(for VTK)
|
|
|
|
AC_LANG_SAVE
|
|
AC_LANG_CPLUSPLUS
|
|
|
|
AC_SUBST(VTK_INCLUDES)
|
|
AC_SUBST(VTK_LIBS)
|
|
AC_SUBST(VTKPY_MODULES)
|
|
|
|
VTK_INCLUDES=""
|
|
VTK_LIBS=""
|
|
VTKPY_MODULES=""
|
|
|
|
vtk_ok=no
|
|
|
|
if test "x$OpenGL_ok" != "xyes" ; then
|
|
AC_MSG_WARN(VTK needs OpenGL correct configuration, check configure output)
|
|
fi
|
|
|
|
AC_PATH_X
|
|
if test "x$x_libraries" != "x"
|
|
then
|
|
LXLIB="-L$x_libraries"
|
|
else
|
|
LXLIB=""
|
|
fi
|
|
|
|
if test "x$x_libraries" = "x/usr/lib"
|
|
then
|
|
LXLIB=""
|
|
fi
|
|
|
|
if test "x$x_libraries" = "x/usr/lib${LIB_LOCATION_SUFFIX}"
|
|
then
|
|
LXLIB=""
|
|
fi
|
|
|
|
LOCAL_INCLUDES="$OGL_INCLUDES"
|
|
LOCAL_LIBS="-lvtkCommon -lvtkGraphics -lvtkImaging -lvtkFiltering -lvtkIO -lvtkRendering -lvtkHybrid -lvtkParallel -lvtkWidgets $LXLIB -lX11 -lXt"
|
|
TRY_LINK_LIBS="-lvtkCommon $LXLIB -lX11 -lXt"
|
|
|
|
dnl VTK version suffix
|
|
if test -z $vtk_suffix ; then
|
|
vtk_suffix="yes"
|
|
fi
|
|
if test "x$vtk_suffix" == "xno" ; then
|
|
dnl in case user wrote --with-vtk-version=no, use empty suffix
|
|
vtk_suffix=""
|
|
fi
|
|
if test "x$vtk_suffix" != "xyes" ; then
|
|
VTKSUFFIX="$vtk_suffix"
|
|
else
|
|
dnl in case user wrote --with-vtk-version=yes, get the suffix from env
|
|
if test -z $VTKSUFFIX ; then
|
|
VTKSUFFIX="-5.0"
|
|
fi
|
|
fi
|
|
|
|
dnl VTK install dir
|
|
if test -z $with_vtk ; then
|
|
with_vtk=""
|
|
fi
|
|
if test "x$with_vtk" = "xyes" ; then
|
|
dnl in case user wrote --with-vtk=yes
|
|
with_vtk=""
|
|
fi
|
|
if test "x$with_vtk" = "xno" ; then
|
|
dnl in case user wrote --with-vtk=no
|
|
with_vtk=""
|
|
AC_MSG_WARN(Value "no", specified for option --with-vtk, is not supported)
|
|
fi
|
|
|
|
if test "x$with_vtk" != "x" ; then
|
|
VTKHOME="$with_vtk"
|
|
else
|
|
if test -z $VTKHOME ; then
|
|
AC_MSG_WARN(undefined VTKHOME variable which specify where vtk was compiled)
|
|
for d in /usr/local /usr ; do
|
|
if test -f ${d}/include/vtk${VTKSUFFIX}/vtkPlane.h ; then
|
|
AC_MSG_RESULT(trying ${d})
|
|
VTKHOME="${d}"
|
|
break
|
|
else
|
|
if test -f ${d}/include/vtk-5.0/vtkPlane.h ; then
|
|
AC_MSG_RESULT(trying ${d})
|
|
VTKHOME="${d}"
|
|
VTKSUFFIX="-5.0"
|
|
break
|
|
else
|
|
if test -f ${d}/include/vtk/vtkPlane.h ; then
|
|
AC_MSG_RESULT(trying ${d})
|
|
VTKHOME="${d}"
|
|
VTKSUFFIX=""
|
|
break
|
|
fi
|
|
fi
|
|
fi
|
|
done
|
|
fi
|
|
fi
|
|
|
|
# Using regular VTK installation
|
|
if test "x$with_paraview" = "x" ; then
|
|
LOCAL_INCLUDES="-I$VTKHOME/include/vtk${VTKSUFFIX} $LOCAL_INCLUDES"
|
|
LOCAL_LIBS="-L$VTKHOME/lib${LIB_LOCATION_SUFFIX}/vtk${VTKSUFFIX} $LOCAL_LIBS"
|
|
TRY_LINK_LIBS="-L$VTKHOME/lib${LIB_LOCATION_SUFFIX} -L$VTKHOME/lib${LIB_LOCATION_SUFFIX}/vtk${VTKSUFFIX} $TRY_LINK_LIBS"
|
|
if test "x$VTKHOME" != "x/usr" ; then
|
|
LOCAL_LIBS="-L$VTKHOME/lib${LIB_LOCATION_SUFFIX} $LOCAL_LIBS"
|
|
fi
|
|
else
|
|
# VTK from ParaView overrides other VTK versions
|
|
if test "${with_paraview}" = "yes" ; then
|
|
if test -z $PVHOME ; then
|
|
PVHOME="/usr"
|
|
fi
|
|
else
|
|
PVHOME=${with_paraview}
|
|
fi
|
|
|
|
if test -z $PVSRCHOME ; then
|
|
PVSRCHOME="$PVHOME/src"
|
|
fi
|
|
|
|
if test -z $PVINSTALLHOME ; then
|
|
PVINSTALLHOME="$PVHOME/bin"
|
|
fi
|
|
|
|
LOCAL_INCLUDES="-I$PVSRCHOME/VTK/Common -I$PVSRCHOME/VTK/Filtering -I$PVSRCHOME/VTK/GenericFiltering -I$PVSRCHOME/VTK/Graphics -I$PVSRCHOME/VTK/Hybrid -I$PVSRCHOME/VTK/Imaging -I$PVSRCHOME/VTK/Infovis -I$PVSRCHOME/VTK/IO -I$PVSRCHOME/VTK/Parallel -I$PVSRCHOME/VTK/Rendering -I$PVSRCHOME/VTK/Utilities -I$PVSRCHOME/VTK/Views -I$PVSRCHOME/VTK/VolumeRendering -I$PVSRCHOME/VTK/Widgets -I$PVINSTALLHOME/VTK -I$PVINSTALLHOME/VTK/Common -I$PVINSTALLHOME/VTK/Filtering -I$PVINSTALLHOME/VTK/GenericFiltering -I$PVINSTALLHOME/VTK/Graphics -I$PVINSTALLHOME/VTK/Hybrid -I$PVINSTALLHOME/VTK/Imaging -I$PVINSTALLHOME/VTK/Infovis -I$PVINSTALLHOME/VTK/IO -I$PVINSTALLHOME/VTK/Parallel -I$PVINSTALLHOME/VTK/Rendering -I$PVINSTALLHOME/VTK/Utilities -I$PVINSTALLHOME/VTK/Views -I$PVINSTALLHOME/VTK/VolumeRendering -I$PVINSTALLHOME/VTK/Widgets $LOCAL_INCLUDES"
|
|
LOCAL_LIBS="-L$PVINSTALLHOME/bin -lvtksys -lvtkzlib -lvtkpng -lvtkjpeg -lvtktiff -lvtkexpat -lvtksqlite -lvtkmetaio -lvtkverdict -lvtkNetCDF -lvtkDICOMParser -lvtkfreetype -lvtkftgl -lvtkexoIIc $LOCAL_LIBS"
|
|
TRY_LINK_LIBS="-L$PVINSTALLHOME/bin -lvtksys $TRY_LINK_LIBS"
|
|
fi
|
|
|
|
dnl vtk headers
|
|
CPPFLAGS_old="$CPPFLAGS"
|
|
CPPFLAGS="$CPPFLAGS $LOCAL_INCLUDES"
|
|
|
|
AC_CHECK_HEADER(vtkPlane.h,vtk_ok="yes",vtk_ok="no")
|
|
|
|
CPPFLAGS="$CPPFLAGS_old"
|
|
|
|
if test "x$vtk_ok" = "xyes"
|
|
then
|
|
VTK_INCLUDES="$LOCAL_INCLUDES"
|
|
|
|
dnl vtk libraries
|
|
|
|
AC_MSG_CHECKING(linking VTK library)
|
|
|
|
LIBS_old="$LIBS"
|
|
LIBS="$LIBS $TRY_LINK_LIBS"
|
|
#LIBS="$LIBS $LOCAL_LIBS"
|
|
CPPFLAGS_old="$CPPFLAGS"
|
|
CPPFLAGS="$CPPFLAGS $VTK_INCLUDES"
|
|
|
|
dnl VTKPY_MODULES="$VTKHOME/python"
|
|
|
|
AC_CACHE_VAL(salome_cv_lib_vtk,[
|
|
AC_TRY_LINK([#include "vtkPlane.h"
|
|
],
|
|
[vtkPlane::New()],
|
|
[salome_cv_lib_vtk=yes],
|
|
[salome_cv_lib_vtk=no])
|
|
])
|
|
vtk_ok="$salome_cv_lib_vtk"
|
|
LIBS="$LIBS_old"
|
|
CPPFLAGS="$CPPFLAGS_old"
|
|
fi
|
|
|
|
if test "x$vtk_ok" = "xno"
|
|
then
|
|
AC_MSG_RESULT(no)
|
|
AC_MSG_WARN(unable to link with vtk library)
|
|
else
|
|
AC_MSG_RESULT(yes)
|
|
VTK_LIBS="$LOCAL_LIBS"
|
|
VTK_MT_LIBS="$LOCAL_LIBS"
|
|
fi
|
|
|
|
AC_MSG_RESULT(for VTK: $vtk_ok)
|
|
|
|
AC_LANG_RESTORE
|
|
|
|
# Save cache
|
|
AC_CACHE_SAVE
|
|
|
|
])dnl
|