Files
CMake/Tests/RunCMake/VS10Project/VsCharacterSet.cmake
Deniz Bahadir cbddc66277 VS: Consider macros with values when determining CharacterSet
In order to determine what character-set (Unicode, Multi-Byte, none)
shall be set in the generated `*.vcxproj` files, CMake checks if one of
the macros `_UNICODE` or `_SBCS` are defined.
However, as these macros can be defined with or without a value, the
check should always recognize these macros whether they are defined with
a value or without. That is now assured by this commit.

Fixes: #25379
2023-11-06 23:41:23 +01:00

18 lines
478 B
CMake

enable_language(CXX)
# Write value of `SET_CHARSET` for comparison later.
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/set_charset.txt" "${SET_CHARSET}")
# Set macro which determines the character-set.
if("${SET_CHARSET}" STREQUAL "MultiByte")
add_compile_definitions(_MBCS=1)
endif()
if("${SET_CHARSET}" STREQUAL "NotSet")
add_compile_definitions(_SBCS=1)
endif()
if("${SET_CHARSET}" STREQUAL "Unicode")
add_compile_definitions(_UNICODE=1)
endif()
add_library(foo foo.cpp)