Salome HOME
708d8fbf8248c3b2fc9e49ff947190a03b315cf5
[tools/install.git] / config_files / BOOST-1.30.2.sh
1 #!/bin/sh
2
3 check_version(){
4 if [ -n "${BOOSTDIR}" ]; then
5     ver=`egrep 'BOOST_VERSION [0-9]+' ${BOOSTDIR}/boost/version.hpp | sed 's/.*BOOST_VERSION \([0-9]\+\)/\1/g'`
6     if [ "$ver" = "103002" ]; then
7         return 0
8     fi
9 fi
10 return 1;
11 }
12
13 print_env()
14 {
15 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
16 #$DELIM ${PRODUCT_TYPE} $DELIM 
17 export BOOSTDIR=\${INSTALL_ROOT}/${PRODUCT}
18 ##
19 EOF
20 (test -w ${PRODUCT_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh ${PRODUCT_DIR})
21 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
22 }
23
24 # looks for the native product and collects it's environment (used by make_env())
25 try_native(){
26 boostdir="`find_in_path version.hpp /usr/include/boost`"
27 if [ -z "${boostdir}" ] ; then
28     boostdir="`find_in_path version.hpp /usr/share/include/boost`"
29 fi
30 if [ -n "${boostdir}" ] ; then
31     boostdir=`cd ${boostdir}/..; pwd`
32     ver=`egrep 'BOOST_VERSION [0-9]+' ${boostdir}/boost/version.hpp | sed 's/.*BOOST_VERSION \([0-9]\+\)/\1/g'`
33     if [ $ver -ge 103002 ] ;  then 
34         cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
35 #$DELIM ${PRODUCT_TYPE} $DELIM 
36 export BOOSTDIR=${boostdir}
37 ##
38 EOF
39         make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
40         if [ $ver -eq 103002 ] ;  then 
41             return 0
42         else
43             return 2
44         fi
45     fi
46 fi
47 return 1
48 }
49
50 try_preinstalled(){
51 try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
52 return $?
53 }
54
55 install_source()
56 {
57 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
58 source ${INSTALL_WORK}/$SHRC
59
60 check_jb tar xfz ${SOURCE_DIR}/boost-1.30.2.tgz -C ${INSTALL_ROOT}
61
62 print_env
63 }
64
65 install_binary()
66 {
67 echo "It impossible to install BOOST 1.30.2 from binaries, try to install it from sources."
68 return 1
69 }
70
71 export PROCEDURE=$1;
72 export INSTALL_WORK=$2;
73 export SOURCE_DIR=$3;
74 export INSTALL_ROOT=$4;
75 export PRODUCT_SEQUENCE=$5;
76 if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="boost" ; fi
77 export PRODUCT="boost-1.30.2"
78 export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
79 export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
80 source ./common.sh
81 $PROCEDURE