summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@qt.io>2019-12-02 11:10:05 +0100
committerJoerg Bornemann <joerg.bornemann@qt.io>2020-01-06 11:53:53 +0000
commit4b2de41b13eb71c0ce841ef357768a3913b49810 (patch)
treeee088cae418eaf2c3b09f5af9c7de1d45d6eb17d /src
parent704ed86ed338a630970a507a4e7800e78102da06 (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.txt24
-rw-r--r--src/tools/bootstrap/CMakeLists.txt4
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