From 4f15dce4540b4d77622680e9ef282b0500480d1a Mon Sep 17 00:00:00 2001
From: Lars Bilke <lars.bilke@ufz.de>
Date: Mon, 9 Jan 2017 09:03:07 +0100
Subject: [PATCH] [Conan] Drop config specific output subdir on Windows.

Created output paths are then consistent with Linux / macOS.
Switched from deprecated CMake variables to newer ones.
---
 scripts/cmake/ProjectSetup.cmake   | 13 +++++++++++--
 scripts/cmake/packaging/Pack.cmake |  6 +++---
 2 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/scripts/cmake/ProjectSetup.cmake b/scripts/cmake/ProjectSetup.cmake
index 3884438395b..3774a068f19 100644
--- a/scripts/cmake/ProjectSetup.cmake
+++ b/scripts/cmake/ProjectSetup.cmake
@@ -6,8 +6,17 @@ Either use the correct generator, e.g. 'Visual Studio 14 2015 Win64' or define \
 endif()
 
 # Set build directories
-set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
-set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
+if(USE_CONAN AND MSVC)
+    foreach(OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES})
+        string(TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG)
+        set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
+        set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
+        set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
+    endforeach(OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES)
+endif()
 
 # Enable Visual Studio project folder grouping
 set_property(GLOBAL PROPERTY USE_FOLDERS ON)
diff --git a/scripts/cmake/packaging/Pack.cmake b/scripts/cmake/packaging/Pack.cmake
index a7f56030c7f..ef5a6b9ab4c 100644
--- a/scripts/cmake/packaging/Pack.cmake
+++ b/scripts/cmake/packaging/Pack.cmake
@@ -105,15 +105,15 @@ cpack_add_component(ogs_docs
 if(USE_CONAN)
     # Install shared libraries, copied to bin-dir
     foreach(PATTERN "*.dll" "*.dylib")
-        file(GLOB MATCHED_FILES ${EXECUTABLE_OUTPUT_PATH}/${PATTERN})
+        file(GLOB MATCHED_FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${PATTERN})
         install(FILES ${MATCHED_FILES} DESTINATION bin)
     endforeach()
 
     # macOS frameworks are directories, exclude header files
-    file(GLOB MATCHED_DIRECTORIES "${EXECUTABLE_OUTPUT_PATH}/*.framework")
+    file(GLOB MATCHED_DIRECTORIES "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/*.framework")
     install(DIRECTORY ${MATCHED_DIRECTORIES} DESTINATION bin
         PATTERN "Headers" EXCLUDE)
 
     # Install Qt platform shared libraries
-    install(DIRECTORY ${EXECUTABLE_OUTPUT_PATH}/platforms DESTINATION bin OPTIONAL)
+    install(DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/platforms DESTINATION bin OPTIONAL)
 endif()
-- 
GitLab