Salome HOME
6cf6fcf1b7d1a7eac1802d7ca98e54292ea65c30
[tools/install.git] / doxygen-1.3-rc2.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 check_lib_version doxysearch $PATH
10 if [ "$?" -ne "0" ]; then
11    return 1
12 fi
13 check_lib_version doxytag $PATH
14 if [ "$?" -ne "0" ]; then
15    return 1
16 fi
17 check_lib_version doxywizard $PATH
18 if [ "$?" -eq "0" ]; then
19    #echo "The product ${PRODUCT} has been already installed on yours system"
20    return 0
21 fi
22 return 1
23 }
24
25 print_env()
26 {
27 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
28 #$DELIM ${PRODUCT_TYPE} $DELIM
29 export PATH=\${INSTALL_ROOT}/${PRODUCT}/bin:\${PATH}
30 ##
31 EOF
32 (test -w ${PRODUCT_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh ${PRODUCT_DIR})
33 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
34 }
35
36 # looks for the native product and collects it's environment (used by make_env())
37 try_native(){
38 check_version
39 if [ $? -eq 0 ] ; then
40     doxygen="`find_in_path doxygen ${PATH}`"
41     tmp="${doxygen} ${doxygen} \${PATH} ${PATH}";  
42     path=`sort_path ${tmp}`
43     cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
44 #$DELIM ${PRODUCT_TYPE} $DELIM
45 export PATH=${path}
46 ##
47 EOF
48     make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
49     return 0
50 fi
51 return 1;
52 }
53
54 try_preinstalled(){
55 try_existing ${PRODUCT_DIR} ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
56 return $?
57 }
58
59 install_source()
60 {
61 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" env_${PRODUCT_TYPE}.sh
62 source ${INSTALL_WORK}/$SHRC
63
64 check_jb tar xfz ${SOURCE_DIR}/doxygen-1.3-rc2.tar.gz -C ${INSTALL_WORK}
65
66 cd ${PRODUCT_WORK}
67 makedir ${PRODUCT_DIR}
68 check_job ${PRODUCT_DIR}/CONFIGURE.LOG configure --with-doxywizard --prefix ${PRODUCT_DIR}
69 GCC=`which gcc`
70 cat >> ${PRODUCT_DIR}/MAKE.LOG <<EOF
71 used gcc=$GCC
72 EOF
73 check_job ${PRODUCT_DIR}/MAKE.LOG make
74 check_job ${PRODUCT_DIR}/MAKEINSTALL.LOG make install
75
76 which epstopdf >/dev/null 2>&1;  ISFOUND=$?
77 if [ ${ISFOUND} -eq 0 ] ; then  which makeindex >/dev/null 2>&1; ISFOUND=$?; fi
78 if [ ${ISFOUND} -eq 0 ] ; then  which latex >/dev/null 2>&1; ISFOUND=$?; fi
79 if [ ${ISFOUND} -eq 0 ] ; then  which latex2html >/dev/null 2>&1; ISFOUND=$?; fi
80 if [ ${ISFOUND} -eq 0 ] ; then  which pdflatex >/dev/null 2>&1; ISFOUND=$?; fi
81 if [ ${ISFOUND} -eq 0 ] ; then  which pslatex >/dev/null 2>&1; ISFOUND=$?; fi
82 if [ ${ISFOUND} -eq 0 ] ; then  which pstoimg >/dev/null 2>&1; ISFOUND=$?; fi
83 if [ ${ISFOUND} -eq 0 ] ; then
84     check_job ${PRODUCT_DIR}/MAKEDOCS.LOG make docs
85     check_job ${PRODUCT_DIR}/MAKEINSTALLDOCS.LOG make install_docs
86 else
87     cat >> ${PRODUCT_DIR}/MAKEDOCS.LOG <<EOF
88 Can't find \"epstopdf\" and \"latex\" or another executables on the computer.
89 doxygen documentation will not be built!
90 SALOME DOCUMENTATION ALSO CAN NOT BE BUILT!
91 EOF
92     check_job ${PRODUCT_DIR}/MAKEDOCS.LOG make docs
93     rm -fr ${PRODUCT_WORK}
94 #    echo -e "Can't find \"epstopdf\" and \"latex\" or another executables on the computer."
95 #    echo -e "doxygen documentation will not be built!"
96 #    echo -e "SALOME DOCUMENTATION ALSO CAN NOT BE BUILT!"
97 #    echo -n "Would you like continue : (Y,N) [Y] : "
98 #    read rep;
99 #    rep=`echo $rep  | tr "[A-Z]" "[a-z]"`
100 #    if test -z $rep || [ $rep != "y" ] ; then
101 #       rm -fr ${PRODUCT_WORK}
102 #       exit 1
103 #    fi
104 fi
105
106 rm -fr ${PRODUCT_WORK}
107 print_env
108 }
109
110 install_binary()
111 {
112 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" env_${PRODUCT_TYPE}.sh
113 source ${INSTALL_WORK}/$SHRC
114
115 check_jb tar xfz ${SOURCE_DIR}/doxygen-1.3-rc2.tar.gz -C ${INSTALL_ROOT}
116 which epstopdf >/dev/null 2>&1;  ISFOUND=$?
117 if [ ${ISFOUND} -eq 0 ] ; then  which makeindex >/dev/null 2>&1; ISFOUND=$?; fi
118 if [ ${ISFOUND} -eq 0 ] ; then  which latex >/dev/null 2>&1; ISFOUND=$?; fi
119 if [ ${ISFOUND} -eq 0 ] ; then  which latex2html >/dev/null 2>&1; ISFOUND=$?; fi
120 if [ ${ISFOUND} -eq 0 ] ; then  which pdflatex >/dev/null 2>&1; ISFOUND=$?; fi
121 if [ ${ISFOUND} -eq 0 ] ; then  which pslatex >/dev/null 2>&1; ISFOUND=$?; fi
122 if [ ${ISFOUND} -eq 0 ] ; then  which pstoimg >/dev/null 2>&1; ISFOUND=$?; fi
123 if [ ${ISFOUND} -ne 0 ] ; then
124     cat >> ${PRODUCT_DIR}/DOCS.LOG <<EOF
125 Can't find \"epstopdf\" and \"latex\" or another executables on the computer.
126 doxygen documentation will not be built!
127 SALOME DOCUMENTATION ALSO CAN NOT BE BUILT!
128 EOF
129     check_job ${PRODUCT_DIR}/DOCS.LOG make
130     rm -fr ${PRODUCT_WORK}
131 #    echo -e "Can't find \"epstopdf\" and \"latex\" or another executables on the computer."
132 #    echo -e "doxygen documentation will not be built!"
133 #    echo -e "SALOME DOCUMENTATION ALSO CAN NOT BE BUILT!"
134 #    echo -n "Would you like continue : (Y,N) [Y] : "
135 #    read rep;
136 #    rep=`echo $rep  | tr "[A-Z]" "[a-z]"`
137 #    if test -z $rep || [ $rep != "y" ] ; then
138 #       rm -fr ${PRODUCT_WORK}
139 #       exit 1
140 #    fi
141 fi
142
143 print_env
144 }
145
146 export PROCEDURE=$1;
147 export INSTALL_WORK=$2;
148 export SOURCE_DIR=$3;
149 export INSTALL_ROOT=$4;
150 export PRODUCT_SEQUENCE=$5;
151 if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="doxygen" ; fi
152 export PRODUCT="doxygen-1.3-rc2"
153 export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
154 export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
155 source ./common.sh
156 $PROCEDURE