CMake: Make precompiled headers work for Android on Windows
When building Qt for Android on Windows, the precompile_headers test failed if the source directory was passed as absolute path without drive letter. See CMake upstream issue #22534. Work around the CMake issue by ensuring that the path is properly prefixed with a drive letter. Pick-to: 6.2 Fixes: QTBUG-95652 Change-Id: I3154b6c0bb2f53533306227074b24fbbf5973b05 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
parent
6ef3d070a8
commit
b43afd5315
@ -863,6 +863,15 @@ function(qt_config_compile_test name)
|
||||
set(arg_CMAKE_FLAGS "")
|
||||
endif()
|
||||
|
||||
# CI passes the project dir of the Qt repository as absolute path without drive letter:
|
||||
# \Users\qt\work\qt\qtbase
|
||||
# Ensure that arg_PROJECT_PATH is an absolute path with drive letter:
|
||||
# C:/Users/qt/work/qt/qtbase
|
||||
# This works around CMake upstream issue #22534.
|
||||
if(CMAKE_HOST_WIN32)
|
||||
get_filename_component(arg_PROJECT_PATH "${arg_PROJECT_PATH}" REALPATH)
|
||||
endif()
|
||||
|
||||
try_compile(HAVE_${name} "${CMAKE_BINARY_DIR}/config.tests/${name}" "${arg_PROJECT_PATH}"
|
||||
"${name}" CMAKE_FLAGS ${flags} ${arg_CMAKE_FLAGS})
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user