From: Joshua Lock <josh@openedhand.com>
To: poky@yoctoproject.org
Subject: Re: [PATCH 08/11] qt4: Add qt4-tools-nativesdk based on qt4-tools-sdk from OpenEmbedded
Date: Fri, 28 Jan 2011 15:27:20 +0000 [thread overview]
Message-ID: <1296228440.2704.24.camel@scimitar> (raw)
In-Reply-To: <93afb5a16a88cd026eea90a6b9af98445fdbdd93.1296174472.git.paul.eggleton@linux.intel.com>
On Fri, 2011-01-28 at 00:36 +0000, Paul Eggleton wrote:
> From: Paul Eggleton <paul.eggleton@linux.intel.com>
>
> Differences from OpenEmbedded qt4-tools-sdk:
>
> * Convert to nativesdk and make fixes necessary to build
Any reason why this wouldn't be based on the same recipe as
qt4-tools-native?
> * Use .inc file in 4.6.3 version
> * Add LIC_FILES_CHKSUM
> * Fix LICENSE to match other Qt4 recipes
> * Use http source URL to match other Qt4 recipes
> * Whitespace fixes
>
> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
> ---
> .../recipes-qt/qt4/files/compile.test-lflags.patch | 13 +++
> meta/recipes-qt/qt4/files/configure-lflags.patch | 13 +++
> meta/recipes-qt/qt4/files/configure-paths.patch | 21 ++++
> meta/recipes-qt/qt4/files/qmake-exists-check.patch | 18 +++
> meta/recipes-qt/qt4/qt4-tools-nativesdk.inc | 111 ++++++++++++++++++++
> meta/recipes-qt/qt4/qt4-tools-nativesdk_4.6.3.bb | 6 +
> meta/recipes-qt/qt4/qt4-tools-nativesdk_4.7.1.bb | 6 +
> 7 files changed, 188 insertions(+), 0 deletions(-)
> create mode 100644 meta/recipes-qt/qt4/files/compile.test-lflags.patch
> create mode 100644 meta/recipes-qt/qt4/files/configure-lflags.patch
> create mode 100644 meta/recipes-qt/qt4/files/configure-paths.patch
> create mode 100644 meta/recipes-qt/qt4/files/qmake-exists-check.patch
> create mode 100644 meta/recipes-qt/qt4/qt4-tools-nativesdk.inc
> create mode 100644 meta/recipes-qt/qt4/qt4-tools-nativesdk_4.6.3.bb
> create mode 100644 meta/recipes-qt/qt4/qt4-tools-nativesdk_4.7.1.bb
>
> diff --git a/meta/recipes-qt/qt4/files/compile.test-lflags.patch b/meta/recipes-qt/qt4/files/compile.test-lflags.patch
> new file mode 100644
> index 0000000..e4b256b
> --- /dev/null
> +++ b/meta/recipes-qt/qt4/files/compile.test-lflags.patch
> @@ -0,0 +1,13 @@
> +Index: qt-everywhere-opensource-src-4.6.3/config.tests/unix/compile.test
> +===================================================================
> +--- qt-everywhere-opensource-src-4.6.3.orig/config.tests/unix/compile.test 2010-06-02 06:03:18.000000000 +0400
> ++++ qt-everywhere-opensource-src-4.6.3/config.tests/unix/compile.test 2010-10-04 17:35:07.587783460 +0400
> +@@ -11,7 +11,7 @@
> + EXE=`basename "$6"`
> + DESCRIPTION=$7
> + shift 7
> +-LFLAGS=""
> ++LFLAGS="$LDFLAGS"
> + INCLUDEPATH=""
> + CXXFLAGS=""
> + MAC_ARCH_CXXFLAGS=""
> diff --git a/meta/recipes-qt/qt4/files/configure-lflags.patch b/meta/recipes-qt/qt4/files/configure-lflags.patch
> new file mode 100644
> index 0000000..df19549
> --- /dev/null
> +++ b/meta/recipes-qt/qt4/files/configure-lflags.patch
> @@ -0,0 +1,13 @@
> +Index: qtopia-core-opensource-src-4.3.3/configure
> +===================================================================
> +--- qtopia-core-opensource-src-4.3.3.orig/configure 2008-01-14 08:53:51.000000000 +0000
> ++++ qtopia-core-opensource-src-4.3.3/configure 2008-01-14 08:54:07.000000000 +0000
> +@@ -447,7 +447,7 @@
> + # initalize variables
> + #-------------------------------------------------------------------------------
> +
> +-SYSTEM_VARIABLES="CC CXX CFLAGS CXXFLAGS LDFLAGS"
> ++SYSTEM_VARIABLES="CC CXX CFLAGS CXXFLAGS LDFLAGS LFLAGS"
> + for varname in $SYSTEM_VARIABLES; do
> + cmd=`echo \
> + 'if [ -n "\$'${varname}'" ]; then
> diff --git a/meta/recipes-qt/qt4/files/configure-paths.patch b/meta/recipes-qt/qt4/files/configure-paths.patch
> new file mode 100644
> index 0000000..c9259a1
> --- /dev/null
> +++ b/meta/recipes-qt/qt4/files/configure-paths.patch
> @@ -0,0 +1,21 @@
> +Index: qt-everywhere-opensource-src-4.6.3/configure
> +===================================================================
> +--- qt-everywhere-opensource-src-4.6.3.orig/configure 2011-01-10 15:47:37.100607001 +0000
> ++++ qt-everywhere-opensource-src-4.6.3/configure 2011-01-10 15:49:14.576606999 +0000
> +@@ -7198,11 +7198,11 @@
> + QMAKE_MOC_SRC = \$\$QT_BUILD_TREE/src/moc
> +
> + #local paths that cannot be queried from the QT_INSTALL_* properties while building QTDIR
> +-QMAKE_MOC = \$\$QT_BUILD_TREE/bin/moc
> +-QMAKE_UIC = \$\$QT_BUILD_TREE/bin/uic
> +-QMAKE_UIC3 = \$\$QT_BUILD_TREE/bin/uic3
> +-QMAKE_RCC = \$\$QT_BUILD_TREE/bin/rcc
> +-QMAKE_QDBUSXML2CPP = \$\$QT_BUILD_TREE/bin/qdbusxml2cpp
> ++QMAKE_MOC = \${OE_QMAKE_MOC}
> ++QMAKE_UIC = \${OE_QMAKE_UIC}
> ++QMAKE_UIC3 = \${OE_QMAKE_UIC3}
> ++QMAKE_RCC = \${OE_QMAKE_RCC}
> ++QMAKE_QDBUSXML2CPP = \${OE_QMAKE_QDBUSXML2CPP}
> + QMAKE_INCDIR_QT = \$\$QT_BUILD_TREE/include
> + QMAKE_LIBDIR_QT = \$\$QT_BUILD_TREE/lib
> +
> diff --git a/meta/recipes-qt/qt4/files/qmake-exists-check.patch b/meta/recipes-qt/qt4/files/qmake-exists-check.patch
> new file mode 100644
> index 0000000..cc73837
> --- /dev/null
> +++ b/meta/recipes-qt/qt4/files/qmake-exists-check.patch
> @@ -0,0 +1,18 @@
> +qt4-tools-nativesdk: avoid rebuilding qmake
> +
> +qt4-tools-nativesdk patch to avoids building qmake in configure if it already exists
> +(as it will, since we symlink it in from the native sysroot in do_configure)
> +
> +Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
> +
> +--- qt-everywhere-opensource-src-4.6.3.orig/configure 2011-01-10 12:01:56.260607001 +0000
> ++++ qt-everywhere-opensource-src-4.6.3/configure 2011-01-10 12:02:20.584607015 +0000
> +@@ -4286,7 +4286,7 @@
> + }
> +
> + # build qmake
> +-if true; then ###[ '!' -f "$outpath/bin/qmake" ];
> ++if [ '!' -f "$outpath/bin/qmake" ]; then
> + echo "Creating qmake. Please wait..."
> +
> + OLD_QCONFIG_H=
> diff --git a/meta/recipes-qt/qt4/qt4-tools-nativesdk.inc b/meta/recipes-qt/qt4/qt4-tools-nativesdk.inc
> new file mode 100644
> index 0000000..f273c9f
> --- /dev/null
> +++ b/meta/recipes-qt/qt4/qt4-tools-nativesdk.inc
> @@ -0,0 +1,111 @@
> +DESCRIPTION = "SDK tools for Qt/[X11|Mac|Embedded] version 4.x"
> +DEPENDS = "zlib-nativesdk dbus-nativesdk libx11-nativesdk qt4-tools-native"
> +SECTION = "libs"
> +HOMEPAGE = "http://qt.nokia.com"
> +PRIORITY = "optional"
> +LICENSE = "LGPLv2.1 | GPLv3"
> +
> +INC_PR = "r3"
> +
> +FILESPATHPKG =. "qt-${PV}:"
> +inherit nativesdk qmake2
> +
> +SRC_URI = "http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \
> + file://configure-lflags.patch \
> + file://compile.test-lflags.patch \
> + file://qt-config.patch \
> + file://qmake-exists-check.patch \
> + file://configure-paths.patch \
> + file://g++.conf \
> + file://linux.conf"
> +
> +S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
> +
> +LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \
> + file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \
> + file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354"
> +
> +# FIXME: make it work with "${STAGING_BINDIR_NATIVE}/pkg-config --cflags dbus-1"
> +EXTRA_OECONF = "-prefix ${prefix} \
> + -qt-libjpeg -qt-gif -system-zlib \
> + -no-libjpeg -no-libpng -no-libmng -no-libtiff \
> + -no-accessibility \
> + -no-cups \
> + -no-exceptions \
> + -no-nas-sound \
> + -no-nis -no-openssl \
> + -verbose -release -fast -static \
> + -platform ${TARGET_OS}-oe-g++ \
> + -xplatform ${TARGET_OS}-oe-g++ \
> + -embedded -no-freetype -no-glib -no-iconv \
> + -qt3support \
> + -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include \
> + -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include/freetype2 \
> + -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include/dbus-1.0 \
> + -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/lib/dbus-1.0/include \
> + -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include/c++ \
> + -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include/c++/${TARGET_SYS} \
> + -L${STAGING_DIR_HOST}${SDKPATHNATIVE}/lib \
> + -L${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/lib"
> +
> +# yank default -e, otherwise we get the following error:
> +# moc_qbuffer.cpp: No such file or directory
> +EXTRA_OEMAKE = " "
> +
> +do_configure() {
> + if [ ! -e bin/qmake ]; then
> + ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake
> + fi
> +
> + if [ ! -e mkspecs/${TARGET_OS}-oe-g++ ]; then
> + ln -sf linux-g++ mkspecs/${TARGET_OS}-oe-g++
> + fi
> +
> + cp ../g++.conf mkspecs/common
> + cp ../linux.conf mkspecs/common
> +
> + (echo o; echo yes) | ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}"
> +}
> +
> +TOBUILD = "\
> + src/tools/bootstrap \
> + src/tools/moc \
> + src/corelib \
> + src/sql \
> + src/dbus \
> + src/qt3support \
> + src/xml \
> + src/tools/uic \
> + src/tools/rcc \
> + src/network \
> + src/gui \
> + src/tools/uic3 \
> + tools/linguist/lrelease \
> + tools/linguist/lupdate \
> + tools/qdbus \
> +"
> +
> +do_compile() {
> + for i in ${TOBUILD}; do
> + cd ${S}/$i && oe_runmake CC="${CC}" CXX="${CXX}"
> + done
> +}
> +
> +do_install() {
> + install -d ${D}${bindir}
> + install -m 0755 bin/qmake ${D}${bindir}/qmake2
> + for i in moc uic uic3 rcc lrelease lupdate qdbuscpp2xml qdbusxml2cpp; do
> + install -m 0755 bin/${i} ${D}${bindir}/${i}4
> + done
> +
> + (cd ${D}${bindir}; \
> + ln -s qmake2 qmake; \
> + for i in moc uic uic3 rcc lrelease lupdate qdbuscpp2xml qdbusxml2cpp; do \
> + ln -s ${i}4 ${i}; \
> + done)
> +
> + # make a symbolic link to mkspecs for compatibility with Nokia's SDK
> + # and QTCreator
> + (cd ${D}${bindir}/..; ln -s ${TARGET_SYS}/usr/share/qtopia/mkspecs mkspecs;)
> +}
> +
> diff --git a/meta/recipes-qt/qt4/qt4-tools-nativesdk_4.6.3.bb b/meta/recipes-qt/qt4/qt4-tools-nativesdk_4.6.3.bb
> new file mode 100644
> index 0000000..d64542b
> --- /dev/null
> +++ b/meta/recipes-qt/qt4/qt4-tools-nativesdk_4.6.3.bb
> @@ -0,0 +1,6 @@
> +require qt4-tools-nativesdk.inc
> +
> +PR = "${INC_PR}.0"
> +
> +SRC_URI[md5sum] = "5c69f16d452b0bb3d44bc3c10556c072"
> +SRC_URI[sha256sum] = "f4e0ada8d4d516bbb8600a3ee7d9046c9c79e38cd781df9ffc46d8f16acd1768"
> diff --git a/meta/recipes-qt/qt4/qt4-tools-nativesdk_4.7.1.bb b/meta/recipes-qt/qt4/qt4-tools-nativesdk_4.7.1.bb
> new file mode 100644
> index 0000000..091a539
> --- /dev/null
> +++ b/meta/recipes-qt/qt4/qt4-tools-nativesdk_4.7.1.bb
> @@ -0,0 +1,6 @@
> +require qt4-tools-nativesdk.inc
> +
> +PR = "${INC_PR}.0"
> +
> +SRC_URI[md5sum] = "6f88d96507c84e9fea5bf3a71ebeb6d7"
> +SRC_URI[sha256sum] = "8cb5277c41f824cfc6dcee0e95e0bf23a9ad2c8d18d245105137481d092b124a"
--
Joshua Lock
Intel Open Source Technology Centre
next prev parent reply other threads:[~2011-01-28 15:27 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-28 0:36 [PATCH 00/11] Qt4 update Paul Eggleton
2011-01-28 0:36 ` [PATCH 01/11] Add directfb 1.4.6 from meta-openembedded Paul Eggleton
2011-01-28 15:27 ` Joshua Lock
2011-01-30 20:21 ` Saul Wold
2011-01-28 0:36 ` [PATCH 02/11] qt4: Bring in improvements " Paul Eggleton
2011-01-28 0:36 ` [PATCH 03/11] qt4: add qt4-embedded 4.6.3 " Paul Eggleton
2011-01-28 0:36 ` [PATCH 04/11] qt4: add 4.7.1 version " Paul Eggleton
2011-01-28 0:36 ` [PATCH 05/11] qt4-tools-native: update from OpenEmbedded Paul Eggleton
2011-01-28 0:36 ` [PATCH 06/11] glib-2.0: extend to nativesdk Paul Eggleton
2011-01-28 0:36 ` [PATCH 07/11] dbus: " Paul Eggleton
2011-01-28 0:36 ` [PATCH 08/11] qt4: Add qt4-tools-nativesdk based on qt4-tools-sdk from OpenEmbedded Paul Eggleton
2011-01-28 15:27 ` Joshua Lock [this message]
2011-01-28 17:25 ` Paul Eggleton
2011-01-28 0:36 ` [PATCH 09/11] package.bbclass: add nodeprrecs flag to RRECOMMENDS_pkgname Paul Eggleton
2011-01-28 0:36 ` [PATCH 10/11] avahi: prevent unnecessary runtime dependency on gtk+ Paul Eggleton
2011-01-28 0:36 ` [PATCH 11/11] qt4: Add meta-toolchain-qte and dependent tasks from OpenEmbedded Paul Eggleton
2011-01-28 15:27 ` Joshua Lock
2011-01-28 15:47 ` Koen Kooi
2011-01-28 17:20 ` Paul Eggleton
2011-01-28 17:43 ` Koen Kooi
2011-01-29 2:32 ` Paul Eggleton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1296228440.2704.24.camel@scimitar \
--to=josh@openedhand.com \
--cc=poky@yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.