[skia] Fix vswhere.exe can't find VS2017 with -sort (#10437)

* [skia] Fix vswhere.exe can't find VS2017

* [skia] Use $ENV{VCINSTALLDIR}
This commit is contained in:
Lily 2020-03-24 02:56:44 +08:00 committed by GitHub
parent 97302ca172
commit 2d9a32b46f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 19 deletions

View File

@ -1,5 +1,5 @@
Source: skia
Version: 2020-02-15
Version: 2020-02-15-1
Homepage: https://skia.org
Description: Skia is an open source 2D graphics library which provides common APIs that work across a variety of hardware and software platforms.
It serves as the graphics engine for Google Chrome and Chrome OS, Android, Mozilla Firefox and Firefox OS, and many other products.

View File

@ -51,22 +51,6 @@ endif()
set(OPTIONS_REL "${OPTIONS} is_official_build=true")
set(OPTIONS_DBG "${OPTIONS} is_debug=true")
function(find_msvc_path PATH)
vcpkg_get_program_files_32_bit(PROGRAM_FILES)
file(TO_CMAKE_PATH "${PROGRAM_FILES}" PROGRAM_FILES)
set(VSWHERE "${PROGRAM_FILES}/Microsoft Visual Studio/Installer/vswhere.exe")
execute_process(
COMMAND "${VSWHERE}" -prerelease -legacy -products * -sort -utf8 -property installationPath
WORKING_DIRECTORY "${SOURCE_PATH}"
OUTPUT_VARIABLE OUTPUT_
OUTPUT_STRIP_TRAILING_WHITESPACE
)
string(REGEX REPLACE "\n|(\r\n)" ";" OUTPUT_ "${OUTPUT_}")
list(GET OUTPUT_ 0 OUTPUT_)
set(${PATH} "${OUTPUT_}" PARENT_SCOPE)
endfunction()
if(CMAKE_HOST_WIN32)
# Load toolchains
if(NOT VCPKG_CHAINLOAD_TOOLCHAIN_FILE)
@ -95,8 +79,8 @@ if(CMAKE_HOST_WIN32)
set(OPTIONS_REL "${OPTIONS_REL} extra_cflags_c=${SKIA_C_FLAGS_REL} \
extra_cflags_cc=${SKIA_CXX_FLAGS_REL}")
find_msvc_path(WIN_VC)
set(WIN_VC "${WIN_VC}\\VC")
set(WIN_VC "$ENV{VCINSTALLDIR}")
string(REPLACE "\\VC\\" "\\VC" WIN_VC "${WIN_VC}")
set(OPTIONS_DBG "${OPTIONS_DBG} win_vc=\"${WIN_VC}\"")
set(OPTIONS_REL "${OPTIONS_REL} win_vc=\"${WIN_VC}\"")