shift
errfile=/tmp/errlog
if [ -n "${INSTALL_WORK}" ] ; then errfile=${INSTALL_WORK}/errlog; fi
- cmd="`pwd` -> $*"
+ cmd="`pwd` -> $@"
if [ "${out}" != "1" ] ; then cmd="${cmd} >> ${out}" ; fi
echo -e ${cmd}
if [ "${out}" != "1" ] ; then
- $* >> ${out} 2>${errfile}
+ "$@" >> ${out} 2>${errfile}
else
- $*
+ "$@"
fi
if [ "$?" -ne "0" ] ; then
if [ ${out} != "1" ] ; then
#all output will be put into terminal
check_jb()
{
- check_job 1 $*
+ check_job 1 "$@"
return
}
return ${to_tail}
}
-where_gcc(){
-maj_ver=`echo $1 | awk -F. '{if(NF>0) print $1; else print 0}'`
-min_ver=`echo $1 | awk -F. '{if(NF>1) print $2; else print 0}'`
-rel_ver=`echo $1 | awk -F. '{if(NF>2) print $3; else print 0}'`
-let ver=${maj_ver}*10000+${min_ver}*100+${rel_ver}
-newer=""
-newerver=0
-for i in `echo ${PATH}:/usr/bin:/usr/local/bin | sed -e"s%:% %g"` ; do
- ret=`find ${i} -name gcc -maxdepth 1 2>/dev/null`
- if [ -n "${ret}" ] ; then
- maj_ver=`${ret} -dumpversion | awk -F. '{if(NF>0) print $1; else print 0}'`
- min_ver=`${ret} -dumpversion | awk -F. '{if(NF>1) print $2; else print 0}'`
- rel_ver=`${ret} -dumpversion | awk -F. '{if(NF>2) print $3; else print 0}'`
- let ver1=${maj_ver}*10000+${min_ver}*100+${rel_ver}
- if [ ${ver1} -eq ${ver} ] ; then
- ret=`echo ${ret} | sed -e"s%/gcc$%%g"`
- echo ${ret}
- return 0
- fi
- if [ ${ver1} -gt ${ver} ] && [ ${ver1} -gt ${newerver} ] ; then
- let newerver=${ver1}
- newer=`echo ${ret} | sed -e"s%/gcc$%%g"`
- fi
- fi
-done
-if [ -n "${newer}" ] ; then
- echo ${newer}
- return 0
-fi
-return 1
-}
-
where_tcl(){
if test -z "${TCLHOME}"; then
TCLHOME=/usr
}
##
-# function: workaround on some platforms to use latest available version of gcc (e.g. gcc44 on CentOS 5.5)
+# function: create .qmake.cache file for compilation of custom gcc compiler
+# usage: gen_qmake_cache <dir>
+# <dir> is a directory to put .qmake.cache
##
-use_latest_gcc(){
- local gcc_min=$1
- local gcc_ver=`gcc -dumpversion | awk -F. '{a1=0;a2=0;a3=0;if(NF>0)a1=$1;if(NF>1)a2=$2;if(NF>2)a3=$3;printf("%02d%02d%02d",a1,a2,a3);}'`
- local gcc_found
- local gxx_found
- if [ ${gcc_ver} -le ${gcc_min} ] ; then
- local wheregcc=$(dirname `which gcc`)
- local all_gcc=$(find ${wheregcc}/gcc*)
- local gcc_alt
- local gcc_max=0
- for gcc_alt in ${all_gcc} XXX ; do
- if [ ${gcc_alt} = "XXX" ] ; then continue ; fi
- gcc_ver=`${gcc_alt} -dumpversion 2>/dev/null | awk -F. '{a1=0;a2=0;a3=0;if(NF>0)a1=$1;if(NF>1)a2=$2;if(NF>2)a3=$3;printf("%02d%02d%02d",a1,a2,a3);}'`
- if [ "${gcc_ver}" = "" ] ; then continue ; fi
- if [ ${gcc_ver} -gt ${gcc_min} ] && [ ${gcc_ver} -gt ${gcc_max} ] ; then
- gcc_max=${gcc_ver}
- gcc_found=${gcc_alt}
- gxx_found=`echo ${gcc_found} | sed -e "s%gcc%g++%"`
- fi
- done
- if [ "${gcc_found}" != "" ] ; then
- echo "CC=${gcc_found} CXX=${gxx_found}"
+
+gen_qmake_cache()
+{
+ local d=$1
+ if [ "${d}" != "" ] && [ -d ${d} ] && [ "${CXX}" != "" ] ; then
+ touch ${d}/.qmake.cache >& /dev/null
+ if [ "$?" != "0" ] ; then
+ return 1
fi
+ cat > ${d}/.qmake.cache <<EOF
+QMAKE_CXX = ${CXX}
+QMAKE_LINK = ${CXX}
+QMAKE_LINK_SHLIB = ${CXX}
+QMAKE_CC = ${CC}
+QMAKE_LINK_C = ${CC}
+QMAKE_LINK_C_SHLIB = ${CC}
+EOF
fi
+ return 0
}
modif_la_files(){