X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=config_files%2Fnetgen-4.5.sh;h=c524d6823954b8d1b5140bdd1af7ca36901bd62a;hb=3b3e059bc6b5a33c778b830eeff8de9bf034ebe9;hp=aae6d2c43a069cac5e1756730b073dde23abd830;hpb=ba3788bdb913fa91e294acf12ef7e34fa9775630;p=tools%2Finstall.git diff --git a/config_files/netgen-4.5.sh b/config_files/netgen-4.5.sh index aae6d2c..c524d68 100755 --- a/config_files/netgen-4.5.sh +++ b/config_files/netgen-4.5.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash -noprofile #################################################################################### # File : netgen-4.5.sh @@ -6,7 +6,7 @@ # Author : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com) # Project : SALOME # Module : Installation Wizard -# Copyright : 2002-2006 CEA +# Copyright : 2002-2007 CEA # # This script is the part of the SALOME installation procedure. # @@ -22,7 +22,7 @@ fi return 1 } -print_env() +print_env_bin() { cat > ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh < ${INSTALL_WORK}/env_${PRODUCT_TYPE}.sh < ${INSTALL_WORK}/env_${PRODUCT_TYPE}_src.sh < /dev/null) +(cd ${PRODUCT_DIR}_SRC/libsrc/meshing; echo -e '16s/^$/class Mesh;\nwq' | ed - meshtype.hpp > /dev/null) # apply patch: to make compilable with CASCADE-6.1.1 -(cd ${PRODUCT_WORK}/libsrc; sed -e "s%\(.*\)-DHAVE_LIMITS\'%\1-DHAVE_LIMITS_H%g" makefile.inc > makefile.inc.new; mv makefile.inc.new makefile.inc) +(cd ${PRODUCT_DIR}_SRC/libsrc; sed -e "s%\(.*\)-DHAVE_LIMITS\'%\1-DHAVE_LIMITS_H%g" makefile.inc > makefile.inc.new; mv makefile.inc.new makefile.inc) + +# to generate environment scripts +try_preinstalled +} + +install_source_and_build() +{ +# install sources +install_source +# build sources +makedir ${PRODUCT_DIR} # set platform type variable if test `uname -m` = "x86_64" ; then export MACHINE=LINUX64 @@ -94,33 +100,41 @@ fi # compile for directory in csg general geom2d gprim interface linalg occ meshing opti stlgeom ; do - cd ${PRODUCT_WORK}/libsrc/${directory} + cd ${PRODUCT_DIR}_SRC/libsrc/${directory} check_job ${PRODUCT_DIR}/MAKE.LOG make done # install mkdir -p ${PRODUCT_DIR}/lib -cp -f ${PRODUCT_WORK}/lib/${MACHINE}/* ${PRODUCT_DIR}/lib +cp -f ${PRODUCT_DIR}_SRC/lib/${MACHINE}/* ${PRODUCT_DIR}/lib mkdir -p ${PRODUCT_DIR}/include -cp -f ${PRODUCT_WORK}/libsrc/interface/nglib.h ${PRODUCT_DIR}/include +cp -f ${PRODUCT_DIR}_SRC/libsrc/interface/nglib.h ${PRODUCT_DIR}/include for directory in csg general geom2d gprim linalg occ meshing opti stlgeom ; do - cp -f ${PRODUCT_WORK}/libsrc/${directory}/*.hpp ${PRODUCT_DIR}/include + cp -f ${PRODUCT_DIR}_SRC/libsrc/${directory}/*.hpp ${PRODUCT_DIR}/include done -cp -f ${PRODUCT_WORK}/libsrc/include/mystdlib.h ${PRODUCT_WORK}/libsrc/include/mydefs.hpp ${PRODUCT_DIR}/include +cp -f ${PRODUCT_DIR}_SRC/libsrc/include/mystdlib.h ${PRODUCT_DIR}_SRC/libsrc/include/mydefs.hpp ${PRODUCT_DIR}/include + +#du -sk ${PRODUCT_DIR}_SRC > ${PRODUCT_DIR}/size.log +cd ${PRODUCT_DIR}; + +# remove sources and temporary files after building +if [ ${REMOVE_SRC_TMP} == "TRUE" ] ; then + test -d ${PRODUCT_DIR}_SRC && rm -fr ${PRODUCT_DIR}_SRC +fi -#du -sk ${PRODUCT_WORK} > ${PRODUCT_DIR}/size.log -cd ${PRODUCT_DIR}; rm -fr ${PRODUCT_WORK} -print_env +# to generate environment scripts +try_preinstalled } install_binary() { -make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" ${PRODUCT_TYPE} +make_env ${INSTALL_ROOT} ${INSTALL_WORK} "${PRODUCT_SEQUENCE}" "${INSTALL_PRODUCTS}" ${PRODUCT_TYPE} source ${INSTALL_WORK}/$SHRC -check_jb tar xfz ${SOURCE_DIR}/netgen-4.5.tar.gz -C ${INSTALL_ROOT} +check_jb tar xfz ${SOURCE_DIR}/${PRODUCT}.tar.gz -C ${INSTALL_ROOT} -print_env +# to generate environment script for sources +try_preinstalled } export PROCEDURE=$1; @@ -128,7 +142,10 @@ 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="netgen" ; fi +export PRODUCT_TYPE=$6; +export INSTALL_PRODUCTS=$7; +shift +REMOVE_SRC_TMP=$8; export PRODUCT="netgen-4.5" export PRODUCT_DIR=${INSTALL_ROOT}/${PRODUCT} export PRODUCT_WORK=${INSTALL_WORK}/${PRODUCT}