X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Fgenerator%2Fvis_stu_vars.sh;h=546d86277be7708fcfc4a3a8f6189a1648b38701;hb=b6393801b03e81598e3ef6dfa58d473174f1e7b9;hp=670c04ca256c91b11b36da6048f3f3eab2cfc84e;hpb=5996b046cc083ab3b11744e5c2c4b524da07cbdb;p=feisty_meow.git diff --git a/scripts/generator/vis_stu_vars.sh b/scripts/generator/vis_stu_vars.sh old mode 100755 new mode 100644 index 670c04ca..546d8627 --- a/scripts/generator/vis_stu_vars.sh +++ b/scripts/generator/vis_stu_vars.sh @@ -12,67 +12,99 @@ function print_usage { echo "" } -chmod 755 $PRODUCTION_DIR/win32_helper/*.exe -export PATH=$PRODUCTION_DIR/win32_helper:$PATH - -# we try to use the most recent compiler location, and work backwards as -# needed for the supported range (10 = vs 2010, 9 = vs 2008, 8 = vs 2005). -export VSxTOOLS="$VS100COMNTOOLS" -if [ -z "$VSxTOOLS" ]; then - export VSxTOOLS="$VS90COMNTOOLS" - if [ -z "$VSxTOOLS" ]; then - export VSxTOOLS="$VS80COMNTOOLS" - fi -fi - -if [ -z "$VSxTOOLS" ]; then +if [[ "$1" =~ .*help.* ]]; then print_usage - return 33 -fi -#echo "common tools dir is \"$VSxTOOLS\"" -export VSxTOOLS="$(short_path "$VSxTOOLS" | tr "A-Z" "a-z" | sed -e 's/\\/\//g' | sed -e 's/^\(.\):/\/\1/' )" -#echo cleaned comn tools is $VSxTOOLS - -export VIS_STU_ROOT="$(echo $VSxTOOLS | sed -e 's/^\(.*\)\/[^\/]*\/[^\/]*[\/]$/\1/' | sed -e 's/^\(.\):/\/\1/' )" -export VSINSTALLDIR="$VIS_STU_ROOT" -#echo root of visual studio is $VSINSTALLDIR - -export WINDIR="$(short_path "$WINDIR" | sed -e 's/\\/\//g' | sed -e 's/^\(.\):/\/\1/' )" -#echo cleaned windir is $WINDIR - -#echo "prior path is $PATH" - -export VCINSTALLDIR="$VSINSTALLDIR/VC" -export VSCOMMONROOT="$VSINSTALLDIR/Common7" -export VS_TOOLS_DIR="$VSCOMMONROOT/tools" -export DevEnvDir="$VSCOMMONROOT/IDE" -export MSVCDir="$VCINSTALLDIR" -export FrameworkDir="$WINDIR/Microsoft.NET/Framework" -export FrameworkVersion=v4.0.30319 -#old export FrameworkSDKDir="$VSINSTALLDIR/SDK/v2.0" - -export PLATFORM_DIR="$VCINSTALLDIR/PlatformSDK" -if [ ! -d "$PLATFORM_DIR" ]; then - export PLATFORM_DIR="$(short_path "$PROGRAMFILES/Microsoft SDKs/Windows/v7.0A" | tr "A-Z" "a-z" | sed -e 's/^\(.*\)\/[^\/]*\/[^\/]*[\/]$/\1/' | sed -e 's/^\(.\):/\/\1/' )" + exit 0 fi -export WindowsSdkDir="$PLATFORM_DIR" -#echo platform dir is $PLATFORM_DIR - -#echo "path before is $PATH" -export PATH="$DevEnvDir:$VCINSTALLDIR/BIN:$VSxTOOLS:$VSxTOOLS/bin:$FrameworkDir/$FrameworkVersion:$FrameworkDir/v3.5:$VCINSTALLDIR/VCPackages:$VSINSTALLDIR/Common7/Tools:$PLATFORM_DIR/bin:$PATH" -#hmmm: yuck! wake me up when we don't need all of those in the path. -#echo "path after is $PATH" -export INCLUDE="$VCINSTALLDIR/ATLMFC/INCLUDE:$VCINSTALLDIR/INCLUDE:$PLATFORM_DIR/include" -#:$FrameworkSDKDir/include" +function setup_visual_studio_variables() +{ + # we try to use the most recent compiler location, and work backwards as + # needed for the supported range (10 = vs 2010, 9 = vs 2008, 8 = vs 2005). + export VSxTOOLS="$VS100COMNTOOLS" + if [ -z "$VSxTOOLS" ]; then + export VSxTOOLS="$VS90COMNTOOLS" + if [ -z "$VSxTOOLS" ]; then + export VSxTOOLS="$VS80COMNTOOLS" + fi + fi + + if [ -z "$VSxTOOLS" ]; then + return 33 + fi + export VSxTOOLS="$(cygpath -w -s "$VSxTOOLS" | tr "A-Z" "a-z" | sed -e 's/\\/\//g' )" +#| sed -e 's/^\(.\):/\/\1/' )" + + export VIS_STU_ROOT="$(echo $VSxTOOLS | sed -e 's/^\(.*\)\/[^\/]*\/[^\/]*[\/]$/\1/' )" +#| sed -e 's/^\(.\):/\/\1/' )" + export VSINSTALLDIR="$VIS_STU_ROOT" + + export WINDIR="$(cygpath -w -s "$WINDIR" | tr A-Z a-z | sed -e 's/\\/\//g' )" +#| sed -e 's/^\(.\):/\/\1/' )" + + export VCINSTALLDIR="$VSINSTALLDIR/VC" + export VSCOMMONROOT="$VSINSTALLDIR/Common7" + export VS_TOOLS_DIR="$VSCOMMONROOT/tools" + export DevEnvDir="$VSCOMMONROOT/IDE" + export MSVCDir="$VCINSTALLDIR" + export FrameworkDir="$WINDIR/Microsoft.NET/Framework" + export FrameworkVersion=v4.0.30319 + #old export FrameworkSDKDir="$VSINSTALLDIR/SDK/v2.0" + + export PLATFORM_DIR="$VCINSTALLDIR/PlatformSDK" + if [ ! -d "$PLATFORM_DIR" ]; then + +#on hold: export PLATFORM_DIR="$(cygpath -w -s "$PROGRAMFILES/Microsoft SDKs/Windows/v7.0A" | tr "A-Z" "a-z" | sed -e 's/^\(.*\)\/[^\/]*\/[^\/]*[\/]$/\1/' )" +##| sed -e 's/^\(.\):/\/\1/' )" + + # guess at where we can find this damned directory in its short form. +#hmmm: this is needed until there's a replacement for short path, or we can build again. + export PLATFORM_DIR="c:/progra~2/micros~1/windows/v7.0a" + if [ ! -d "$PLATFORM_DIR" ]; then + PLATFORM_DIR="c:/progra~1/micros~1/windows/v7.0a" + if [ ! -d "$PLATFORM_DIR" ]; then + PLATFORM_DIR="c:/progra~1/micros~2/windows/v7.0a" + if [ ! -d "$PLATFORM_DIR" ]; then + PLATFORM_DIR="c:/progra~2/micros~2/windows/v7.0a" + fi + fi + fi + + if [ ! -d "$PLATFORM_DIR" ]; then + echo "*** Failure to calculate the platform directory based on several attempts using c:\\program files\\microsoft sdks\\windows\\v7.0a as the basic pattern" + fi + -export LIB="$VCINSTALLDIR/ATLMFC/LIB:$VCINSTALLDIR/LIB:$PLATFORM_DIR/lib" -#:$FrameworkSDKDir/lib" + fi + export WindowsSdkDir="$PLATFORM_DIR" + + #echo "path before is $PATH" + local filena + for filena in "$DevEnvDir" "$VCINSTALLDIR/BIN" "$VSxTOOLS" "$VSxTOOLS/bin" "$FrameworkDir/$FrameworkVersion" "$FrameworkDir/v3.5" "$VCINSTALLDIR/VCPackages" "$VSINSTALLDIR/Common7/Tools" "$PLATFORM_DIR/bin"; do + export PATH="$PATH:$(dos_to_unix_path $filena)" + done + #echo "path after is $PATH" + + export INCLUDE="$VCINSTALLDIR/ATLMFC/INCLUDE:$VCINSTALLDIR/INCLUDE:$PLATFORM_DIR/include" + #:$FrameworkSDKDir/include" + + export LIB="$VCINSTALLDIR/ATLMFC/LIB:$VCINSTALLDIR/LIB:$PLATFORM_DIR/lib" + #:$FrameworkSDKDir/lib" + + # convert framework dir back or things yell like hell. + export FrameworkDir=$(unix_to_dos_path $FrameworkDir) + # the redirection of stderr to null is to get around an obnoxious cygwin + # warning that seems to be erroneously complaining about backslashes. + + ############## + + echo "calculated variables for dos/windoze builds:" + var VIS_STU_ROOT VSxTOOLS WINDIR VSxTOOLS VSINSTALLDIR PLATFORM_DIR FrameworkDir + + ############## +} -# convert framework dir back or things yell like hell. -export FrameworkDir="$(echo $FrameworkDir | sed -e 's/^\/\(.\)[\\\/]\(.*\)$/\1:\\\2/' | tr "/" "\\" 2>/dev/null )" - # the redirection of stderr to null is to get around an obnoxious cygwin - # warning that seems to be erroneously bitching about backslashes. -#echo framedir now $FrameworkDir +# run the above, very nasty, function. +setup_visual_studio_variables