-#!/bin/sh
+#!/bin/bash -noprofile
+
+####################################################################################
+# File : sip-4.2.1.sh
+# Created : Thu Dec 18 12:01:00 2002
+# Author : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
+# Project : SALOME
+# Module : Installation Wizard
+# Copyright : 2002-2006 CEA
+#
+# This script is the part of the SALOME installation procedure.
+#
+####################################################################################
check_version()
{
sipdir="`find_in_path sip ${PATH}:/usr/bin`"
if [ -n "${sipdir}" ] ; then
python_version="`python -c 'import sys; print sys.version[:3]'`"
+if test `uname -m` = "x86_64" ; then
+ sippython="`find_in_path sip.so ${PYTHONPATH}:/usr/lib64/python${python_version}/site-packages`"
+else
sippython="`find_in_path sip.so ${PYTHONPATH}:/usr/lib/python${python_version}/site-packages`"
+fi
if [ -n "${sippython}" ]; then
ver=`${sipdir}/sip -V | awk '{print $1}'`
maj_ver=`echo $ver | awk -F. '{if(NF>0) print $1; else print 0}' | sed -e 's/^\([0-9]*\).*$/\1/'`
makedir ${PRODUCT_DIR}
check_jb tar xfz ${SOURCE_DIR}/sip-4.2.1.tar.gz -C ${INSTALL_WORK}
+
+# apply patch for 64-bit platforms
+if test `uname -m` = "x86_64" ; then
+ if [ -f patches/sip-4.2.1-lib64.patch ] ; then
+ cp patches/sip-4.2.1-lib64.patch ${PRODUCT_WORK}
+ ( cd ${PRODUCT_WORK} ; patch -p1 < sip-4.2.1-lib64.patch )
+ fi
+fi
+
cd ${PRODUCT_WORK}
+if test `uname -m` = "x86_64" ; then
+ SIP_CONFIGURE_OPTIONS="-b ${PRODUCT_DIR} -d ${PRODUCT_DIR} -e ${PRODUCT_DIR} -v ${PRODUCT_DIR} -l qt-mt -p linux-g++-64"
+else
+ SIP_CONFIGURE_OPTIONS="-b ${PRODUCT_DIR} -d ${PRODUCT_DIR} -e ${PRODUCT_DIR} -v ${PRODUCT_DIR} -l qt-mt"
+fi
+
check_job ${PRODUCT_DIR}/CONFIGURE.LOG \
- python configure.py -b ${PRODUCT_DIR} -d ${PRODUCT_DIR} -e ${PRODUCT_DIR} -v ${PRODUCT_DIR} -l qt-mt
+ python configure.py $SIP_CONFIGURE_OPTIONS
GCC=`which gcc`
cat >> ${PRODUCT_DIR}/MAKE.LOG <<EOF
used gcc=$GCC
check_jb tar xfz ${SOURCE_DIR}/sip-4.2.1.tar.gz -C ${INSTALL_ROOT}
# modify sipconfig.py file
-cd ${PRODUCT_DIR}
-python_version=`python -V 2>&1 | awk '{print $2}' | awk -F. '{printf("0x%02d%02d%02d",$1,$2,$3)}'`
-sed -e "s%\('default_sip_dir':[[:space:]]*\).*%\1'${PRODUCT_DIR}',%g" sipconfig.py > sipconfig.py.1
-sed -e "s%\('sip_bin':[[:space:]]*\).*%\1'${PRODUCT_DIR}/sip',%g" sipconfig.py.1 > sipconfig.py
-sed -e "s%\('sip_inc_dir':[[:space:]]*\).*%\1'${PRODUCT_DIR}',%g" sipconfig.py > sipconfig.py.1
-sed -e "s%\('sip_mod_dir':[[:space:]]*\).*%\1'${PRODUCT_DIR}',%g" sipconfig.py.1 > sipconfig.py
-sed -e "s%\('qt_dir':[[:space:]]*\).*%\1'${QTDIR}',%g" sipconfig.py > sipconfig.py.1
-sed -e "s%\('qt_inc_dir':[[:space:]]*\).*%\1'${QTDIR}/include',%g" sipconfig.py.1 > sipconfig.py
-sed -e "s%\('qt_lib_dir':[[:space:]]*\).*%\1'${QTDIR}/lib',%g" sipconfig.py > sipconfig.py.1
-sed -e "s%\('INCDIR_QT':[[:space:]]*\).*%\1'${QTDIR}/include',%g" sipconfig.py.1 > sipconfig.py
-sed -e "s%\('LIBDIR_QT':[[:space:]]*\).*%\1'${QTDIR}/lib',%g" sipconfig.py > sipconfig.py.1
-sed -e "s%\('MOC':[[:space:]]*\).*%\1'${QTDIR}/bin/moc',%g" sipconfig.py.1 > sipconfig.py
-sed -e "s%\('py_inc_dir':[[:space:]]*\).*%\1'${PYTHONHOME}/include/python${PYTHON_VERSION}',%g" sipconfig.py > sipconfig.py.1
-sed -e "s%\('py_lib_dir':[[:space:]]*\).*%\1'${PYTHONHOME}/lib/python${PYTHON_VERSION}/config',%g" sipconfig.py.1 > sipconfig.py
-sed -e "s%\('py_version':[[:space:]]*\).*%\1${python_version},%g" sipconfig.py > sipconfig.py.1
-mv sipconfig.py.1 sipconfig.py
+if [ -n "${PYTHONHOME}" ] && [ -n "${QTDIR}" ] ; then
+ cd ${PRODUCT_DIR}
+ python_version=`python -V 2>&1 | awk '{print $2}' | awk -F. '{printf("0x%02d%02d%02d",$1,$2,$3)}'`
+ qt_version=`grep -e "^#define[[:space:]]\+QT_VERSION[[:space:]]\+" ${QTDIR}/include/qglobal.h | sed -e 's%^#define[[:space:]\+QT_VERSION[[:space:]]\+\(.*\)$%\1%g'`
+ sed -e "s%\('default_bin_dir':[[:space:]]*\).*%\1'${PYTHONHOME}/bin',%g" sipconfig.py > sipconfig.py.1
+ sed -e "s%\('default_mod_dir':[[:space:]]*\).*%\1'${PYTHONHOME}/lib/python${PYTHON_VERSION}/site-packages',%g" sipconfig.py.1 > sipconfig.py
+ sed -e "s%\('default_sip_dir':[[:space:]]*\).*%\1'${PRODUCT_DIR}',%g" sipconfig.py > sipconfig.py.1
+ sed -e "s%\('sip_bin':[[:space:]]*\).*%\1'${PRODUCT_DIR}/sip',%g" sipconfig.py.1 > sipconfig.py
+ sed -e "s%\('sip_inc_dir':[[:space:]]*\).*%\1'${PRODUCT_DIR}',%g" sipconfig.py > sipconfig.py.1
+ sed -e "s%\('sip_mod_dir':[[:space:]]*\).*%\1'${PRODUCT_DIR}',%g" sipconfig.py.1 > sipconfig.py
+ sed -e "s%\('qt_dir':[[:space:]]*\).*%\1'${QTDIR}',%g" sipconfig.py > sipconfig.py.1
+ sed -e "s%\('qt_version':[[:space:]]*\).*%\1${qt_version},%g" sipconfig.py.1 > sipconfig.py
+ sed -e "s%\('qt_inc_dir':[[:space:]]*\).*%\1'${QTDIR}/include',%g" sipconfig.py > sipconfig.py.1
+ sed -e "s%\('qt_lib_dir':[[:space:]]*\).*%\1'${QTDIR}/lib',%g" sipconfig.py.1 > sipconfig.py
+ sed -e "s%\('INCDIR_QT':[[:space:]]*\).*%\1'${QTDIR}/include',%g" sipconfig.py > sipconfig.py.1
+ sed -e "s%\('LIBDIR_QT':[[:space:]]*\).*%\1'${QTDIR}/lib',%g" sipconfig.py.1 > sipconfig.py
+ sed -e "s%\('MOC':[[:space:]]*\).*%\1'${QTDIR}/bin/moc',%g" sipconfig.py > sipconfig.py.1
+ sed -e "s%\('py_inc_dir':[[:space:]]*\).*%\1'${PYTHONHOME}/include/python${PYTHON_VERSION}',%g" sipconfig.py.1 > sipconfig.py
+ sed -e "s%\('py_lib_dir':[[:space:]]*\).*%\1'${PYTHONHOME}/lib/python${PYTHON_VERSION}/config',%g" sipconfig.py > sipconfig.py.1
+ sed -e "s%\('py_version':[[:space:]]*\).*%\1${python_version},%g" sipconfig.py.1 > sipconfig.py
+ rm sipconfig.py.1
+fi
print_env
}