diff options
author | Joerg Bornemann <joerg.bornemann@qt.io> | 2019-12-02 11:10:05 +0100 |
---|---|---|
committer | Joerg Bornemann <joerg.bornemann@qt.io> | 2020-01-06 11:53:53 +0000 |
commit | 4b2de41b13eb71c0ce841ef357768a3913b49810 (patch) | |
tree | ee088cae418eaf2c3b09f5af9c7de1d45d6eb17d /src | |
parent | 704ed86ed338a630970a507a4e7800e78102da06 (diff) |
CMake: Add support for framework builds
Framework builds are enabled by default on macOS.
They are controlled via the framework feature.
Task-number: QTBUG-75751
Change-Id: I00bc64672f02bbd1672508b2b5010d202984a961
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CMake Build Bot
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/CMakeLists.txt | 24 | ||||
-rw-r--r-- | src/tools/bootstrap/CMakeLists.txt | 4 |
2 files changed, 20 insertions, 8 deletions
diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index e14cbc4144..c3139c60b6 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -726,20 +726,22 @@ qt_extend_target(Gui CONDITION QT_FEATURE_vulkan ) # special case begin +# We must always generate syncqt-injected header files, +# because we added a custom command earlier for those for framework builds. +set(vulkan_fun "qvulkanfunctions.h") +set(vulkan_fun_p "qvulkanfunctions_p.h") +set(vulkan_fun_outputs "vulkan/${vulkan_fun}" "vulkan/${vulkan_fun_p}") +set(vulkan_fun_command_content COMMAND "${CMAKE_COMMAND}" -E make_directory "vulkan") if (QT_FEATURE_vulkan) - set(vulkan_fun "qvulkanfunctions.h") - set(vulkan_fun_p "qvulkanfunctions_p.h") set(vulkan_fun_p_cpp "qvulkanfunctions_p.cpp") + list(APPEND vulkan_fun_outputs "vulkan/${vulkan_fun_p_cpp}") - add_custom_command( - OUTPUT "vulkan/${vulkan_fun}" "vulkan/${vulkan_fun_p}" "vulkan/${vulkan_fun_p_cpp}" - COMMAND "${CMAKE_COMMAND}" -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/vulkan/" + list(APPEND vulkan_fun_command_content COMMAND ${QT_CMAKE_EXPORT_NAMESPACE}::qvkgen "${CMAKE_CURRENT_SOURCE_DIR}/vulkan/vk.xml" "${PROJECT_SOURCE_DIR}/header.LGPL" "${CMAKE_CURRENT_BINARY_DIR}/vulkan/qvulkanfunctions" DEPENDS vulkan/vk.xml - WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" COMMENT "Generating vulkan data" ) @@ -749,7 +751,17 @@ if (QT_FEATURE_vulkan) "${CMAKE_CURRENT_BINARY_DIR}/vulkan/${vulkan_fun_p}" "${CMAKE_CURRENT_BINARY_DIR}/vulkan/${vulkan_fun_p_cpp}" ) +else() + foreach(file ${vulkan_fun_outputs}) + list(APPEND vulkan_fun_command_content + COMMAND "${CMAKE_COMMAND}" -E touch "${file}") + endforeach() endif() +add_custom_command( + OUTPUT ${vulkan_fun_outputs} + ${vulkan_fun_command_content} + WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" +) # special case end #### Keys ignored in scope 68:.:vulkan:vulkan/vulkan.pri:QT_FEATURE_vkgen: diff --git a/src/tools/bootstrap/CMakeLists.txt b/src/tools/bootstrap/CMakeLists.txt index d6e6b979b3..1da097011d 100644 --- a/src/tools/bootstrap/CMakeLists.txt +++ b/src/tools/bootstrap/CMakeLists.txt @@ -105,8 +105,8 @@ qt_extend_target(Bootstrap QT_NO_CAST_TO_ASCII QT_NO_FOREACH PUBLIC_INCLUDE_DIRECTORIES # special case - $<TARGET_PROPERTY:CorePrivate,INTERFACE_INCLUDE_DIRECTORIES> - $<TARGET_PROPERTY:XmlPrivate,INTERFACE_INCLUDE_DIRECTORIES> + $<TARGET_PROPERTY:Core,INCLUDE_DIRECTORIES> + $<TARGET_PROPERTY:Xml,INCLUDE_DIRECTORIES> PUBLIC_LIBRARIES # special case ZLIB::ZLIB Qt::Platform |