From 74a19ceae8dac43afd1679e67ca708fd25e6bfb9 Mon Sep 17 00:00:00 2001
From: Lars Bilke <lars.bilke@ufz.de>
Date: Wed, 1 Nov 2017 09:54:47 +0100
Subject: [PATCH] [CMake] Don't use x64 toolset on VS 2015, fixed Conan MDd
 linkage.

---
 CMakeLists.txt                 | 4 +++-
 scripts/cmake/CMakeSetup.cmake | 3 ++-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 596cccdd2f9..fbd5bb6b667 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,7 +9,9 @@ cmake_minimum_required(VERSION 3.1)
 cmake_policy(SET CMP0011 NEW)
 cmake_policy(SET CMP0054 NEW)
 
-if(WIN32 AND NOT ${CMAKE_GENERATOR} STREQUAL Ninja)
+if(WIN32 AND
+    NOT ${CMAKE_GENERATOR} STREQUAL Ninja AND
+    NOT ${CMAKE_GENERATOR} MATCHES 2015) # does not work on 2015
     # Force 64-bit VS compiler
     set(CMAKE_GENERATOR_TOOLSET host=x64)
 endif()
diff --git a/scripts/cmake/CMakeSetup.cmake b/scripts/cmake/CMakeSetup.cmake
index 81f7e346758..21bce01043a 100644
--- a/scripts/cmake/CMakeSetup.cmake
+++ b/scripts/cmake/CMakeSetup.cmake
@@ -18,7 +18,8 @@ if(NOT PROJECT_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
     set(OGS_BUILD_CLI OFF CACHE BOOL "" FORCE)
 endif()
 
-if(NOT CMAKE_BUILD_TYPE AND (NOT CMAKE_CONFIGURATION_TYPES OR OGS_USE_CONAN))
+if((NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
+    OR (NOT CMAKE_BUILD_TYPE AND MSVC AND OGS_USE_CONAN))
     message(STATUS "Setting build type to 'Debug' as none was specified.")
     set(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build." FORCE)
     set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
-- 
GitLab