Fix setupvars.bat patching (#11160)

* Fix setupvars.bat patching

setupvars.bat shoudl not be patched for regular Debug and Release
configurations.

* Use SRTEQUAL for cmake string comparison
This commit is contained in:
Andrey Somsikov 2022-03-25 14:15:04 +03:00 committed by GitHub
parent 200026f28b
commit 3442e90144
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -34,12 +34,14 @@ if(UNIX)
set(_setupvars_file setupvars/setupvars.sh)
elseif(WIN32)
set(_setupvars_file setupvars/setupvars.bat)
if (USE_BUILD_TYPE_SUBFOLDER AND CMAKE_BUILD_TYPE AND NOT CMAKE_BUILD_TYPE EQUAL "Debug")
if (USE_BUILD_TYPE_SUBFOLDER AND CMAKE_BUILD_TYPE AND NOT CMAKE_BUILD_TYPE STREQUAL "Debug" AND NOT CMAKE_BUILD_TYPE STREQUAL "Release")
# Patch primary configuration in setupvars.bat which is "Release" by default.
# Note setupvars secondary configuration is always "Debug".
message(STATUS "Patching content of ${_setupvars_file} for CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}")
file(READ "${_setupvars_file}" _setupvars_content)
string(REPLACE "Release" ${CMAKE_BUILD_TYPE} _setupvars_content "${_setupvars_content}")
set(_setupvars_file "${CMAKE_BINARY_DIR}/${_setupvars_file}")
message(STATUS "Writing patched content to ${_setupvars_file}")
file(WRITE "${_setupvars_file}" "${_setupvars_content}")
endif()
endif()