]> SALOME platform Git repositories - tools/install.git/commitdiff
Salome HOME
Fix bug: errors do not print to stderr when check_job() function is called
authorvsr <vsr@opencascade.com>
Thu, 29 Dec 2005 14:25:07 +0000 (14:25 +0000)
committervsr <vsr@opencascade.com>
Thu, 29 Dec 2005 14:25:07 +0000 (14:25 +0000)
config_files/build.csh
config_files/common.sh

index 9334e9a1d46ed53a7c9c813058f52dccca890cb0..a9f0a441cecf48e1d9ed52c53a5b31a530c76d18 100755 (executable)
@@ -1,7 +1,7 @@
 #! /bin/csh -f
 ##################################################################################################
 # Name       : build.csh
-# Description: Build and install SALOME2 modules from sources
+# Description: Build and install SALOME modules from sources
 # Author     : Vadim SANDLER (VSR), Open CASCADE S.A.
 # Created    : 27.01.2005
 ##################################################################################################
index 395a2de67949b0e5f453d2673b0b9d0a03421ff0..f48202c07f3f103e8f0e77fcf224dfa4af439ecc 100755 (executable)
@@ -18,7 +18,6 @@
 export DELIM="------"
 export SHRC="salome.sh"
 export CSHRC="salome.csh"
-export DEBUG=1
 
 #this function takes several parameters
 #first parameter contains descriptor of output file
@@ -29,19 +28,21 @@ check_job()
 {
   out=$1
   shift
-  echo -e "`pwd` -> $* >> $out" 
-  if [ $DEBUG == 0 ] ; then
-    $* | tee $out
+  errfile=/tmp/errlog
+  if [ -n "$INSTALL_WORK" ] ; then errfile=$INSTALL_WORK/errlog; fi
+  cmd="`pwd` -> $*"
+  if [ "$out" != "1" ] ; then cmd="$cmd >> $out" ; fi
+  echo -e $cmd
+  if [ "$out" != "1" ] ; then
+      $* >> $out 2>$errfile
   else
-    if [ $out == "1" ] ; then
       $*
-    else
-      $* >> $out 2>&1
-    fi 
   fi
   if [ "$?" -ne "0" ] ; then
     if [ $out != "1" ] ; then
       cat $out
+      cat $errfile >&2
+      cat $errfile >> $out
     fi
     # VSR : 10/11/05: disable answer mode ==>
     #echo -n " " >&2
@@ -129,7 +130,8 @@ done
 # 1. first dump all environment files into the $SHRC file
 product_sequence="$2"
 for i in $product_sequence ; do
-    cat ${install_work}/env_${i}.sh >> ${install_work}/$SHRC 2>/dev/null
+    env_file=${install_work}/env_${i}.sh
+    ( test -e $env_file && cat $env_file >> ${install_work}/$SHRC 2>/dev/null )
 done
 
 # 2. writing global functions to _salome.sh file