Salome HOME
Fix CASCADE compilation problem
[tools/install.git] / config_files / KERNEL_BIN.sh
index 651e3b95f59431d088eeb219a3025337cb4602cb..2369fed905015ab487692904fb8981c7f3f09145 100755 (executable)
@@ -1,11 +1,25 @@
-#!/bin/sh
+#!/bin/bash -noprofile
+
+####################################################################################
+#  File      : KERNEL_BIN.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.
+#
+####################################################################################
+
+VERSION="3.2.4"
 
 check_version(){
 if [ -n "${KERNEL_ROOT_DIR}" ]; then
     check_lib_version VERSION ${KERNEL_ROOT_DIR}/bin/salome
     if [ "$?" -eq "0" ]; then
        ver=`cat ${KERNEL_ROOT_DIR}/bin/salome/VERSION | awk -F: '{print $2}' | tr -d '[:space:]' ` 
-       if [ "$ver" = "2.2.2" ]; then
+       if [ "$ver" = "${VERSION}" ]; then
            return 0
        fi
     fi
@@ -14,9 +28,21 @@ return 1
 }
 
 print_env(){
+if test `uname -m` = "x86_64" ; then
+export LIB_PREFIX=64
+else
+export LIB_PREFIX=""
+fi
 cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
 #$DELIM ${PRODUCT_TYPE} $DELIM
 export KERNEL_ROOT_DIR=\${INSTALL_ROOT}/${PRODUCT}
+if [ -n "\${ENV_FOR_LAUNCH}" ] ; then
+  if [ "\${ENV_FOR_LAUNCH}" == "1" ] ; then
+    export PATH=\${KERNEL_ROOT_DIR}/bin/salome:\${PATH}
+    export LD_LIBRARY_PATH=\${KERNEL_ROOT_DIR}/lib${LIB_PREFIX}/salome:\${LD_LIBRARY_PATH}
+    export PYTHONPATH=\${KERNEL_ROOT_DIR}/bin/salome:\${KERNEL_ROOT_DIR}/lib${LIB_PREFIX}/salome:\${KERNEL_ROOT_DIR}/lib${LIB_PREFIX}/python\${PYTHON_VERSION}/site-packages/salome:\${PYTHONPATH}
+  fi
+fi
 ##
 EOF
 (test -w ${PRODUCT_DIR} && cp ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh ${PRODUCT_DIR})
@@ -26,10 +52,22 @@ make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
 # looks for the native product and collects it's environment (used by make_env())
 try_native(){
 check_version
+if test `uname -m` = "x86_64" ; then
+export LIB_PREFIX=64
+else
+export LIB_PREFIX=""
+fi
 if [ $? -eq 0 ] ; then
     cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh <<EOF 
 #$DELIM ${PRODUCT_TYPE} $DELIM
 export KERNEL_ROOT_DIR=\${INSTALL_ROOT}/${PRODUCT}
+if [ -n "\${ENV_FOR_LAUNCH}" ] ; then
+  if [ "\${ENV_FOR_LAUNCH}" == "1" ] ; then
+    export PATH=\${KERNEL_ROOT_DIR}/bin/salome:\${PATH}
+    export LD_LIBRARY_PATH=\${KERNEL_ROOT_DIR}/lib${LIB_PREFIX}/salome:\${LD_LIBRARY_PATH}
+    export PYTHONPATH=\${KERNEL_ROOT_DIR}/bin/salome:\${KERNEL_ROOT_DIR}/lib${LIB_PREFIX}/salome:\${KERNEL_ROOT_DIR}/lib${LIB_PREFIX}/python\${PYTHON_VERSION}/site-packages/salome:\${PYTHONPATH}
+  fi
+fi
 ##
 EOF
     make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}"
@@ -53,9 +91,9 @@ install_binary()
 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE}
 source ${INSTALL_WORK}/$SHRC
 
-check_jb tar xfz ${SOURCE_DIR}/KERNELbinariesV2.2.2.tar.gz -C ${INSTALL_ROOT}
+check_jb tar xfz ${SOURCE_DIR}/KERNELbinariesV${VERSION}.tar.gz -C ${INSTALL_ROOT}
 
-# The next two symbolic links are created only for Red Hat 9
+# The next two symbolic links are created only for Red Hat 9 and Scientific Linux 3.0.5
 if [ -f /lib/libcrypto.so.0.9.7a ]; then
     ln -sf /lib/libcrypto.so.0.9.7a ${PRODUCT_DIR}/lib/salome/libcrypto.so.2
 fi
@@ -63,12 +101,24 @@ if [ -f /lib/libssl.so.0.9.7a ]; then
     ln -sf /lib/libssl.so.0.9.7a ${PRODUCT_DIR}/lib/salome/libssl.so.2
 fi
 
+# modify all *.la files
+export KERNEL_ROOT_DIR=${PRODUCT_DIR}
+modif_la_files ${PRODUCT_DIR}
+
 print_env
 }
 
 pickup_env()
 {
 make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE} ${PRODUCT_DIR}
+if [ -d ${PRODUCT_DIR} ] ; then
+    cd ${PRODUCT_DIR}
+    version=`cat bin/salome/VERSION | awk -F: '{print $2}' | tr -d '[:space:]'`
+    dir="${HOME}/salome_appli_$version"
+    bin/salome/createAppli.sh $dir
+    rm -rf $dir/env.d/*.sh
+    cp -f ${PRODUCT_DIR}/salome.sh $dir/env.d
+fi
 }
 
 export PROCEDURE=$1;
@@ -76,8 +126,8 @@ export INSTALL_WORK=$2;
 export SOURCE_DIR=$3;
 export INSTALL_ROOT=$4;
 export PRODUCT_SEQUENCE=$5;
-if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="KernelBin" ; fi
-export PRODUCT="KERNEL_2.2.2"
+if [ $# == 6 ] ; then export PRODUCT_TYPE=$6 ; else export PRODUCT_TYPE="KERNELbin" ; fi
+export PRODUCT="KERNEL_${VERSION}"
 export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT}
 export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}
 source ./common.sh