CMake: Fix auto-detection of precompiled header support
PCH files were only used while building qtbase. Make sure the value is exported to the BuildInternalsConfig file, so the value is re-used when building other repositories. Also disable PCH when building simulator_and_device iOS builds, because CMake doesn't currently generate separate PCH files per architecture. Change-Id: I79955ebc557b800bc3c704deac519fe80012c229 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
This commit is contained in:
parent
874c6b00dd
commit
0446bf5ba3
@ -46,9 +46,6 @@ if(NOT QT_BUILD_STANDALONE_TESTS)
|
||||
## Should this Qt be built with Werror?
|
||||
option(WARNINGS_ARE_ERRORS "Build Qt with warnings as errors" ${FEATURE_developer_build})
|
||||
|
||||
## Should Qt be built using PCH?
|
||||
option(BUILD_WITH_PCH "Build Qt using precompiled headers?" ON)
|
||||
|
||||
## QtBase specific configure tests:
|
||||
include(QtBaseConfigureTests)
|
||||
|
||||
|
@ -202,8 +202,25 @@ function(qt_auto_detect_darwin)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(qt_auto_detect_pch)
|
||||
set(default_value "ON")
|
||||
|
||||
if(CMAKE_OSX_ARCHITECTURES)
|
||||
list(LENGTH CMAKE_OSX_ARCHITECTURES arch_count)
|
||||
# CMake doesn't currently support PCH when multiple architecture are set. This is the
|
||||
# case for simulator_and_device builds.
|
||||
if(arch_count GREATER 1)
|
||||
set(default_value "OFF")
|
||||
message(WARNING "PCH support disabled due to usage of multiple architectures.")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
option(BUILD_WITH_PCH "Build Qt using precompiled headers?" "${default_value}")
|
||||
endfunction()
|
||||
|
||||
qt_auto_detect_cmake_config()
|
||||
qt_auto_detect_darwin()
|
||||
qt_auto_detect_ios()
|
||||
qt_auto_detect_android()
|
||||
qt_auto_detect_vpckg()
|
||||
qt_auto_detect_pch()
|
||||
|
@ -361,6 +361,10 @@ function(qt_generate_build_internals_extra_cmake_code)
|
||||
string(APPEND QT_EXTRA_BUILD_INTERNALS_VARS
|
||||
"set(CMAKE_DEFAULT_BUILD_TYPE \"${CMAKE_DEFAULT_BUILD_TYPE}\" CACHE STRING \"\")\n")
|
||||
endif()
|
||||
if(DEFINED BUILD_WITH_PCH)
|
||||
string(APPEND QT_EXTRA_BUILD_INTERNALS_VARS
|
||||
"set(BUILD_WITH_PCH \"${BUILD_WITH_PCH}\" CACHE STRING \"\")\n")
|
||||
endif()
|
||||
|
||||
qt_generate_install_prefixes(install_prefix_content)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user