Salome HOME
Fedora 6 support
[tools/install.git] / config_files / qwt-4.2.0.sh
1 #!/bin/bash -noprofile
2
3 ####################################################################################
4 #  File      : qwt-4.2.0.sh
5 #  Created   : Thu Dec 18 12:01:00 2002
6 #  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
7 #  Project   : SALOME
8 #  Module    : Installation Wizard
9 #  Copyright : 2002-2007 CEA
10 #
11 #  This script is the part of the SALOME installation procedure.
12 #
13 ####################################################################################
14
15 check_version()
16 {
17 if [ -n "${QWTHOME}" ] ; then 
18     qwtinc=${QWTHOME}/include/qwt_global.h
19     if [ ! -f $qwtinc ] ; then
20         qwtinc=${QWTHOME}/include/qwt/qwt_global.h
21     fi
22     if [ -f $qwtinc ] ; then
23         ver=`grep -e "^#define[[:space:]]\+QWT_VERSION_STR" $qwtinc | sed -e 's/^#define[[:space:]]\+QWT_VERSION_STR[[:space:]]*"\(.*\)"/\1/'`
24         if [ "$ver" == "4.2.0" ]; then
25             return 0
26         fi
27     fi
28 fi
29 return 1
30 }
31
32 print_env()
33 {
34 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
35 #$DELIM ${PRODUCT_TYPE} $DELIM
36 export QWTHOME=\${INSTALL_ROOT}/${PRODUCT}
37 export LD_LIBRARY_PATH=\${QWTHOME}/lib:\${LD_LIBRARY_PATH} 
38 ##
39 EOF
40 (test -w ${PRODUCT_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh ${PRODUCT_DIR})
41 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
42 }
43
44 # looks for the native product and collects it's environment (used by make_env())
45 try_native(){
46 if test `uname -m` = "x86_64" ; then
47 qwthome="`find_in_path libqwt.so ${LD_LIBRARY_PATH}:/usr/lib64:/usr/local/lib64`"
48 else
49 qwthome="`find_in_path libqwt.so ${LD_LIBRARY_PATH}:/usr/lib:/usr/local/lib`"
50 fi
51 if [ -n "${qwthome}" ] ; then
52     qwtroot=`cd ${qwthome}/..; pwd`
53     qwtinc="`find_in_path qwt_global.h ${qwtroot}/include:${qwtroot}/include/qwt:${QTDIR}/include/qwt:/usr/lib/qt3/include/qwt:/usr/local/lib/qt3/include/qwt`"
54     if [ -n "${qwtinc}" ] ; then
55         ver=`grep -e "^#define[[:space:]]\+QWT_VERSION_STR" ${qwtinc}/qwt_global.h | sed -e 's/^#define[[:space:]]\+QWT_VERSION_STR[[:space:]]*"\(.*\)"/\1/'`
56         if [ "$ver" == "4.2.0" ]; then
57             tmp="${qwthome} ${qwthome} \${LD_LIBRARY_PATH} ${LD_LIBRARY_PATH}";  
58             ld_library_path=`sort_path ${tmp}`
59             cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
60 #$DELIM ${PRODUCT_TYPE} $DELIM
61 export LD_LIBRARY_PATH=${ld_library_path}
62 ##
63 EOF
64             make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
65             return 0
66         fi
67     fi
68 fi
69 return 1
70 }
71
72 try_preinstalled(){
73 try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
74 return $?
75 }
76
77 install_source()
78 {
79 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
80 source ${INSTALL_WORK}/$SHRC
81
82 check_jb tar xfj ${SOURCE_DIR}/qwt-4.2.0.tar.bz2 -C ${INSTALL_WORK}
83 cd ${PRODUCT_WORK}
84 makedir ${PRODUCT_DIR}
85
86 qmake qwt.pro -o Makefile
87
88 GCC=`which gcc`
89 cat >> ${PRODUCT_DIR}/MAKE.LOG <<EOF
90 used gcc=$GCC
91 EOF
92
93 check_job ${PRODUCT_DIR}/MAKE.LOG make 
94 cp -rf include lib ${PRODUCT_DIR}
95
96 #du -sk ${PRODUCT_WORK} > ${PRODUCT_DIR}/size.log
97 cd ${PRODUCT_DIR}; rm -rf ${PRODUCT_WORK}
98
99 print_env
100 }
101
102 install_binary()
103 {
104 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
105 source ${INSTALL_WORK}/$SHRC
106
107 check_jb tar xfz ${SOURCE_DIR}/qwt-4.2.0.tar.gz -C ${INSTALL_ROOT}
108
109 print_env
110 }
111
112 export PROCEDURE=$1;
113 export INSTALL_WORK=$2;
114 export SOURCE_DIR=$3;
115 export INSTALL_ROOT=$4;
116 export PRODUCT_SEQUENCE=$5;
117 if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="qwt" ; fi
118 export PRODUCT="qwt-4.2.0"
119 export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
120 export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
121 source ./common.sh
122 $PROCEDURE