Salome HOME
Initial version
[tools/install.git] / config_files / Numeric-22.0.sh
1 #!/bin/sh
2
3 check_version(){
4 if [ -d "${PYTHONHOME}/lib/python2.2/site-packages/Numeric" ]; then
5    check_lib_version _numpy.so ${PYTHONHOME}/lib/python2.2/site-packages/Numeric
6    if [ "$?" -eq "0" ]; then
7       #echo "The product ${PRODUCT} has been already installed on yours system"
8       return 0
9    fi
10 fi
11 return 1
12 }
13
14 print_env(){
15 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
16 #$DELIM ${PRODUCT_TYPE} $DELIM
17 export PYTHONPATH=\${INSTALL_ROOT}/${PRODUCT}/lib/python2.2/site-packages/Numeric:\${PYTHONPATH}
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 cat > ${INSTALL_WORK}/try_native.py <<EOF 
27 import sys
28 try :
29     import Numeric
30     sys.exit(0)    
31 except ImportError, r :
32     sys.exit(1)
33 EOF
34 python ${INSTALL_WORK}/try_native.py
35 if [ $? -eq 0 ] ; then
36     pythonpath="`find_in_path _numpy.so ${PYTHONPATH}`"
37     tmp="${pythonpath} ${pythonpath} \${PYTHONPATH} ${PYTHONPATH}";  
38     pythonpath=`sort_path ${tmp}`
39     cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
40 #$DELIM ${PRODUCT_TYPE} $DELIM
41 export PYTHONPATH=${pythonpath}
42 ##
43 EOF
44     make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
45     rm -f ${INSTALL_WORK}/try_native.py
46     return 0
47 fi
48 rm -f ${INSTALL_WORK}/try_native.py
49 return 1
50 }
51
52 try_preinstalled(){
53 try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
54 return $?
55 }
56
57 install_source()
58 {
59 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
60 source ${INSTALL_WORK}/$SHRC
61
62 makedir ${PRODUCT_DIR}
63
64 check_jb tar xfz ${SOURCE_DIR}/Numeric-22.0.tar.gz -C ${INSTALL_WORK}
65 cd ${PRODUCT_WORK}
66
67 check_job ${PRODUCT_DIR}/INSTALL.LOG python setup.py install --prefix=${PRODUCT_DIR}
68
69 rm -fr ${PRODUCT_WORK}
70 print_env
71 }
72
73 install_binary()
74 {
75 check_jb tar xfz ${SOURCE_DIR}/Numeric-22.0.tar.gz -C ${INSTALL_ROOT}
76
77 print_env
78 }
79
80 export PROCEDURE=$1;
81 export INSTALL_WORK=$2;
82 export SOURCE_DIR=$3;
83 export INSTALL_ROOT=$4;
84 export PRODUCT_SEQUENCE=$5;
85 if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="numeric" ; fi
86 export PRODUCT="Numeric-22.0"
87 export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
88 export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
89 source ./common.sh
90 $PROCEDURE