mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 13:51:33 -06:00
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
18 lines
478 B
CMake
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)
|