Salome HOME
initial commit : transfert of salome configuration files from internal git base
[tools/sat_salome.git] / products / compil_scripts / gmsh.sh
1 #!/bin/bash
2
3 echo "##########################################################################"
4 echo "gmsh" $VERSION
5 echo "##########################################################################"
6
7
8
9 CMAKE_OPTIONS=""
10 # common settings
11 CMAKE_OPTIONS="${CMAKE_OPTIONS} -DCMAKE_INSTALL_PREFIX=${PRODUCT_INSTALL}"
12 CMAKE_OPTIONS="${CMAKE_OPTIONS} -DCMAKE_VERBOSE_MAKEFILE=ON"
13 CMAKE_OPTIONS="${CMAKE_OPTIONS} -DCMAKE_BUILD_TYPE=Release"
14 CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_BUILD_SHARED=ON"
15
16 # build options
17 function version_ge() { test "$(echo "$@" | tr " " "\n" | sort -rV | head -n 1)" == "$1"; }
18 if version_ge $VERSION "4."; then
19     echo "*** GMSH version $VERSION >= 4."
20     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_ACIS=OFF"
21     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_FLTK=OFF"
22     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_MED=OFF"
23     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_ONELAB_METAMODEL=OFF"
24     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_PARSER=ON"
25     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_PETSC=OFF"
26     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_PRIVATE_API=ON"
27     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_CGNS=OFF" # default value is set to ON in release 4.1.4
28     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DCMAKE_INSTALL_LIBDIR=${PRODUCT_INSTALL}/lib" # strangely on Ubuntu GMSH installs the .so in lib instead of lib/lib64 - so force to lib64
29     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DCMAKE_PREFIX_PATH=${LAPACK_ROOT_DIR}" # set path of third libraries to our associated internal products
30     if [[ $DIST_NAME == "FD" && $DIST_VERSION == "32" ]]
31     then
32         CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_MMG3D=OFF" # removed anyhow in GMS 4.6
33     fi
34 else
35     echo "*** GMSH version $VERSION < 4."
36     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_ACIS=OFF"
37     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_FLTK=OFF"
38     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_MED=OFF"
39     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_ONELAB_METAMODEL=OFF"
40     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_PARSER=ON"
41     CMAKE_OPTIONS="${CMAKE_OPTIONS} -DENABLE_PETSC=OFF"
42 fi
43
44 echo "*** cmake" $CMAKE_OPTIONS
45 cmake $CMAKE_OPTIONS $SOURCE_DIR
46
47 if [ $? -ne 0 ]
48 then
49     echo "ERROR on CMake"
50     exit 1
51 fi
52
53 echo
54 echo "*** make" $MAKE_OPTIONS
55 make $MAKE_OPTIONS
56 if [ $? -ne 0 ]
57 then
58     echo "ERROR on make"
59     exit 2
60 fi
61
62 echo
63 echo "*** make install"
64 make install
65 if [ $? -ne 0 ]
66 then
67     echo "ERROR on make install"
68     exit 3
69 fi
70
71 echo
72 echo "*** copy all .h in sources to install"
73 cp -f --backup=numbered `find $SOURCE_DIR -name "*.h"` $PRODUCT_INSTALL/include/ && \
74     mv $PRODUCT_INSTALL/include/gmsh/* $PRODUCT_INSTALL/include/ && \
75     rmdir $PRODUCT_INSTALL/include/gmsh/
76 if [ $? -ne 0 ]
77 then
78     echo "ERROR on copy"
79     exit 4
80 fi
81
82
83 echo
84 echo "########## END"
85