CMAKE_TARGET_WINDOWS32 set for x64 project
CMake sets internal varaible CMAKE_TARGET_WINDOWS32, and does not set CMAKE_TARGET_WINDOWS64, when instructed to prepare a 64 bit build:
cmake -G "Visual Studio 16 2019" -A X64 ...
Tools versions:
- Cmake 3.19.4
- Visual Studio Community 2019
- Windows 10 Pro 20H2 (64)
Here are some rows from CMakeCache.txt
:
...
...
CMAKE_AR:FILEPATH=C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/lib.exe
CMAKE_ASM_COMPILER:FILEPATH=C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe
CMAKE_LINKER:FILEPATH=C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/link.exe
CMAKE_EXE_LINKER_FLAGS:STRING=/machine:x64
CMAKE_SHARED_LINKER_FLAGS:STRING=/machine:x64
CMAKE_STATIC_LINKER_FLAGS:STRING=/machine:x64
CMAKE_BUILD_64BIT:INTERNAL=1
CMAKE_GENERATOR_PLATFORM:INTERNAL=X64
...
CMAKE_TARGET_WINDOWS:INTERNAL=1
CMAKE_TARGET_WINDOWS32:INTERNAL=1
...
The last specified row should be CMAKE_TARGET_WINDOWS64:INTERNAL=1