diff options
author | Joerg Bornemann <joerg.bornemann@qt.io> | 2021-03-11 11:19:48 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-03-30 15:14:08 +0000 |
commit | 1a1d981b5615e2201e54e36d6d37cd66d682a1ed (patch) | |
tree | c3ad87807f4f02fd59eb3b274d05c3ef71b13719 | |
parent | f4262464747ed4147a8694924eaef26e66c6ef35 (diff) |
Fix build of QTuioTouchPlugin with Makefile generator on macOS
For each plugin, we create a custom target with it's OUTPUT_NAME such
that one simply can do 'ninja qtuiotouchplugin' to build it.
QTuiTouchPlugin has qtuiotouchplugin as OUTPUT_NAME, which is
problematic with Makefile generators on case-insensitive file systems.
See CMake upstream issue #21915 for details.
Work around this issue by not creating the custom target in this
situation.
Fixes: QTBUG-84342
Change-Id: Id9a6cf0a01c179d5c93da4146e393cf00153ac4f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 82d50925f1a7d4ff852e5302fd9e8a3ae18763d0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | cmake/QtPluginHelpers.cmake | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/cmake/QtPluginHelpers.cmake b/cmake/QtPluginHelpers.cmake index 46cb7ba796..e3bde9c79f 100644 --- a/cmake/QtPluginHelpers.cmake +++ b/cmake/QtPluginHelpers.cmake @@ -107,8 +107,14 @@ function(qt_internal_add_plugin target) # Add a custom target with the Qt5 qmake name for a more user friendly ninja experience. if(arg_OUTPUT_NAME AND NOT TARGET "${output_name}") - add_custom_target("${output_name}") - add_dependencies("${output_name}" "${target}") + # But don't create such a target if it would just differ in case from "${target}" + # and we're not using Ninja. See https://gitlab.kitware.com/cmake/cmake/-/issues/21915 + string(TOUPPER "${output_name}" uc_output_name) + string(TOUPPER "${target}" uc_target) + if(NOT uc_output_name STREQUAL uc_target OR CMAKE_GENERATOR MATCHES "^Ninja") + add_custom_target("${output_name}") + add_dependencies("${output_name}" "${target}") + endif() endif() qt_internal_add_target_aliases("${target}") |