0023859: Generated env.sh script contain absolute path to CASROOT folder.
authordbv <dbv@opencascade.org>
Mon, 1 Apr 2013 08:58:14 +0000 (12:58 +0400)
committerdbv <dbv@opencascade.org>
Mon, 1 Apr 2013 08:58:14 +0000 (12:58 +0400)
Fix for paths in generated env.sh and project files for Code::Blocks and Xcode
env.sh script has been updated to make it universal for Code::Blocks and Xcode.

src/WOKTclLib/osutils.tcl
src/WOKTclLib/templates/codeblocks.sh
src/WOKTclLib/templates/draw.sh
src/WOKTclLib/templates/env.sh
src/WOKTclLib/templates/xcode.sh
src/WOKsite/wok_tclshrc.tcl

index ecee152..f8de607 100755 (executable)
@@ -2358,7 +2358,6 @@ proc osutils:cbp { theOutDir theProjName theSrcFiles theLibsList theFrameworks t
   foreach anIncPath $theIncPaths {
     puts $aFile "\t\t\t<Add directory=\"$anIncPath\" />"
   }
-  puts $aFile "\t\t\t<Add directory=\"$::env(WOK_LIBRARY)\" />"
   puts $aFile "\t\t</Compiler>"
 
   # COMMON linker options
@@ -2674,7 +2673,7 @@ proc osutils:xcdtk { theOutDir theToolKit theGuidsMap {theTargetType "dylib"} }
   set aDepsFileRefSection ""
   set aDepsGuids ""
   set aDepsRefGuids ""
-  set anIncPaths [list "../../../inc" $::env(WOK_LIBRARY)]
+  set anIncPaths [list "../../../inc"]
   puts $aPbxprojFile [osutils:xcdtk:sources $theToolKit $theTargetType aSrcFileRefSection aGroupSection aPackagesGuids aSrcFileGuids aGuidsMap anIncPaths]
   puts $aPbxprojFile [osutils:xcdtk:deps    $theToolKit $theTargetType aGuidsMap aDepsFileRefSection aDepsGuids aDepsRefGuids]
   # End PBXBuildFile section
index 43bb383..d888f5a 100755 (executable)
@@ -1,6 +1,8 @@
 #!/bin/bash
 
-source ./env.sh "$1"
+export TARGET="cbp"
+
+source ./env.sh "$TARGET" "$1"
 
 export CSF_OPT_LIB64="$CSF_OPT_LIB64:/usr/X11/lib"
 export CSF_OPT_LIB64D="$CSF_OPT_LIB64:/usr/X11/lib"
index 5dc0f24..49e5436 100644 (file)
@@ -2,7 +2,7 @@
 
 aScriptPath=${BASH_SOURCE%/*}; if [ -d "${aScriptPath}" ]; then cd "$aScriptPath"; fi; aScriptPath="$PWD";
 
-source "${aScriptPath}/env.sh" "$1"
+source "${aScriptPath}/env.sh" "$1" "$2"
 
 echo 'Hint: use "pload ALL" command to load standard commands'
 DRAWEXE
index 19b0a19..96525ed 100755 (executable)
@@ -29,16 +29,18 @@ if [ -e "${aScriptPath}/custom.sh" ]; then source "${aScriptPath}/custom.sh"; fi
 
 # Read script arguments
 shopt -s nocasematch
-if [[ "$1" == "debug" ]]; then export CASDEB="d"; fi
-if [[ "$1" == "d" ]]; then export CASDEB="d"; fi
+if [[ "$1" == "cbp" ]]; then
+  export TARGET="cbp";
+elif [[ "$1" == "xcd" ]]; then
+  export TARGET="xcd";
+else
+  echo "Error: wrong target identifier. Should be \"cbp\" (Code::Blocks) or \"xcd\" (Xcode)"
+  exit
+fi
+if [[ "$2" == "debug" ]]; then export CASDEB="d"; fi
+if [[ "$2" == "d" ]]; then export CASDEB="d"; fi
 shopt -u nocasematch
 
-export CSF_OPT_INC="${CSF_OPT_INC}:__CSF_OPT_INC__"
-export CSF_OPT_LIB32="${CSF_OPT_LIB32}:__CSF_OPT_LIB32__"
-export CSF_OPT_LIB64="${CSF_OPT_LIB64}:__CSF_OPT_LIB64__"
-export CSF_OPT_LIB32D="__CSF_OPT_LIB32D__"
-export CSF_OPT_LIB64D="__CSF_OPT_LIB64D__"
-
 # ----- Setup Environment Variables -----
 anArch=`uname -m`
 if [ "$anArch" != "x86_64" ] && [ "$anArch" != "ia64" ]; then
@@ -55,7 +57,27 @@ else
   export WOKSTATION="lin";
 fi
 
-export CASBIN="__CASBIN__"
+export CASBIN=""
+if [ "${TARGET}" == "cbp" ]; then
+  export CASBIN="${WOKSTATION}/cbp"
+elif [ "${TARGET}" == "xcd" ]; then
+  export CASBIN="adm/mac/xcd/build"
+fi
+
+export CSF_OPT_INC="${CSF_OPT_INC}:${CASROOT}/inc"
+
+if [ "${TARGET}" == "cbp" ]; then
+  export CSF_OPT_LIB32="${CSF_OPT_LIB32}:${CASROOT}/${CASBIN}/lib"
+  export CSF_OPT_LIB64="${CSF_OPT_LIB64}:${CASROOT}/${CASBIN}/lib"
+  export CSF_OPT_LIB32D="${CSF_OPT_LIB32}:${CASROOT}/${CASBIN}/libd"
+  export CSF_OPT_LIB64D="${CSF_OPT_LIB64}:${CASROOT}/${CASBIN}/libd"
+elif [ "${TARGET}" == "xcd" ]; then
+  export CSF_OPT_LIB32="${CSF_OPT_LIB32}:${CASROOT}/${CASBIN}/Release"
+  export CSF_OPT_LIB64="${CSF_OPT_LIB64}:${CASROOT}/${CASBIN}/Release"
+  export CSF_OPT_LIB32D="${CSF_OPT_LIB32}:${CASROOT}/${CASBIN}/Debug"
+  export CSF_OPT_LIB64D="${CSF_OPT_LIB64}:${CASROOT}/${CASBIN}/Debug"
+fi
+
 
 export CSF_OPT_CMPL=""
 
@@ -118,10 +140,16 @@ else
   export CSF_OPT_LNK32D="$OPT_LINKER_OPTIONS"
 fi
 
-__BIN_PATH__
-__LIBS_PATH__
-export BIN_PATH
-export LIBS_PATH
+
+BIN_PATH=""
+LIBS_PATH=""
+if [ "${TARGET}" == "cbp" ]; then
+  BIN_PATH="${CASBIN}/bin${CASDEB}"
+  LIBS_PATH="${CASBIN}/lib${CASDEB}"
+elif [ "${TARGET}" == "xcd" ]; then
+  [[ "${CASDEB}" == "d" ]] && BIN_PATH="${CASBIN}/Debug" || BIN_PATH="${CASBIN}/Release"
+  LIBS_PATH="$BIN_PATH"
+fi
 
 export PATH="${CASROOT}/${BIN_PATH}:${PATH}"
 export LD_LIBRARY_PATH="${CASROOT}/${LIBS_PATH}:${LD_LIBRARY_PATH}"
index b3cae16..bb0bb68 100755 (executable)
@@ -1,6 +1,8 @@
 #!/bin/bash
 
-source ./env.sh "$1"
+export TARGET="xcd"
+
+source ./env.sh "$TARGET" "$1"
 
 export CSF_OPT_LIB64="$CSF_OPT_LIB64:/usr/X11/lib"
 export CSF_OPT_LIB64D="$CSF_OPT_LIB64:/usr/X11/lib"
index 13536b9..e36b5f7 100644 (file)
@@ -262,10 +262,13 @@ proc wgenprojbat {thePath theIDE} {
 
   set aBox [file normalize "$thePath/.."]
 
+  if { "$aTargetPlatform" != "wnt" } {
+    file copy -force -- "$::env(WOKHOME)/lib/config.h" "$aBox/inc/config.h"
+  }
+
   if {"$theIDE" == "cmake"} {
     file copy -force -- "$::env(WOKHOME)/lib/templates/draw.${aTargetPlatformExt}" "$aBox/adm/cmake/draw.${aTargetPlatformExt}"
     file copy -force -- "$::env(WOKHOME)/lib/templates/env.${aTargetPlatformExt}.in" "$aBox/adm/cmake/env.${aTargetPlatformExt}.in"
-    file copy -force -- "$::env(WOKHOME)/lib/config.h" "$aBox/inc/config.h"
   } else {
 
     set anEnvTmplFile [open "$::env(WOKHOME)/lib/templates/env.${aTargetPlatformExt}" "r"]
@@ -278,51 +281,8 @@ proc wgenprojbat {thePath theIDE} {
     }
     set anOsIncPath [relativePath "$aBox" "$anOsRootPath"]
 
-    if { "$theIDE" == "amk" } {
-      regsub -all -- {__CASROOT__}   $anEnvTmpl "$aCasRoot" anEnvTmpl
-      regsub -all -- {__CASBIN__}    $anEnvTmpl ""      anEnvTmpl
-      regsub -all -- {__BIN_PATH__}  $anEnvTmpl "BIN_PATH=\${CASBIN}bin\${CASDEB}"  anEnvTmpl
-      regsub -all -- {__LIBS_PATH__} $anEnvTmpl "LIBS_PATH=\${CASBIN}lib\${CASDEB}" anEnvTmpl
-    } elseif {"$theIDE" == "cbp"} {
-      regsub -all -- {__CASROOT__}   $anEnvTmpl "$aCasRoot"           anEnvTmpl
-      regsub -all -- {__CASBIN__}    $anEnvTmpl "\${WOKSTATION}/cbp/" anEnvTmpl
-      regsub -all -- {__BIN_PATH__}  $anEnvTmpl "BIN_PATH=\${CASBIN}bin\${CASDEB}"  anEnvTmpl
-      regsub -all -- {__LIBS_PATH__} $anEnvTmpl "LIBS_PATH=\${CASBIN}lib\${CASDEB}" anEnvTmpl
-    } elseif {"$theIDE" == "xcd"} {
-      regsub -all -- {__CASROOT__}   $anEnvTmpl "$aCasRoot"         anEnvTmpl
-      regsub -all -- {__CASBIN__}    $anEnvTmpl "adm/mac/xcd/build" anEnvTmpl
-      regsub -all -- {__BIN_PATH__}  $anEnvTmpl {[[ ${CASDEB} == "d" ]] \&\& BIN_PATH="${CASBIN}/Debug" || BIN_PATH="${CASBIN}/Release"} anEnvTmpl
-      regsub -all -- {__LIBS_PATH__} $anEnvTmpl "LIBS_PATH=\"\$BIN_PATH\"" anEnvTmpl
-    } else {
-      regsub -all -- {__CASROOT__}   $anEnvTmpl "$aCasRoot" anEnvTmpl
-    }
-
-    regsub -all -- {__CSF_OPT_INC__} $anEnvTmpl "$anOsIncPath" anEnvTmpl
-
-    if { "$aTargetPlatform" != "wnt" } {
-      set aReleaseLibsPath ""
-      set aDebugLibsPath   ""
-      
-      if {"$theIDE" == "cbp"} {
-        set aReleaseLibsPath "${anOsRootPath}/${::env(WOKSTATION)}/cbp/lib"
-        set aDebugLibsPath   "${anOsRootPath}/${::env(WOKSTATION)}/cbp/libd"
-      } elseif {"$theIDE" == "xcd"} {
-        set aReleaseLibsPath "${anOsRootPath}/adm/mac/xcd/build/Release"
-        set aDebugLibsPath   "${anOsRootPath}/adm/mac/xcd/build/Debug"
-      }
+    regsub -all -- {__CASROOT__}   $anEnvTmpl "$aCasRoot" anEnvTmpl
 
-      if { "$::ARCH" == "32"} {
-        regsub -all -- {__CSF_OPT_LIB32__}  $anEnvTmpl "${aReleaseLibsPath}"  anEnvTmpl
-        regsub -all -- {__CSF_OPT_LIB32D__} $anEnvTmpl "${aDebugLibsPath}"    anEnvTmpl
-        regsub -all -- {__CSF_OPT_LIB64__}  $anEnvTmpl "" anEnvTmpl
-        regsub -all -- {__CSF_OPT_LIB64D__} $anEnvTmpl "" anEnvTmpl
-      } else {
-        regsub -all -- {__CSF_OPT_LIB32__}  $anEnvTmpl "" anEnvTmpl
-        regsub -all -- {__CSF_OPT_LIB32D__} $anEnvTmpl "" anEnvTmpl
-        regsub -all -- {__CSF_OPT_LIB64__}  $anEnvTmpl "${aReleaseLibsPath}"  anEnvTmpl
-        regsub -all -- {__CSF_OPT_LIB64D__} $anEnvTmpl "${aDebugLibsPath}"    anEnvTmpl
-      }
-    }
     set anEnvFile [open "$aBox/env.${aTargetPlatformExt}" "w"]
     puts $anEnvFile $anEnvTmpl
     close $anEnvFile