diff options
author | Samuli Piippo <samuli.piippo@qt.io> | 2021-01-15 11:02:06 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-01-18 10:41:45 +0000 |
commit | 3717b450151156b77110d42c5ce667b759d65dcc (patch) | |
tree | d7c9be2d51e5975ee953f77ab4fcc3dd65263863 | |
parent | 25ee0bde7dd0eab66781516a77ae826ce107c4ea (diff) |
Add QMAKE_OBJCOPY and QMAKE_NM to mkspec
Needed to use the correct cross-compiler tools for objcopy and nm.
Fixes: QTBUG-90256
Change-Id: I38048033b17d388b86612bc7205c4e22d948be29
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
(cherry picked from commit ac8056ef0e5b45e80bf430d27369efbe921421a1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | classes/populate_sdk_qt6_base.bbclass | 6 | ||||
-rw-r--r-- | classes/qt6-qmake.bbclass | 2 | ||||
-rw-r--r-- | recipes-qt/qt6/qtbase/0001-Add-linux-oe-g-platform.patch | 17 |
3 files changed, 16 insertions, 9 deletions
diff --git a/classes/populate_sdk_qt6_base.bbclass b/classes/populate_sdk_qt6_base.bbclass index eb8ade4..f7ea63c 100644 --- a/classes/populate_sdk_qt6_base.bbclass +++ b/classes/populate_sdk_qt6_base.bbclass @@ -45,16 +45,20 @@ create_qt6_sdk_files () { echo 'export OE_QMAKE_LINK="$CXX"' >> $script echo 'export OE_QMAKE_AR="$AR"' >> $script echo 'export OE_QMAKE_STRIP="$STRIP"' >> $script + echo 'export OE_QMAKE_OBJCOPY="$OBJCOPY"' >> $script + echo 'export OE_QMAKE_NM="$NM"' >> $script mkspec=${SDK_OUTPUT}${SDKTARGETSYSROOT}${QT6_INSTALL_MKSPECSDIR}/linux-oe-g++/qmake.conf echo "count(QMAKE_AR, 1): QMAKE_AR = ${AR} cqs" >> $mkspec + echo "isEmpty(QMAKE_STRIP): QMAKE_STRIP = ${STRIP}" >> $mkspec + echo "isEmpty(QMAKE_OBJCOPY): QMAKE_OBJCOPY = ${OBJCOPY}" >> $mkspec + echo "count(QMAKE_NM, 1): QMAKE_NM = ${NM} -P" >> $mkspec echo "isEmpty(QMAKE_CC): QMAKE_CC = ${CC}" >> $mkspec echo "isEmpty(QMAKE_CFLAGS): QMAKE_CFLAGS = ${CFLAGS}" >> $mkspec echo "isEmpty(QMAKE_CXX): QMAKE_CXX = ${CXX}" >> $mkspec echo "isEmpty(QMAKE_CXXFLAGS): QMAKE_CXXFLAGS = ${CXXFLAGS}" >> $mkspec echo "isEmpty(QMAKE_LINK): QMAKE_LINK = ${CXX}" >> $mkspec echo "isEmpty(QMAKE_LFLAGS): QMAKE_LFLAGS = ${LDFLAGS}" >> $mkspec - echo "isEmpty(QMAKE_STRIP): QMAKE_STRIP = ${STRIP}" >> $mkspec sed -i $mkspec \ -e 's:${RECIPE_SYSROOT}:$$[QT_SYSROOT]:' \ -e 's:${TARGET_PREFIX}:$$[QT_HOST_BINS]/${TARGET_SYS}/${TARGET_PREFIX}:' diff --git a/classes/qt6-qmake.bbclass b/classes/qt6-qmake.bbclass index 6952850..ba65fdc 100644 --- a/classes/qt6-qmake.bbclass +++ b/classes/qt6-qmake.bbclass @@ -71,6 +71,8 @@ export OE_QMAKE_LINK = "${CXX}" export OE_QMAKE_LDFLAGS = "${LDFLAGS}" export OE_QMAKE_AR = "${AR}" export OE_QMAKE_STRIP = "echo" +export OE_QMAKE_OBJCOPY = "${OBJCOPY}" +export OE_QMAKE_NM = "${NM}" # qmake reads if from shell environment export OE_QMAKE_QTCONF_PATH = "${WORKDIR}/qt.conf" diff --git a/recipes-qt/qt6/qtbase/0001-Add-linux-oe-g-platform.patch b/recipes-qt/qt6/qtbase/0001-Add-linux-oe-g-platform.patch index fd2b32e..e130311 100644 --- a/recipes-qt/qt6/qtbase/0001-Add-linux-oe-g-platform.patch +++ b/recipes-qt/qt6/qtbase/0001-Add-linux-oe-g-platform.patch @@ -1,4 +1,4 @@ -From 93f04fa9b0895a2e965992c1438c5110fdf269ec Mon Sep 17 00:00:00 2001 +From 9fa27feda95c0cf6a459c916337ab65e8cb220b4 Mon Sep 17 00:00:00 2001 From: Martin Jansa <Martin.Jansa@gmail.com> Date: Mon, 15 Apr 2013 04:29:32 +0200 Subject: [PATCH] Add linux-oe-g++ platform @@ -15,16 +15,16 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> --- mkspecs/features/qt.prf | 6 ++--- mkspecs/features/qt_functions.prf | 2 +- - mkspecs/linux-oe-g++/qmake.conf | 37 ++++++++++++++++++++++++++++ + mkspecs/linux-oe-g++/qmake.conf | 38 ++++++++++++++++++++++++++++ mkspecs/linux-oe-g++/qplatformdefs.h | 1 + mkspecs/oe-device-extra.pri | 0 - 5 files changed, 42 insertions(+), 4 deletions(-) + 5 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 mkspecs/linux-oe-g++/qmake.conf create mode 100644 mkspecs/linux-oe-g++/qplatformdefs.h create mode 100644 mkspecs/oe-device-extra.pri diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf -index 532a241fc0..1d1d7d35e3 100644 +index 55a51293ac..7b7a8758eb 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -150,7 +150,7 @@ import_plugins:qtConfig(static) { @@ -36,7 +36,7 @@ index 532a241fc0..1d1d7d35e3 100644 LIBS += $$plug_path/$$plug_type/$$plug_name } else { LIBS += -l$${plug}$$qtPlatformTargetSuffix() -@@ -279,8 +279,8 @@ for(ever) { +@@ -283,8 +283,8 @@ for(ever) { # static builds: link qml import plugins into the target. contains(all_qt_module_deps, qml): \ qtConfig(static):import_plugins:!host_build:!no_import_scan { @@ -62,10 +62,10 @@ index 7777e615bd..8d792fa70a 100644 cmd = perl -w $$system_path($${cmd}.pl) diff --git a/mkspecs/linux-oe-g++/qmake.conf b/mkspecs/linux-oe-g++/qmake.conf new file mode 100644 -index 0000000000..8f41c1fa0a +index 0000000000..c2b7b20fdc --- /dev/null +++ b/mkspecs/linux-oe-g++/qmake.conf -@@ -0,0 +1,37 @@ +@@ -0,0 +1,38 @@ +# +# qmake configuration for linux-g++ with modifications for building with OpenEmbedded +# @@ -76,9 +76,10 @@ index 0000000000..8f41c1fa0a + +include(../common/linux.conf) + -+# QMAKE_<TOOL> (moc, uic, rcc) are gone, overwrite only ar and strip +QMAKE_AR = $$(OE_QMAKE_AR) cqs +QMAKE_STRIP = $$(OE_QMAKE_STRIP) ++QMAKE_OBJCOPY = $$(OE_QMAKE_OBJCOPY) ++QMAKE_NM = $${OE_QMAKE_NM} -P + +include(../common/gcc-base-unix.conf) + |