--- a/hotspot/make/windows/get_msc_ver.sh Wed Jul 05 16:59:55 2017 +0200
+++ b/hotspot/make/windows/get_msc_ver.sh Tue Mar 16 17:47:03 2010 -0600
@@ -22,6 +22,8 @@
#
#
+set -e
+
# This shell script echoes "MSC_VER=<munged version of cl>"
# It ignores the micro version component.
# Examples:
@@ -38,17 +40,19 @@
# sh, and it has been found that sometimes `which sh` fails.
if [ "x$HotSpotMksHome" != "x" ]; then
- MKS_HOME="$HotSpotMksHome"
+ TOOL_DIR="$HotSpotMksHome"
else
- SH=`which sh`
- MKS_HOME=`dirname "$SH"`
+ # HotSpotMksHome is not set so use the directory that contains "sh".
+ # This works with both MKS and Cygwin.
+ SH=`which sh`
+ TOOL_DIR=`dirname "$SH"`
fi
-HEAD="$MKS_HOME/head"
-ECHO="$MKS_HOME/echo"
-EXPR="$MKS_HOME/expr"
-CUT="$MKS_HOME/cut"
-SED="$MKS_HOME/sed"
+HEAD="$TOOL_DIR/head"
+ECHO="$TOOL_DIR/echo"
+EXPR="$TOOL_DIR/expr"
+CUT="$TOOL_DIR/cut"
+SED="$TOOL_DIR/sed"
if [ "x$FORCE_MSC_VER" != "x" ]; then
echo "MSC_VER=$FORCE_MSC_VER"
@@ -70,7 +74,10 @@
if [ "x$FORCE_LINK_VER" != "x" ]; then
echo "LINK_VER=$FORCE_LINK_VER"
else
- LINK_VER_RAW=`link 2>&1 | "$HEAD" -n 1 | "$SED" 's/.*Version[\ ]*\([0-9][0-9.]*\).*/\1/'`
+ # use the "link" command that is co-located with the "cl" command
+ cl_cmd=`which cl`
+ cl_dir=`dirname $cl_cmd`
+ LINK_VER_RAW=`$cl_dir/link 2>&1 | "$HEAD" -n 1 | "$SED" 's/.*Version[\ ]*\([0-9][0-9.]*\).*/\1/'`
LINK_VER_MAJOR=`"$ECHO" $LINK_VER_RAW | "$CUT" -d'.' -f1`
LINK_VER_MINOR=`"$ECHO" $LINK_VER_RAW | "$CUT" -d'.' -f2`
LINK_VER_MICRO=`"$ECHO" $LINK_VER_RAW | "$CUT" -d'.' -f3`