From 632d014afd5a3c1a40fc67cf0fc78d8c80d3da8f Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Tue, 19 Feb 2019 16:38:11 +0100 Subject: [PATCH] cmake: set a CMAKE_BUILD_TYPE if none was specified Because the default "empty" CMAKE_BUILD_TYPE is a weird default Change-Id: I5768f67aa85dce4108e421d2f4eacdfb1cb5beb0 Reviewed-by: Kevin Funk --- cmake/QtSetup.cmake | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/cmake/QtSetup.cmake b/cmake/QtSetup.cmake index 6fd2b2d9234..a90f12d0c22 100644 --- a/cmake/QtSetup.cmake +++ b/cmake/QtSetup.cmake @@ -1,3 +1,15 @@ +## Set a default build type if none was specified +set(_default_build_type "Release") +if(EXISTS "${CMAKE_SOURCE_DIR}/.git") + set(_default_build_type "Debug") +endif() + +if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + message(STATUS "Setting build type to '${_default_build_type}' as none was specified.") + set(CMAKE_BUILD_TYPE "${_default_build_type}" CACHE STRING "Choose the type of build." FORCE) + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo") # Set the possible values of build type for cmake-gui +endif() + ## Force C++ standard, do not fall back, do not use compiler extensions set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_STANDARD_REQUIRED ON)