Salome HOME
Update for version 2.2.3
[tools/install.git] / config_files / sip-3.3.2.sh
1 #!/bin/sh
2
3 check_version()
4 {
5 if [ -n "$SIPDIR" ]; then
6     check_lib_version sip ${SIPDIR}
7     if [ "$?" -eq "0" ]; then
8         check_lib_version libsip.so.9.1.0 ${SIPDIR}
9         if [ "$?" -eq "0" ]; then
10             return 0
11         fi
12     fi
13 fi
14 return 1
15 }
16
17 print_env()
18 {
19 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
20 #$DELIM ${PRODUCT_TYPE} $DELIM
21 export SIPDIR=\${INSTALL_ROOT}/${PRODUCT}
22 export PYTHONPATH=\${SIPDIR}:\${PYTHONPATH}
23 export PATH=\${SIPDIR}:\${PATH}
24 export LD_LIBRARY_PATH=\${SIPDIR}:\${LD_LIBRARY_PATH}
25 ##
26 EOF
27 (test -w ${PRODUCT_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh ${PRODUCT_DIR})
28 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
29 }
30
31 # looks for the native product and collects it's environment (used by make_env())
32 try_native(){
33 sipdir="`find_in_path sip ${PATH}`"
34 if [ -z "${sipdir}" ] ; then
35     sipdir="`find_in_path sip /usr/bin`"
36 fi
37 if [ -n "${sipdir}" ] ; then
38     sippython="`find_in_path libsip.so.9.1.0 ${PYTHONPATH}`"
39     if [ -z "${sippython}" ] ; then
40         sippython="`find_in_path libsip.so.9.1.0 /usr/lib/python2.2/site-packages`"
41     fi
42     if [ -n ${sippython} ]; then
43         tmp="${sipdir} ${sipdir} \${PATH} ${PATH}";  
44         path=`sort_path ${tmp}`
45         tmp="${sipdir} ${sipdir} \${LD_LIBRARY_PATH} ${LD_LIBRARY_PATH}";  
46         ld_library_path=`sort_path ${tmp}`
47         tmp="${sippython} ${sippython} \${PYTHONPATH} ${PYTHONPATH}";  
48         pythonpath=`sort_path ${tmp}`
49         cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
50 #$DELIM ${PRODUCT_TYPE} $DELIM
51 export PATH=${path}
52 export PYTHONPATH=${pythonpath}
53 export LD_LIBRARY_PATH=${ld_library_path}
54 ##
55 EOF
56         make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
57         return 0
58     fi
59 fi
60 return 1
61 }
62
63 try_preinstalled(){
64 try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
65 return $?
66 }
67
68 install_source()
69 {
70 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
71 source ${INSTALL_WORK}/$SHRC
72
73 makedir ${PRODUCT_DIR}
74
75 check_jb tar xfz ${SOURCE_DIR}/sip-3.3.2.tar.gz -C ${INSTALL_WORK}
76 cd ${PRODUCT_WORK}
77
78 sed -e 's%platCopy,platPyIncDir%platCopy,platBinDir%g' build.py > temp_build.py
79 mv -f temp_build.py build.py
80 check_job ${PRODUCT_DIR}/BUILDINSTALL.LOG \
81     python build.py -b ${PRODUCT_DIR} -d ${PRODUCT_DIR} -l qt-mt install
82 GCC=`which gcc`
83 cat >> ${PRODUCT_DIR}/MAKE.LOG <<EOF
84 used gcc=$GCC
85 EOF
86 check_job ${PRODUCT_DIR}/MAKE.LOG make
87 check_job ${PRODUCT_DIR}/INSTALL.LOG make install
88
89 rm -fr ${PRODUCT_WORK}
90 print_env
91 }
92
93 install_binary()
94 {
95 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
96 source ${INSTALL_WORK}/$SHRC
97
98 check_jb tar xfz ${SOURCE_DIR}/sip-3.3.2.tar.gz -C ${INSTALL_ROOT}
99
100 print_env
101 }
102
103 export PROCEDURE=$1;
104 export INSTALL_WORK=$2;
105 export SOURCE_DIR=$3;
106 export INSTALL_ROOT=$4;
107 export PRODUCT_SEQUENCE=$5;
108 if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="sip" ; fi
109 export PRODUCT="sip-3.3.2"
110 export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
111 export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
112 source ./common.sh
113 $PROCEDURE