aboutsummaryrefslogtreecommitdiffstats
path: root/classes
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2013-02-27 21:26:09 +0100
committerMartin Jansa <Martin.Jansa@gmail.com>2013-04-17 16:09:56 +0200
commit70b1b233b20c4128cd068c35244c1a97934edf1d (patch)
tree7ef6af7444accecfd34264a78e07b8db4ad5c147 /classes
parent5d5ba83cc6eadbff6d60d5ae4947bc9b48d846f4 (diff)
qt5-native, qtjsbackend-native: fix .pri and .prl pointing to WORKDIR or absolute sysroot
* fix paralel build * default make does good job, cleans mkspecs, installs all headers and libs needed for qtjsbackend-native * move native tools to QT_DIR_NAME prefix, this way qt4 and qt5 can be staged at the same time * only variables referencing WORKDIR are now QMAKE_PRL_BUILD_DIR ./x86_64-linux/usr/lib/libQt5Network.prl:QMAKE_PRL_BUILD_DIR = /OE/oe-core/tmp-eglibc/work/x86_64-linux/qt5-native/5.0.1-r0.0/qtbase-opensource-src-5.0.1/src/network/ ./x86_64-linux/usr/lib/libQt5Xml.prl:QMAKE_PRL_BUILD_DIR = /OE/oe-core/tmp-eglibc/work/x86_64-linux/qt5-native/5.0.1-r0.0/qtbase-opensource-src-5.0.1/src/xml/ ./x86_64-linux/usr/lib/libQt5Bootstrap.prl:QMAKE_PRL_BUILD_DIR = /OE/oe-core/tmp-eglibc/work/x86_64-linux/qt5-native/5.0.1-r0.0/qtbase-opensource-src-5.0.1/src/tools/bootstrap/ ./x86_64-linux/usr/lib/libQt5Concurrent.prl:QMAKE_PRL_BUILD_DIR = /OE/oe-core/tmp-eglibc/work/x86_64-linux/qt5-native/5.0.1-r0.0/qtbase-opensource-src-5.0.1/src/concurrent/ ./x86_64-linux/usr/lib/libQt5Core.prl:QMAKE_PRL_BUILD_DIR = /OE/oe-core/tmp-eglibc/work/x86_64-linux/qt5-native/5.0.1-r0.0/qtbase-opensource-src-5.0.1/src/corelib/ ./x86_64-linux/usr/lib/libQt5Test.prl:QMAKE_PRL_BUILD_DIR = /OE/oe-core/tmp-eglibc/work/x86_64-linux/qt5-native/5.0.1-r0.0/qtbase-opensource-src-5.0.1/src/testlib/ ./x86_64-linux/usr/lib/libQt5Sql.prl:QMAKE_PRL_BUILD_DIR = /OE/oe-core/tmp-eglibc/work/x86_64-linux/qt5-native/5.0.1-r0.0/qtbase-opensource-src-5.0.1/src/sql/ ./x86_64-linux/usr/lib/libQt5DBus.prl:QMAKE_PRL_BUILD_DIR = /OE/oe-core/tmp-eglibc/work/x86_64-linux/qt5-native/5.0.1-r0.0/qtbase-opensource-src-5.0.1/src/dbus/ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'classes')
-rw-r--r--classes/qmake5.bbclass5
-rw-r--r--classes/qmake5_base.bbclass58
2 files changed, 37 insertions, 26 deletions
diff --git a/classes/qmake5.bbclass b/classes/qmake5.bbclass
index 00d6c0ea..68c19f7f 100644
--- a/classes/qmake5.bbclass
+++ b/classes/qmake5.bbclass
@@ -6,11 +6,6 @@ inherit qmake5_base
QT5TOOLSDEPENDS ?= "qtbase-native "
DEPENDS_prepend = "${QT5TOOLSDEPENDS}"
-export QMAKESPEC = "${STAGING_DATADIR}/qt5/mkspecs/${TARGET_OS}-oe-g++"
-export OE_QMAKE_UIC = "${STAGING_BINDIR_NATIVE}/uic"
-export OE_QMAKE_MOC = "${STAGING_BINDIR_NATIVE}/moc"
-export OE_QMAKE_RCC = "${STAGING_BINDIR_NATIVE}/rcc"
-export OE_QMAKE_QMAKE = "${STAGING_BINDIR_NATIVE}/qmake"
export OE_QMAKE_LINK = "${CXX}"
export OE_QMAKE_CXXFLAGS = "${CXXFLAGS}"
export OE_QMAKE_INCDIR_QT = "${STAGING_INCDIR}/qt5"
diff --git a/classes/qmake5_base.bbclass b/classes/qmake5_base.bbclass
index ee5ff780..b9279967 100644
--- a/classes/qmake5_base.bbclass
+++ b/classes/qmake5_base.bbclass
@@ -1,35 +1,51 @@
+QMAKE_MKSPEC_PATH ?= "${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs"
+OE_QMAKE_PLATFORM = "${TARGET_OS}-oe-g++"
+QMAKESPEC := "${QMAKE_MKSPEC_PATH}/${OE_QMAKE_PLATFORM}"
-# We override this completely to eliminate the -e normally passed in
-EXTRA_OEMAKE = ' MAKEFLAGS= '
+EXTRA_OEMAKE = ' MAKEFLAGS=${PARALLEL_MAKE} '
-export OE_QMAKE_CC="${CC}"
-export OE_QMAKE_CFLAGS="${CFLAGS}"
-export OE_QMAKE_CXX="${CXX}"
-export OE_QMAKE_LDFLAGS="${LDFLAGS}"
-export OE_QMAKE_AR="${AR} cqs"
-export OE_QMAKE_STRIP="echo"
-export OE_QMAKE_RPATH="-Wl,-rpath-link,"
+EXTRA_ENV = 'QMAKE="${OE_QMAKE_QMAKE} -d -after \
+ INCPATH+=${STAGING_INCDIR}/freetype2 LIBS+=-L${STAGING_LIBDIR}" \
+ LINK="${CXX} -Wl,-rpath-link,${STAGING_LIBDIR}" \
+ AR="${TARGET_PREFIX}ar cqs" \
+ MOC="${OE_QMAKE_MOC}" \
+ UIC="${OE_QMAKE_UIC}" \
+ RCC="${OE_QMAKE_RCC}" \
+ MAKE="make -e ${PARALLEL_MAKE}"'
+
+export QMAKESPEC = "${QMAKE_MKSPEC_PATH}/${TARGET_OS}-oe-g++"
+export OE_QMAKE_QMAKE = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake"
+export OE_QMAKE_UIC = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/uic"
+export OE_QMAKE_MOC = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/moc"
+export OE_QMAKE_RCC = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/rcc"
+export OE_QMAKE_CC = "${CC}"
+export OE_QMAKE_CFLAGS = "${CFLAGS}"
+export OE_QMAKE_CXX = "${CXX}"
+export OE_QMAKE_LDFLAGS = "${LDFLAGS}"
+export OE_QMAKE_AR = "${AR} cqs"
+export OE_QMAKE_STRIP = "echo"
+export OE_QMAKE_RPATH = "-Wl,-rpath-link,"
+export OE_QMAKE_CONF_COMPILER = "g++"
+export QT_CONF_PATH = "${WORKDIR}/qt.conf"
+export QT_DIR_NAME ?= "qt5"
# do not export STRIP to the environment
STRIP[unexport] = "1"
do_generate_qt_config_file() {
-
- export QT_CONF_PATH=${WORKDIR}/qt.conf
cat > ${WORKDIR}/qt.conf <<EOF
[Paths]
Binaries = ${bindir}
-Headers = ${STAGING_INCDIR}/qt5
-Plugins = ${libdir}/qt5/plugins
-Libraries = ${STAGING_LIBDIR}
-Imports = ${datadir}/qt5/imports
-Qml2Imports = ${libdir}/qt5/qml
-Documentation=${docdir}/qt5
-Data = ${datadir}/qt5
-HostData = ${STAGING_DATADIR}/qt5
-HostBinaries = ${STAGING_BINDIR_NATIVE}
+Libraries = ${libdir}
+Prefix = ${prefix}
+Headers = ${includedir}/${QT_DIR_NAME}
+Data = ${datadir}/${QT_DIR_NAME}
+ArchData = ${libdir}/${QT_DIR_NAME}
+Documentation = ${docdir}/${QT_DIR_NAME}
+HostData = ${STAGING_DATADIR}/${QT_DIR_NAME}
+HostSpecPath = ${QMAKE_MKSPEC_PATH}
+HostBinaries = ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}
EOF
-
}
addtask generate_qt_config_file after do_patch before do_configure