MSVC: Use -D instead of /D in RC_FLAGS

llvm-rc can't handle definitions given with /D and without a space.
This commit is contained in:
Zsolt Parragi
2019-03-01 14:11:01 +01:00
parent 1a281a1acd
commit e53a968ed5

View File

@@ -374,10 +374,12 @@ macro(__windows_compiler_msvc_enable_rc flags)
set(CMAKE_RC_COMPILER_INIT rc)
endif()
if(NOT CMAKE_RC_FLAGS_INIT)
string(APPEND CMAKE_RC_FLAGS_INIT " ${flags}")
# llvm-rc fails when flags are specified with /D and no space after
string(REPLACE " /D" " -D" fixed_flags " ${flags}")
string(APPEND CMAKE_RC_FLAGS_INIT " ${fixed_flags}")
endif()
if(NOT CMAKE_RC_FLAGS_DEBUG_INIT)
string(APPEND CMAKE_RC_FLAGS_DEBUG_INIT " /D_DEBUG")
string(APPEND CMAKE_RC_FLAGS_DEBUG_INIT " -D_DEBUG")
endif()
enable_language(RC)