Make sure Harfbuzz build picks up Qt atomics
We have our own implementation of the atomics API in Harfbuzz for broader platform support. This is done through the mechanism in Harfbuzz where you make a file called config.h with the implementation and then define HAVE_CONFIG_H. In Qt, we have this in src/3rdparty/harfbuzz-ng/config.h, next to the CMakeLists.txt. However, on some platforms, a different config.h has been found earlier in the include paths and included instead, causing us to use the default atomic implementation instead on these platforms. This causes problems with the upgrade to Harfbuzz 11, where the atomics have been written to depend on some template syntax which is not properly supported on the Integrity OS compilers yet. This was also a random inconsistency, so rather than try to work around the compile issue on Integrity, we add the CMakeLists.txt directory as the first include path, to make sure the correct config.h is picked up on all platforms. Pick-to: 6.5 6.8 6.9 Change-Id: I5fc2d57e740ea0a59700ebe319213fe716f8490e Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This commit is contained in:
parent
8ab3ff746b
commit
66fae045cd
2
src/3rdparty/harfbuzz-ng/CMakeLists.txt
vendored
2
src/3rdparty/harfbuzz-ng/CMakeLists.txt
vendored
@ -76,8 +76,8 @@ qt_internal_add_3rdparty_library(BundledHarfbuzz
|
||||
HB_NO_UNICODE_FUNCS
|
||||
QT_NO_VERSION_TAGGING
|
||||
INCLUDE_DIRECTORIES
|
||||
$<TARGET_PROPERTY:Core,INCLUDE_DIRECTORIES>
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
$<TARGET_PROPERTY:Core,INCLUDE_DIRECTORIES>
|
||||
PUBLIC_INCLUDE_DIRECTORIES
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/harfbuzz>
|
||||
)
|
||||
|
Loading…
x
Reference in New Issue
Block a user