]> SALOME platform Git repositories - tools/install.git/blob - config_files/doxygen-1.4.6.sh
Salome HOME
PAL13183: correct environment variables in custom SALOME launching script (runAppli)
[tools/install.git] / config_files / doxygen-1.4.6.sh
1 #!/bin/sh
2
3 check_version()
4 {
5 check_lib_version doxygen $PATH
6 if [ "$?" -ne "0" ]; then
7    return 1
8 fi
9 ver=`doxygen --version`
10 maj_ver=`echo $ver | awk -F. '{if(NF>0) print $1; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
11 min_ver=`echo $ver | awk -F. '{if(NF>1) print $2; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
12 rel_ver=`echo $ver | awk -F. '{if(NF>2) print $3; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
13 let ver=$maj_ver*10000+$min_ver*100+$rel_ver
14 if [ $ver -eq 10406 ] ; then
15     return 0
16 fi
17 return 1
18 }
19
20 print_env()
21 {
22 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF
23 #$DELIM ${PRODUCT_TYPE} $DELIM
24 export PATH=\${INSTALL_ROOT}/${PRODUCT}/bin:\${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 # we need version 1.4.4 or newer
33 try_native(){
34 doxyhome="`find_in_path doxygen ${PATH}:/usr/bin`"
35 if [ -n "${doxyhome}" ] ; then
36     ver=`doxygen --version`
37     maj_ver=`echo $ver | awk -F. '{if(NF>0) print $1; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
38     min_ver=`echo $ver | awk -F. '{if(NF>1) print $2; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
39     rel_ver=`echo $ver | awk -F. '{if(NF>2) print $3; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
40     let ver=$maj_ver*10000+$min_ver*100+$rel_ver
41     if [ $ver -ge 10404 ] ; then
42         tmp="${doxyhome} ${doxyhome} \${PATH} ${PATH}";
43         path=`sort_path ${tmp}`
44         cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF
45 #$DELIM ${PRODUCT_TYPE} $DELIM
46 export PATH=${path}
47 ##
48 EOF
49         make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
50         return 0
51     fi
52 fi
53 return 1;
54 }
55
56 try_preinstalled(){
57 try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
58 return $?
59 }
60
61 install_source()
62 {
63 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
64 source ${INSTALL_WORK}/$SHRC
65
66 check_jb tar xfz ${SOURCE_DIR}/doxygen-1.4.6.tar.gz -C ${INSTALL_WORK}
67
68 cd ${PRODUCT_WORK}
69 makedir ${PRODUCT_DIR}
70 # vsr: fix a bug on Mandrake-10.1: wrong qt library reference
71 sed -e "s/-lqt$/-lqt-mt/g" ./tmake/lib/linux-g++/tmake.conf > ./tmake/lib/linux-g++/tmake.conf.new
72 mv ./tmake/lib/linux-g++/tmake.conf.new ./tmake/lib/linux-g++/tmake.conf
73 # vsr: fix bug - configure fails on Red Hat 9 because of incorrect autodetect check for install tool
74 # so it is necessary to put it directly
75 f_install="--install "`which install`
76 # vsr: removed --with-doxywizard option (not compilable on some platforms)
77 check_job ${PRODUCT_DIR}/CONFIGURE.LOG ./configure --prefix ${PRODUCT_DIR} $f_install
78 GCC=`which gcc`
79 cat >> ${PRODUCT_DIR}/MAKE.LOG <<EOF
80 used gcc=$GCC
81 EOF
82 check_job ${PRODUCT_DIR}/MAKE.LOG make
83 check_job ${PRODUCT_DIR}/MAKEINSTALL.LOG make install
84
85 #vsr : disable make docs steps because of bugs in make procedure
86 #which epstopdf >/dev/null 2>&1;  ISFOUND=$?
87 #if [ ${ISFOUND} -eq 0 ] ; then  which dot >/dev/null 2>&1; ISFOUND=$?; fi
88 #if [ ${ISFOUND} -eq 0 ] ; then  which makeindex >/dev/null 2>&1; ISFOUND=$?; fi
89 #if [ ${ISFOUND} -eq 0 ] ; then  which latex >/dev/null 2>&1; ISFOUND=$?; fi
90 ##if [ ${ISFOUND} -eq 0 ] ; then  which latex2html >/dev/null 2>&1; ISFOUND=$?; fi
91 #if [ ${ISFOUND} -eq 0 ] ; then  which pdflatex >/dev/null 2>&1; ISFOUND=$?; fi
92 #if [ ${ISFOUND} -eq 0 ] ; then  which pslatex >/dev/null 2>&1; ISFOUND=$?; fi
93 ##if [ ${ISFOUND} -eq 0 ] ; then  which pstoimg >/dev/null 2>&1; ISFOUND=$?; fi
94 #if [ ${ISFOUND} -eq 0 ] ; then
95 #    check_job ${PRODUCT_DIR}/MAKEDOCS.LOG make docs
96 #    check_job ${PRODUCT_DIR}/MAKEINSTALLDOCS.LOG make install_docs
97 #else
98 #    cat >> ${PRODUCT_DIR}/MAKEDOCS.LOG <<EOF
99 #Can't find \"epstopdf\", \"latex\" or another documentation tool on the computer.
100 #doxygen documentation can not be built!
101 #SALOME DOCUMENTATION MIGHT NOT BE BUILT ALSO!
102 #EOF
103 #fi
104
105 #du -sk ${PRODUCT_WORK} > ${PRODUCT_DIR}/size.log
106 cd ${PRODUCT_DIR}; rm -fr ${PRODUCT_WORK}
107 print_env
108 }
109
110 install_binary()
111 {
112 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
113 source ${INSTALL_WORK}/$SHRC
114
115 check_jb tar xfz ${SOURCE_DIR}/doxygen-1.4.6.tar.gz -C ${INSTALL_ROOT}
116
117 print_env
118 }
119
120 export PROCEDURE=$1;
121 export INSTALL_WORK=$2;
122 export SOURCE_DIR=$3;
123 export INSTALL_ROOT=$4;
124 export PRODUCT_SEQUENCE=$5;
125 if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="doxygen" ; fi
126 export PRODUCT="doxygen-1.4.6"
127 export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
128 export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
129 source ./common.sh
130 $PROCEDURE