mirror of
https://github.com/thead-yocto-mirror/meta-qt5
synced 2026-06-21 08:52:35 +02:00
qt5: Use existing variables for paths of host tools
Makes it possible to install qmake into ${bindir} without setting
QT_DIR_NAME = "".
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
committed by
Martin Jansa
parent
6255c3bc0c
commit
df324ebd49
@@ -32,7 +32,7 @@ EXTRA_OEMAKE = " \
|
||||
|
||||
OE_QMAKESPEC = "${QMAKE_MKSPEC_PATH_NATIVE}/mkspecs/${OE_QMAKE_PLATFORM_NATIVE}"
|
||||
OE_XQMAKESPEC = "${QMAKE_MKSPEC_PATH}/mkspecs/${OE_QMAKE_PLATFORM}"
|
||||
OE_QMAKE_QMAKE = "${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qmake"
|
||||
OE_QMAKE_QMAKE = "${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qmake"
|
||||
OE_QMAKE_COMPILER = "${CC}"
|
||||
OE_QMAKE_CC = "${CC}"
|
||||
OE_QMAKE_CFLAGS = "${CFLAGS}"
|
||||
|
||||
@@ -146,7 +146,7 @@ export OE_QMAKE_AR
|
||||
export OE_QMAKE_STRIP
|
||||
|
||||
# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location
|
||||
OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qmake"
|
||||
OE_QMAKE_QMAKE_ORIG := "${OE_QMAKE_QMAKE}"
|
||||
OE_QMAKE_QMAKE = "bin/qmake"
|
||||
|
||||
do_configure() {
|
||||
|
||||
@@ -32,8 +32,8 @@ EXTRA_QMAKEVARS_PRE += "IDE_LIBRARY_BASENAME=${baselib}${QT_DIR_NAME}"
|
||||
|
||||
do_configure_append() {
|
||||
# Find native tools
|
||||
sed -i 's:${STAGING_BINDIR}.*/lrelease:${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/lrelease:g' ${B}/share/qtcreator/translations/Makefile
|
||||
sed -i 's:${STAGING_BINDIR}.*/qdoc:${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qdoc:g' ${B}/Makefile
|
||||
sed -i 's:${STAGING_BINDIR}.*/lrelease:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lrelease:g' ${B}/share/qtcreator/translations/Makefile
|
||||
sed -i 's:${STAGING_BINDIR}.*/qdoc:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdoc:g' ${B}/Makefile
|
||||
|
||||
# see qtbase-native.inc
|
||||
# sed -i 's:QT_INSTALL_DOCS=${docdir}:QT_INSTALL_DOCS=${STAGING_DATADIR_NATIVE}${QT_DIR_NAME}/doc:g' ${B}/Makefile
|
||||
@@ -50,7 +50,7 @@ do_install() {
|
||||
# install desktop and ensure that qt-creator finds qmake
|
||||
install -d ${D}${datadir}/applications
|
||||
install -m 0644 ${WORKDIR}/qtcreator.desktop.in ${D}${datadir}/applications/qtcreator.desktop
|
||||
sed -i 's:@QT5_QMAKE@:${bindir}${QT_DIR_NAME}:g' ${D}${datadir}/applications/qtcreator.desktop
|
||||
sed -i 's:@QT5_QMAKE@:${OE_QMAKE_PATH_QT_BINS}:g' ${D}${datadir}/applications/qtcreator.desktop
|
||||
}
|
||||
|
||||
FILES_${PN} += " \
|
||||
|
||||
@@ -156,7 +156,7 @@ EOF
|
||||
QMAKE_MKSPEC_PATH = "${B}"
|
||||
|
||||
# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location
|
||||
OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qmake"
|
||||
OE_QMAKE_QMAKE_ORIG := "${OE_QMAKE_QMAKE}"
|
||||
OE_QMAKE_QMAKE = "bin/qmake"
|
||||
|
||||
# qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell
|
||||
@@ -211,7 +211,7 @@ do_install_append() {
|
||||
# Avoid qmake error "Cannot read [...]/usr/lib/qt5/mkspecs/oe-device-extra.pri: No such file or directory"
|
||||
touch ${D}/${OE_QMAKE_PATH_QT_ARCHDATA}/mkspecs/oe-device-extra.pri
|
||||
|
||||
install -m 0755 ${B}/bin/qmake-target ${D}/${bindir}${QT_DIR_NAME}/qmake
|
||||
install -m 0755 ${B}/bin/qmake-target ${D}${OE_QMAKE_PATH_QT_BINS}/qmake
|
||||
|
||||
# Remove example.pro file as it is useless
|
||||
rm -f ${D}${OE_QMAKE_PATH_EXAMPLES}/examples.pro
|
||||
|
||||
@@ -22,7 +22,7 @@ SRC_URI += " \
|
||||
file://0003-Workaround-crashes-in-QtQml-code-related-to-dead-sto.patch \
|
||||
"
|
||||
|
||||
EXTRA_OEMAKE += "QMAKE_SYNCQT=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/syncqt"
|
||||
EXTRA_OEMAKE += "QMAKE_SYNCQT=${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/syncqt"
|
||||
|
||||
PACKAGECONFIG ??= "qtxmlpatterns"
|
||||
PACKAGECONFIG[qtxmlpatterns] = ",,qtxmlpatterns"
|
||||
@@ -33,7 +33,7 @@ do_configure_prepend() {
|
||||
sed -e 's/^\(!qtHaveModule(xmlpatterns)\)/!OE_QTXMLPATTERNS_ENABLED|\1/' -i ${S}/tests/auto/quick/quick.pro
|
||||
|
||||
#set the path for syncqt properly
|
||||
echo "QT_TOOL.syncqt.binary = \"${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/syncqt\"" > ${B}/.qmake.cache
|
||||
echo "QT_TOOL.syncqt.binary = \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/syncqt\"" > ${B}/.qmake.cache
|
||||
}
|
||||
|
||||
EXTRA_QMAKEVARS_PRE += "${@bb.utils.contains('PACKAGECONFIG', 'qtxmlpatterns', 'CONFIG+=OE_QTXMLPATTERNS_ENABLED', '', d)}"
|
||||
|
||||
Reference in New Issue
Block a user