From 212ae9b201ae71047e6d9f1dd97479ac1169d9b6 Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Thu, 18 Mar 2021 13:45:47 +0200 Subject: [PATCH] Use bindir for tools on Windows SDK Move all the builttime tools back to bindir when building a Windows SDK. This saves us from adding mingw libraries to the libexec dir needed by the tools. Fixes: QTBUG-91895 Pick-to: 6.1 Change-Id: I4da0f03190e3862e93c49fbd267baf567bf7a5d5 Reviewed-by: Mikko Gronoff --- classes/populate_sdk_qt6_base.bbclass | 12 ++++++++---- classes/qt6-paths.bbclass | 3 ++- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/classes/populate_sdk_qt6_base.bbclass b/classes/populate_sdk_qt6_base.bbclass index dcf470d..60f6535 100644 --- a/classes/populate_sdk_qt6_base.bbclass +++ b/classes/populate_sdk_qt6_base.bbclass @@ -6,9 +6,12 @@ SDK_POSTPROCESS_COMMAND_prepend = "create_qt6_sdk_files;" PATH_DELIM = ":" PATH_DELIM_sdkmingw32 = ";" +QT6_INSTALL_HOST_LIBEXECDIR = "${QT6_INSTALL_LIBEXECDIR}" +QT6_INSTALL_HOST_LIBEXECDIR_sdkmingw32 = "${QT6_INSTALL_LIBEXECDIR_mingw32}" + create_qt6_sdk_files () { # Generate a qt.conf file to be deployed with the SDK - qtconf=${SDK_OUTPUT}${SDKPATHNATIVE}${QT6_INSTALL_BINDIR}/qt.conf + qtconf=${WORKDIR}/qt.conf touch $qtconf echo '[Paths]' >> $qtconf echo 'Prefix = ${prefix}' >> $qtconf @@ -29,14 +32,15 @@ create_qt6_sdk_files () { echo 'HostData = ${SDKTARGETSYSROOT}${QT6_INSTALL_ARCHDATADIR}' >> $qtconf echo 'HostBinaries = ${SDKPATHNATIVE}${QT6_INSTALL_BINDIR}' >> $qtconf echo 'HostLibraries = ${SDKPATHNATIVE}${QT6_INSTALL_LIBDIR}' >> $qtconf - echo 'HostLibraryExecutables = ${SDKPATHNATIVE}${QT6_INSTALL_LIBEXECDIR}' >> $qtconf + echo 'HostLibraryExecutables = ${SDKPATHNATIVE}${QT6_INSTALL_HOST_LIBEXECDIR}' >> $qtconf echo 'Sysroot = ${SDKTARGETSYSROOT}' >> $qtconf echo 'HostSpec = linux-oe-g++' >> $qtconf echo 'TargetSpec = linux-oe-g++' >> $qtconf echo 'SysrootifyPrefix = true' >> $qtconf - # make copy to libexec dir - cp $qtconf ${SDK_OUTPUT}${SDKPATHNATIVE}${QT6_INSTALL_LIBEXECDIR}/ + # add qt.conf to both bin and libexec dirs + cp ${WORKDIR}/qt.conf ${SDK_OUTPUT}${SDKPATHNATIVE}${QT6_INSTALL_BINDIR}/ + cp ${WORKDIR}/qt.conf ${SDK_OUTPUT}${SDKPATHNATIVE}${QT6_INSTALL_HOST_LIBEXECDIR}/ install -d ${SDK_OUTPUT}${SDKPATHNATIVE}/environment-setup.d script=${SDK_OUTPUT}${SDKPATHNATIVE}/environment-setup.d/qt6.sh diff --git a/classes/qt6-paths.bbclass b/classes/qt6-paths.bbclass index a5231bd..7e0b514 100644 --- a/classes/qt6-paths.bbclass +++ b/classes/qt6-paths.bbclass @@ -10,8 +10,9 @@ QT6_INSTALL_LIBDIR ?= "${libdir}" QT6_INSTALL_ARCHDATADIR ?= "${libdir}" # Plugins [ARCHDATADIR/plugins] QT6_INSTALL_PLUGINSDIR ?= "${libdir}/plugins" -# Helper programs ARCHDATADIR/libexec otherwise +# Helper programs [ARCHDATADIR/bin on Windows, ARCHDATADIR/libexec otherwise] QT6_INSTALL_LIBEXECDIR ?= "${libexecdir}" +QT6_INSTALL_LIBEXECDIR_mingw32 ?= "${bindir}" # QML2 imports [ARCHDATADIR/qml] QT6_INSTALL_QMLDIR ?= "${libdir}/qml" # "Arch-independent data [PREFIX]