Salome HOME
Modifications in according to improvement 15165.
[tools/install.git] / config_files / doxygen-1.4.6.sh
1 #!/bin/bash -noprofile
2
3 ####################################################################################
4 #  File      : doxygen-1.4.6.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 check_lib_version doxygen $PATH
18 if [ "$?" -ne "0" ]; then
19    return 1
20 fi
21 ver=`doxygen --version`
22 maj_ver=`echo $ver | awk -F. '{if(NF>0) print $1; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
23 min_ver=`echo $ver | awk -F. '{if(NF>1) print $2; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
24 rel_ver=`echo $ver | awk -F. '{if(NF>2) print $3; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
25 let ver=$maj_ver*10000+$min_ver*100+$rel_ver
26 if [ $ver -eq 10406 ] ; then
27     return 0
28 fi
29 return 1
30 }
31
32 print_env_bin()
33 {
34 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF
35 #$DELIM ${PRODUCT_TYPE} $DELIM
36 export PATH=\${INSTALL_ROOT}/${PRODUCT}/bin:\${PATH}
37 ##
38 EOF
39 (test -w ${PRODUCT_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh ${PRODUCT_DIR})
40 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}"
41 }
42
43 print_env_src()
44 {
45 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}_src.sh <<EOF
46 #$DELIM ${PRODUCT_TYPE}_src $DELIM
47 # nothing to do
48 ##
49 EOF
50 (test -w ${PRODUCT_DIR}_SRC && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}_src.sh ${PRODUCT_DIR}_SRC)
51 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}"
52 }
53
54 try_preinstalled(){
55 try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}
56 try_existing ${PRODUCT_DIR}_SRC ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}_src
57 return $?
58 }
59
60 install_source()
61 {
62 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}_src
63 source ${INSTALL_WORK}/$SHRC
64
65 # unpack
66 check_jb tar xfz ${SOURCE_DIR}/${PRODUCT}.tar.gz -C ${INSTALL_ROOT}
67
68 if [ $PROCEDURE == "install_source" ]; then
69 # to generate environment scripts
70     try_preinstalled
71 fi
72 }
73
74 install_source_and_build()
75 {
76 # install sources
77 install_source
78
79 # build sources
80 cd ${PRODUCT_DIR}_SRC
81 makedir ${PRODUCT_DIR}
82 # vsr: fix a bug on Mandrake-10.1: wrong qt library reference
83 sed -e "s/-lqt$/-lqt-mt/g" ./tmake/lib/linux-g++/tmake.conf > ./tmake/lib/linux-g++/tmake.conf.new
84 mv ./tmake/lib/linux-g++/tmake.conf.new ./tmake/lib/linux-g++/tmake.conf
85 # vsr: fix bug - configure fails on Red Hat 9 because of incorrect autodetect check for install tool
86 # so it is necessary to put it directly
87 f_install="--install "`which install`
88 # vsr: removed --with-doxywizard option (not compilable on some platforms)
89 check_job ${PRODUCT_DIR}/CONFIGURE.LOG ./configure --prefix ${PRODUCT_DIR} $f_install
90 GCC=`which gcc`
91 cat >> ${PRODUCT_DIR}/MAKE.LOG <<EOF
92 used gcc=$GCC
93 EOF
94 check_job ${PRODUCT_DIR}/MAKE.LOG make
95 check_job ${PRODUCT_DIR}/MAKEINSTALL.LOG make install
96
97 #vsr : disable make docs steps because of bugs in make procedure
98 #which epstopdf >/dev/null 2>&1;  ISFOUND=$?
99 #if [ ${ISFOUND} -eq 0 ] ; then  which dot >/dev/null 2>&1; ISFOUND=$?; fi
100 #if [ ${ISFOUND} -eq 0 ] ; then  which makeindex >/dev/null 2>&1; ISFOUND=$?; fi
101 #if [ ${ISFOUND} -eq 0 ] ; then  which latex >/dev/null 2>&1; ISFOUND=$?; fi
102 ##if [ ${ISFOUND} -eq 0 ] ; then  which latex2html >/dev/null 2>&1; ISFOUND=$?; fi
103 #if [ ${ISFOUND} -eq 0 ] ; then  which pdflatex >/dev/null 2>&1; ISFOUND=$?; fi
104 #if [ ${ISFOUND} -eq 0 ] ; then  which pslatex >/dev/null 2>&1; ISFOUND=$?; fi
105 ##if [ ${ISFOUND} -eq 0 ] ; then  which pstoimg >/dev/null 2>&1; ISFOUND=$?; fi
106 #if [ ${ISFOUND} -eq 0 ] ; then
107 #    check_job ${PRODUCT_DIR}/MAKEDOCS.LOG make docs
108 #    check_job ${PRODUCT_DIR}/MAKEINSTALLDOCS.LOG make install_docs
109 #else
110 #    cat >> ${PRODUCT_DIR}/MAKEDOCS.LOG <<EOF
111 #Can't find \"epstopdf\", \"latex\" or another documentation tool on the computer.
112 #doxygen documentation can not be built!
113 #SALOME DOCUMENTATION MIGHT NOT BE BUILT ALSO!
114 #EOF
115 #fi
116
117 #du -sk ${PRODUCT_DIR}_SRC > ${PRODUCT_DIR}/size.log
118 cd ${PRODUCT_DIR};
119
120 # remove sources and temporary files after building
121 if [ ${REMOVE_SRC_TMP} == "TRUE" ] ; then
122     test -d ${PRODUCT_DIR}_SRC && rm -fr ${PRODUCT_DIR}_SRC
123 fi
124
125 # to generate environment scripts
126 try_preinstalled
127 }
128
129 install_binary()
130 {
131 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE}
132 source ${INSTALL_WORK}/$SHRC
133
134 check_jb tar xfz ${SOURCE_DIR}/${PRODUCT}.tar.gz -C ${INSTALL_ROOT}
135
136 # to generate environment script for sources
137 try_preinstalled
138 }
139
140 export PROCEDURE=$1;
141 export INSTALL_WORK=$2;
142 export SOURCE_DIR=$3;
143 export INSTALL_ROOT=$4;
144 export PRODUCT_SEQUENCE=$5;
145 export PRODUCT_TYPE=$6;
146 export INSTALL_PRODUCTS=$7;
147 shift
148 REMOVE_SRC_TMP=$8;
149 export PRODUCT="doxygen-1.4.6"
150 export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
151 export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
152 source ./common.sh
153 $PROCEDURE