path: root/src/plugins/sqldrivers/configure.json
diff options
authorAlexandru Croitor <>2020-01-20 18:07:00 +0100
committerAlexandru Croitor <>2020-01-22 12:36:06 +0000
commitd1be8b9ceb2c7b20bbe53a07154c79699540ea3d (patch)
treeee6f94071b7c775a932bc1bd1aa4b6eb3498e8d5 /src/plugins/sqldrivers/configure.json
parent6eb32dc28a8d9c70d13bff5286b40e7b9ca35a6f (diff)
Fix dependencies for SIMD object libraries in macOS framework builds
This manifested in Coin when ninja tried to build qdrawhelper_sse2.cpp before the Core framework headers were copied, resulting in a fatal error: 'qatomic.h' file not found. Make sure every SIMD object library has all PRIVATE dependencies of its parent library PRIVATE dependencies (except for other SIMD object libraries), to make sure that the framework headers are copied by the time the SIMD source file is compiled. Here's an example for clarification. Gui_simd_sse2's LINK_LIBRARIES property should have all the values of Gui's LINK_LIBRARIES property (like Qt::Core) filtering out all SIMD object library targets ( like Gui_simd_sse2, Gui_simd_sse3, etc). Thus we make sure the SIMD object libraries are built after Gui's dependencies are built. Note that using INTERFACE_LINK_LIBRARIES to avoid the filtering of SIMD targets in the generator expression would only work in shared Qt builds. In static Qt builds where PRIVATE dependencies become PUBLIC, CMake would insert $<LINK_ONLY:Gui_simd_foo> entries in INTERFACE_LINK_LIBRARIES which causes CMake to be confused and fail at generation time. Change-Id: I246c1394b9c9830c0ebd11e6621e56b992a6a1f2 Reviewed-by: Leander Beernaert <> Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <>
Diffstat (limited to 'src/plugins/sqldrivers/configure.json')
0 files changed, 0 insertions, 0 deletions