1 dnl Copyright (C) 2006-2024 CEA, EDF
3 dnl This library is free software; you can redistribute it and/or
4 dnl modify it under the terms of the GNU Lesser General Public
5 dnl License as published by the Free Software Foundation; either
6 dnl version 2.1 of the License, or (at your option) any later version.
8 dnl This library is distributed in the hope that it will be useful,
9 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
10 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 dnl Lesser General Public License for more details.
13 dnl You should have received a copy of the GNU Lesser General Public
14 dnl License along with this library; if not, write to the Free Software
15 dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 # Check availability of Med binary distribution
22 # Author : Anthony GEAY (CEA, 2005)
25 AC_DEFUN([CHECK_MED],[
35 [ --with-med=DIR root directory path of MED installation ],
36 MED_DIR="$withval",MED_DIR="")
38 if test "x$MED_DIR" == "x" ; then
40 # no --with-med-dir option used
42 if test "x$MED_ROOT_DIR" != "x" ; then
44 # MED_ROOT_DIR environment variable defined
49 # search Med binaries in PATH variable
50 AC_PATH_PROG(TEMP, libMEDMEM_Swig.py)
51 if test "x$TEMP" != "x" ; then
52 MED_BIN_DIR=`dirname $TEMP`
53 MED_DIR=`dirname $MED_BIN_DIR`
60 if test -f ${MED_DIR}/bin/salome/libMEDMEM_Swig.py ; then
62 AC_MSG_RESULT(Using Med module distribution in ${MED_DIR})
64 if test "x$MED_ROOT_DIR" == "x" ; then
65 MED_ROOT_DIR=${MED_DIR}
67 AC_SUBST(MED_ROOT_DIR)
68 MED_INCLUDES="-I${MED_ROOT_DIR}/include/salome ${MED2_INCLUDES} ${HDF5_INCLUDES} -I${KERNEL_ROOT_DIR}/include/salome"
69 MED_LIBS="-L${MED_ROOT_DIR}/lib/salome -lmedmem"
70 AC_SUBST(MED_INCLUDES)
74 AC_MSG_WARN("Cannot find Med module sources")
77 AC_MSG_CHECKING([for MED memory version])
78 [medmem_version=`cat ${MED_ROOT_DIR}/bin/salome/VERSION | cut -d" " -f7`]
79 [medmem_version=`expr $medmem_version : '\([0-9.]*\).*'`]
80 AC_MSG_RESULT([$medmem_version])
81 AC_MSG_CHECKING([for g++ version])
82 [gpp_version=`g++ --version | sed -e '2,$d' | cut -d" " -f3`]
83 AC_MSG_RESULT([$gpp_version])
84 [available=$gpp_version]
85 dnl Analyzing g++ version
86 [available_major=`echo $available | sed 's/[^0-9].*//'`]
87 if test -z "$available_major" ; then
90 [available=`echo $available | sed 's/[0-9]*[^0-9]//'`]
91 [available_minor=`echo $available | sed 's/[^0-9].*//'`]
92 if test -z "$available_minor" ; then
95 [available=`echo $available | sed 's/[0-9]*[^0-9]//'`]
96 [available_patch=`echo $available | sed 's/[^0-9].*//'`]
97 if test -z "$available_patch" ; then
100 dnl Testing if g++ verion >= 3.4.0 or not
101 if test $available_major -ne "3" \
102 -o $available_minor -ne "4" \
103 -o $available_patch -lt "0" ; then
104 [required_medmem_major=2]
105 [required_medmem_minor=2]
106 [required_medmem_patch=0]
108 [required_medmem_major=2]
109 [required_medmem_minor=2]
110 [required_medmem_patch=4]
112 [available=$medmem_version]
113 [available_major=`echo $available | sed 's/[^0-9].*//'`]
114 if test -z "$available_major" ; then
117 [available=`echo $available | sed 's/[0-9]*[^0-9]//'`]
118 [available_minor=`echo $available | sed 's/[^0-9].*//'`]
119 if test -z "$available_minor" ; then
122 [available=`echo $available | sed 's/[0-9]*[^0-9]//'`]
123 [available_patch=`echo $available | sed 's/[^0-9].*//'`]
124 if test -z "$available_patch" ; then
127 [available_num=`expr $available_major \* 100 + $available_minor \* 10 + $available_patch`]
128 [required_num=`expr $required_medmem_major \* 100 + $required_medmem_minor \* 10 + $required_medmem_patch`]
129 if test "x$Med_ok" == "xyes" ; then
130 if test $available_num -lt $required_num ; then
131 AC_MSG_WARN([MEDMEM version invalid with your compiler : MEDMEM version >=2.2.4 required !!!])
135 AC_MSG_RESULT(for MED memory: $Med_ok)