diff options
author | Samuli Piippo <samuli.piippo@qt.io> | 2023-01-24 13:45:29 +0000 |
---|---|---|
committer | Samuli Piippo <samuli.piippo@qt.io> | 2023-01-25 08:08:35 +0000 |
commit | 3a33e963bd1e5577e5c94ef90bb843460d13e8d1 (patch) | |
tree | bfe5d2643a179344084dabdabd287f22c54264d0 | |
parent | c4f00fb55e4046c68dfc3a54a3a0962b1cb8a6ba (diff) |
qtbase: fix build with older CMake
Include fix for older CMake 3.16 used in dunfell.
Change-Id: Ie9a735d1212d8ef2156f36178bda239094c1fbe7
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
-rw-r--r-- | recipes-qt/qt6/qtbase/0006-Fix-configure-no-rpath-for-CMake-3.18.patch | 66 | ||||
-rw-r--r-- | recipes-qt/qt6/qtbase_git.bb | 1 |
2 files changed, 67 insertions, 0 deletions
diff --git a/recipes-qt/qt6/qtbase/0006-Fix-configure-no-rpath-for-CMake-3.18.patch b/recipes-qt/qt6/qtbase/0006-Fix-configure-no-rpath-for-CMake-3.18.patch new file mode 100644 index 0000000..1d64255 --- /dev/null +++ b/recipes-qt/qt6/qtbase/0006-Fix-configure-no-rpath-for-CMake-3.18.patch @@ -0,0 +1,66 @@ +From 1cfae7c693261803e8f99552166841c036aa6d60 Mon Sep 17 00:00:00 2001 +From: Joerg Bornemann <joerg.bornemann@qt.io> +Date: Tue, 24 Jan 2023 10:58:59 +0100 +Subject: [PATCH] Fix configure -no-rpath for CMake < 3.18 + +We must not set rpath-related properties on INTERFACE libraries. Move +the code that sets the properties below the bail out for INTERFACE +libraries. + +This amends commit 392d9a54194d06e96bfebdaf081aa6c9787e33ab. + +Pick-to: 6.5 +Fixes: QTBUG-110513 +Change-Id: Ie395f1482245c4522917f982d2f3bc745c0b2abc +--- + cmake/QtRpathHelpers.cmake | 30 +++++++++++++++--------------- + 1 file changed, 15 insertions(+), 15 deletions(-) + +diff --git a/cmake/QtRpathHelpers.cmake b/cmake/QtRpathHelpers.cmake +index 7b37c0e81d..3dbf5c6764 100644 +--- a/cmake/QtRpathHelpers.cmake ++++ b/cmake/QtRpathHelpers.cmake +@@ -94,21 +94,6 @@ function(qt_apply_rpaths) + set(target "${arg_TARGET}") + endif() + +- # Rpaths explicitly disabled (like for uikit), equivalent to qmake's no_qt_rpath. +- # Or feature was turned OFF. +- if(QT_DISABLE_RPATH OR NOT QT_FEATURE_rpath) +- set_target_properties(${target} PROPERTIES +- SKIP_BUILD_RPATH ON +- SKIP_INSTALL_RPATH ON +- ) +- if(APPLE) +- set_target_properties(${target} PROPERTIES +- MACOSX_RPATH OFF +- ) +- endif() +- return() +- endif() +- + # If a target is not built (which can happen for tools when crosscompiling, we shouldn't try + # to apply properties. + if(NOT TARGET "${target}") +@@ -125,6 +110,21 @@ function(qt_apply_rpaths) + message(FATAL_ERROR "No INSTALL_PATH given to qt_apply_rpaths.") + endif() + ++ # Rpaths explicitly disabled (like for uikit), equivalent to qmake's no_qt_rpath. ++ # Or feature was turned OFF. ++ if(QT_DISABLE_RPATH OR NOT QT_FEATURE_rpath) ++ set_target_properties(${target} PROPERTIES ++ SKIP_BUILD_RPATH ON ++ SKIP_INSTALL_RPATH ON ++ ) ++ if(APPLE) ++ set_target_properties(${target} PROPERTIES ++ MACOSX_RPATH OFF ++ ) ++ endif() ++ return() ++ endif() ++ + set(rpaths "") + + # Modify the install path to contain the nested structure of a framework. diff --git a/recipes-qt/qt6/qtbase_git.bb b/recipes-qt/qt6/qtbase_git.bb index f712e04..934211c 100644 --- a/recipes-qt/qt6/qtbase_git.bb +++ b/recipes-qt/qt6/qtbase_git.bb @@ -23,6 +23,7 @@ SRC_URI += "\ file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ file://0004-Fix-qt.toolchain.cmake-for-SDK-use.patch \ file://0005-testlib-don-t-track-the-build-or-source-directories.patch \ + file://0006-Fix-configure-no-rpath-for-CMake-3.18.patch \ " DEPENDS += "\ |