CMake: Use Release build type by default

Use developer-build feature to set Debug build by default instead of
.git folder detection

Task-number: QTBUG-89410
Fixes: QTBUG-89476
Change-Id: I2a4f529299d4875e7b0eef5b41dd7a6b9402178b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit b4b33846b4dc703e637b7d365676345eda0da460)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Alexey Edelev 2020-12-18 18:58:38 +01:00 committed by Qt Cherry-pick Bot
parent f815382114
commit 5d6f223854

View File

@ -5,8 +5,14 @@
set(QT_BUILDING_QT TRUE CACHE set(QT_BUILDING_QT TRUE CACHE
TYPE STRING "When this is present and set to true, it signals that we are building Qt from source.") TYPE STRING "When this is present and set to true, it signals that we are building Qt from source.")
# Pre-calculate the developer_build feature if it's set by the user via INPUT_developer_build
if(NOT FEATURE_developer_build AND INPUT_developer_build
AND NOT "${INPUT_developer_build}" STREQUAL "undefined")
set(FEATURE_developer_build ON)
endif()
set(_default_build_type "Release") set(_default_build_type "Release")
if(EXISTS "${CMAKE_SOURCE_DIR}/.git") if(FEATURE_developer_build)
set(_default_build_type "Debug") set(_default_build_type "Debug")
endif() endif()
@ -54,12 +60,6 @@ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
# Do not relink dependent libraries when no header has changed: # Do not relink dependent libraries when no header has changed:
set(CMAKE_LINK_DEPENDS_NO_SHARED ON) set(CMAKE_LINK_DEPENDS_NO_SHARED ON)
# Pre-calculate the developer_build feature if it's set by the user via INPUT_developer_build
if(NOT FEATURE_developer_build AND INPUT_developer_build
AND NOT "${INPUT_developer_build}" STREQUAL "undefined")
set(FEATURE_developer_build ON)
endif()
# Detect non-prefix builds: either when the qtbase install prefix is set to the binary dir # Detect non-prefix builds: either when the qtbase install prefix is set to the binary dir
# or when a developer build is explicitly enabled and no install prefix is specified. # or when a developer build is explicitly enabled and no install prefix is specified.
# This detection only happens when building qtbase, and later is propagated via the generated # This detection only happens when building qtbase, and later is propagated via the generated