From b04fbf8db755ff9a7488b8c18e1a3b0ffcfb5f1d Mon Sep 17 00:00:00 2001 From: Oliver Hamlet Date: Tue, 29 Sep 2015 19:04:44 +0100 Subject: [PATCH] Detect CMake project architecture for MSVC. --- CMakeLists.txt | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 93b93b57..46e4dae7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -44,8 +44,18 @@ project (LOOT) option(BUILD_SHARED_LIBS "Build a shared library" ON) option(PROJECT_STATIC_RUNTIME "Build with static runtime libs (/MT)" ON) -IF (NOT DEFINED PROJECT_ARCH) - set (PROJECT_ARCH "32") +# With MSVC, the 32/64 bit compilers have separate generators, so PROJECT_ARCH +# should always match whichever is being used. +IF (MSVC) + IF (CMAKE_CL_64) + set (PROJECT_ARCH "64") + ELSE () + set (PROJECT_ARCH "32") + ENDIF () +ELSE () + IF (NOT DEFINED PROJECT_ARCH) + set (PROJECT_ARCH "32") + ENDIF () ENDIF () IF (NOT DEFINED LIBESPM_ROOT)