VS detection: Fallback to old registry check if vswhere failed

... since on some boxes vswhere returns no results when VS 2017 is present

Change-Id: Ieabfbbc30195008ef93147d7d390eee58fa2b7f9
Reviewed-on: https://gerrit.libreoffice.org/70861
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
This commit is contained in:
Mike Kaganski
2019-04-17 11:16:55 +02:00
committed by Thorsten Behrens
parent 4640575bd3
commit 4ea0059bca

View File

@@ -3291,6 +3291,26 @@ find_msvc()
fi
done
# This fallback is needed on *some* (but not all) VS 2017 installations, where vswhere turns up
# with the empty list for unclear reason. The below hack does not work for VS 2019 anyway, so
# should be removed when upgrading baseline.
if ! test -n "$vctest"; then
for ver in $vsversions; do
reg_get_value_32 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/$ver.0/Setup/VC/ProductDir
if test -n "$regvalue"; then
vctest=$regvalue
break
fi
reg_get_value_32 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/SxS/VS7/$ver.0
if test -n "$regvalue"; then
AC_MSG_RESULT([found: $regvalue])
PathFormat "$regvalue"
vctest=$formatted_path
break
fi
done
fi
if test -n "$vctest"; then
vcnumwithdot="$ver.0"
case "$vcnumwithdot" in