From 00ec355cde05b81af6ea97a6cec911fb04f2ae34 Mon Sep 17 00:00:00 2001
From: Lars Bilke <lars.bilke@ufz.de>
Date: Thu, 13 Sep 2018 16:40:02 +0200
Subject: [PATCH] [CMake] Use Conan as default when executable is found.

Developer having Conan installed typically also want to use it
for third-party library handling. This avoids strange things
happening when switching Conan to ON from the CMake GUI.
---
 CMakeLists.txt                 |  2 +-
 scripts/cmake/ConanSetup.cmake | 11 ++++++++++-
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index ddd5670df00..39e3716c5d0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -41,7 +41,7 @@ option(OGS_USE_PCH "Should pre-compiled headers be used?" ON)
 if(DEFINED CMAKE_CXX_CLANG_TIDY)
     set(OGS_USE_PCH OFF CACHE INTERNAL "")
 endif()
-option(OGS_USE_CONAN "Should Conan package manager be used?" OFF)
+option(OGS_USE_CONAN "Should Conan package manager be used?" ON)
 set(OGS_CONAN_BUILD "missing" CACHE STRING "Possible values: all, missing, \
     never or list of libs to build" )
 if(OGS_USE_PETSC)
diff --git a/scripts/cmake/ConanSetup.cmake b/scripts/cmake/ConanSetup.cmake
index 7b4241a44b9..822c9efa604 100644
--- a/scripts/cmake/ConanSetup.cmake
+++ b/scripts/cmake/ConanSetup.cmake
@@ -1,6 +1,15 @@
 if(NOT OGS_USE_CONAN)
     return()
 endif()
+find_program(CONAN_CMD conan)
+if(NOT CONAN_CMD)
+    message(WARNING "conan executable not found. Consider installing Conan for "
+        "automatic third-party library handling. https://www.opengeosys.org/doc"
+        "s/devguide/getting-started/prerequisites/#step-install-conan-package-m"
+        "anager OR disable this warning with OGS_USE_CONAN=OFF")
+    return()
+endif()
+
 
 if(CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
     message(FATAL_ERROR "Multi-config generators are not yet supported when "
@@ -61,7 +70,7 @@ if(OGS_BUILD_GUI)
     )
 endif()
 
-conan_check(VERSION 1.0.0 REQUIRED)
+conan_check(VERSION 1.0.0)
 conan_add_remote(NAME ogs INDEX 0
     URL https://ogs.jfrog.io/ogs/api/conan/conan)
 conan_add_remote(NAME conan-community INDEX 1
-- 
GitLab