diff options
author | Koen Kooi <koen@dominion.thruhere.net> | 2011-01-31 08:35:04 +0100 |
---|---|---|
committer | Koen Kooi <koen@dominion.thruhere.net> | 2011-01-31 10:19:02 +0100 |
commit | 183ca02ebee6db8b7575057c48f8e965357eac59 (patch) | |
tree | d9135566cfdaa6b8c9c885c8c1b20fc397f99b4f /recipes-qt | |
parent | 453f31b13af76a4bfa534ab9fbe4795a10029b84 (diff) | |
download | meta-openembedded-contrib-183ca02ebee6db8b7575057c48f8e965357eac59.tar.gz |
qt4: sync with paule/qt-fixes3
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'recipes-qt')
25 files changed, 343 insertions, 166 deletions
diff --git a/recipes-qt/qt4/files/0001-cross-compile.patch b/recipes-qt/qt4/files/0001-cross-compile.patch index 0cf1b8c304..053be06e54 100644 --- a/recipes-qt/qt4/files/0001-cross-compile.patch +++ b/recipes-qt/qt4/files/0001-cross-compile.patch @@ -1,3 +1,7 @@ +Add configure option "crossarch" for cross compiling + +Ported from OE by: Yu Ke <ke.yu@intel.com> + Index: qt-embedded-linux-opensource-src-4.4.3/configure =================================================================== --- qt-embedded-linux-opensource-src-4.4.3.orig/configure 2009-03-26 17:02:45.000000000 +0100 diff --git a/recipes-qt/qt4/files/0004-no-qmake.patch b/recipes-qt/qt4/files/0004-no-qmake.patch index 86613587a1..a58b19f904 100644 --- a/recipes-qt/qt4/files/0004-no-qmake.patch +++ b/recipes-qt/qt4/files/0004-no-qmake.patch @@ -3,6 +3,10 @@ From: Michael Krelin <hacker@klever.net> Date: Sat, 2 Jun 2007 16:06:59 +0200 Subject: [PATCH] no qmake +qmake is already built in qt4-tools-native, so disable it + +Ported from OE by: Yu Ke <ke.yu@intel.com> + --- configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/recipes-qt/qt4/files/0009-support-2bpp.patch b/recipes-qt/qt4/files/0009-support-2bpp.patch index 82506bcbec..cf44ea8214 100644 --- a/recipes-qt/qt4/files/0009-support-2bpp.patch +++ b/recipes-qt/qt4/files/0009-support-2bpp.patch @@ -1,3 +1,7 @@ +Add 2bpp support + +Ported from OE by: Yu Ke <ke.yu@intel.com> + diff -urN qt-embedded-linux-opensource-src-4.4.3.orig/configure qt-embedded-linux-opensource-src-4.4.3/configure --- qt-embedded-linux-opensource-src-4.4.3.orig/configure 2008-09-27 11:01:23.000000000 +0200 +++ qt-embedded-linux-opensource-src-4.4.3/configure 2009-01-14 14:30:53.000000000 +0100 diff --git a/recipes-qt/qt4/files/configure-paths.patch b/recipes-qt/qt4/files/configure-paths.patch new file mode 100644 index 0000000000..c9259a1159 --- /dev/null +++ b/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/recipes-qt/qt4/files/fix-config-tests.patch b/recipes-qt/qt4/files/fix-config-tests.patch index 1e5101d8ad..21054555bc 100644 --- a/recipes-qt/qt4/files/fix-config-tests.patch +++ b/recipes-qt/qt4/files/fix-config-tests.patch @@ -2,6 +2,8 @@ Fix invocation in case of "ccache some-compiler-gcc". As the command "ccache som both visibility and relocs were affected. +Ported from OE by: Yu Ke <ke.yu@intel.com> + Index: qt-x11-opensource-src-4.5.2/config.tests/unix/bsymbolic_functions.test =================================================================== --- qt-x11-opensource-src-4.5.2.orig/config.tests/unix/bsymbolic_functions.test 2009-08-01 08:01:11.000000000 +0200 diff --git a/recipes-qt/qt4/files/hack-out-pg_config.patch b/recipes-qt/qt4/files/hack-out-pg_config.patch index 2231adf0c7..650ed7745e 100644 --- a/recipes-qt/qt4/files/hack-out-pg_config.patch +++ b/recipes-qt/qt4/files/hack-out-pg_config.patch @@ -7,7 +7,7 @@ really cross compiling. Just comment out the test, we are passing the location to the postgres headers and if they are okay we will padd. - +Ported from OE by: Yu Ke <ke.yu@intel.com> Index: qt-embedded-linux-opensource-src-4.5.2/configure =================================================================== diff --git a/recipes-qt/qt4/files/qmake-exists-check.patch b/recipes-qt/qt4/files/qmake-exists-check.patch new file mode 100644 index 0000000000..cc73837e53 --- /dev/null +++ b/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/recipes-qt/qt4/files/qt-config.patch b/recipes-qt/qt4/files/qt-config.patch index a4a701ccd7..a31e7b3e2a 100644 --- a/recipes-qt/qt4/files/qt-config.patch +++ b/recipes-qt/qt4/files/qt-config.patch @@ -1,3 +1,6 @@ + +Ported from OE by: Yu Ke <ke.yu@intel.com> + --- /tmp/qlibraryinfo.cpp 2008-08-02 17:16:41.000000000 +0200 +++ qt-embedded-linux-opensource-src-4.4.1/src/corelib/global/qlibraryinfo.cpp 2008-08-02 17:17:42.000000000 +0200 @@ -47,6 +47,7 @@ diff --git a/recipes-qt/qt4/files/qthelp-lib-qtclucene.patch b/recipes-qt/qt4/files/qthelp-lib-qtclucene.patch new file mode 100644 index 0000000000..1d250d8a98 --- /dev/null +++ b/recipes-qt/qt4/files/qthelp-lib-qtclucene.patch @@ -0,0 +1,86 @@ +qt-embedded: fix linker error in do_compile + +This patch ensures that we link to libQtCLucene where required (i.e. when +linking to libQtHelp) avoiding a linker error. + +Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> + +Index: qt-everywhere-opensource-src-4.6.3/demos/qtdemo/qtdemo.pro +=================================================================== +--- qt-everywhere-opensource-src-4.6.3.orig/demos/qtdemo/qtdemo.pro 2011-01-11 16:06:47.382828004 +0000 ++++ qt-everywhere-opensource-src-4.6.3/demos/qtdemo/qtdemo.pro 2011-01-11 16:10:06.906828001 +0000 +@@ -76,3 +76,10 @@ + sources.files = $$SOURCES $$HEADERS $$FORMS $$RESOURCES qtdemo.pro images xml *.ico *.icns *.rc *.plist + sources.path = $$[QT_INSTALL_DEMOS]/qtdemo + ++qclucene = QtCLucene$${QT_LIBINFIX} ++if(!debug_and_release|build_pass):CONFIG(debug, debug|release) { ++ mac:qclucene = $${qclucene}_debug ++ win32:qclucene = $${qclucene}d ++} ++linux-lsb-g++:LIBS_PRIVATE += --lsb-shared-libs=$$qclucene ++LIBS_PRIVATE += -l$$qclucene +Index: qt-everywhere-opensource-src-4.6.3/examples/help/contextsensitivehelp/contextsensitivehelp.pro +=================================================================== +--- qt-everywhere-opensource-src-4.6.3.orig/examples/help/contextsensitivehelp/contextsensitivehelp.pro 2011-01-11 16:05:56.598828002 +0000 ++++ qt-everywhere-opensource-src-4.6.3/examples/help/contextsensitivehelp/contextsensitivehelp.pro 2011-01-11 16:09:57.762828002 +0000 +@@ -18,3 +18,11 @@ + INSTALLS += target sources + + symbian: include($$QT_SOURCE_TREE/examples/symbianpkgrules.pri) ++ ++qclucene = QtCLucene$${QT_LIBINFIX} ++if(!debug_and_release|build_pass):CONFIG(debug, debug|release) { ++ mac:qclucene = $${qclucene}_debug ++ win32:qclucene = $${qclucene}d ++} ++linux-lsb-g++:LIBS_PRIVATE += --lsb-shared-libs=$$qclucene ++LIBS_PRIVATE += -l$$qclucene +Index: qt-everywhere-opensource-src-4.6.3/tools/assistant/tools/assistant/assistant.pro +=================================================================== +--- qt-everywhere-opensource-src-4.6.3.orig/tools/assistant/tools/assistant/assistant.pro 2011-01-11 14:56:50.902828001 +0000 ++++ qt-everywhere-opensource-src-4.6.3/tools/assistant/tools/assistant/assistant.pro 2011-01-11 16:09:39.914828003 +0000 +@@ -85,3 +85,11 @@ + DEFINES += USE_STATIC_SQLITE_PLUGIN + } + } ++ ++qclucene = QtCLucene$${QT_LIBINFIX} ++if(!debug_and_release|build_pass):CONFIG(debug, debug|release) { ++ mac:qclucene = $${qclucene}_debug ++ win32:qclucene = $${qclucene}d ++} ++linux-lsb-g++:LIBS_PRIVATE += --lsb-shared-libs=$$qclucene ++LIBS_PRIVATE += -l$$qclucene +Index: qt-everywhere-opensource-src-4.6.3/tools/assistant/tools/qcollectiongenerator/qcollectiongenerator.pro +=================================================================== +--- qt-everywhere-opensource-src-4.6.3.orig/tools/assistant/tools/qcollectiongenerator/qcollectiongenerator.pro 2011-01-11 14:56:50.918828002 +0000 ++++ qt-everywhere-opensource-src-4.6.3/tools/assistant/tools/qcollectiongenerator/qcollectiongenerator.pro 2011-01-11 16:09:44.538828001 +0000 +@@ -12,3 +12,11 @@ + main.cpp + + HEADERS += ../shared/helpgenerator.h ++ ++qclucene = QtCLucene$${QT_LIBINFIX} ++if(!debug_and_release|build_pass):CONFIG(debug, debug|release) { ++ mac:qclucene = $${qclucene}_debug ++ win32:qclucene = $${qclucene}d ++} ++linux-lsb-g++:LIBS_PRIVATE += --lsb-shared-libs=$$qclucene ++LIBS_PRIVATE += -l$$qclucene +Index: qt-everywhere-opensource-src-4.6.3/tools/assistant/tools/qhelpgenerator/qhelpgenerator.pro +=================================================================== +--- qt-everywhere-opensource-src-4.6.3.orig/tools/assistant/tools/qhelpgenerator/qhelpgenerator.pro 2011-01-11 14:56:50.930828002 +0000 ++++ qt-everywhere-opensource-src-4.6.3/tools/assistant/tools/qhelpgenerator/qhelpgenerator.pro 2011-01-11 16:09:50.274828003 +0000 +@@ -12,3 +12,11 @@ + main.cpp + + HEADERS += ../shared/helpgenerator.h ++ ++qclucene = QtCLucene$${QT_LIBINFIX} ++if(!debug_and_release|build_pass):CONFIG(debug, debug|release) { ++ mac:qclucene = $${qclucene}_debug ++ win32:qclucene = $${qclucene}d ++} ++linux-lsb-g++:LIBS_PRIVATE += --lsb-shared-libs=$$qclucene ++LIBS_PRIVATE += -l$$qclucene diff --git a/recipes-qt/qt4/qt-4.6.3.inc b/recipes-qt/qt4/qt-4.6.3.inc index dc928c105c..a41b483180 100644 --- a/recipes-qt/qt4/qt-4.6.3.inc +++ b/recipes-qt/qt4/qt-4.6.3.inc @@ -1,13 +1,9 @@ -DEFAULT_PREFERENCE = "-1" - LICENSE = "LGPLv2.1 | GPLv3" LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \ file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \ file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354" -FILESPATHPKG .= ":qt-${PV}" - -SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \ +SRC_URI = "http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \ file://0001-cross-compile.patch \ file://0002-fix-resinit-declaration.patch \ file://0004-no-qmake.patch \ @@ -23,8 +19,8 @@ SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}. file://mips-relocate.patch \ " -# Set necessary variables in the profile -SRC_URI += "file://qte.sh" +SRC_URI[md5sum] = "5c69f16d452b0bb3d44bc3c10556c072" +SRC_URI[sha256sum] = "f4e0ada8d4d516bbb8600a3ee7d9046c9c79e38cd781df9ffc46d8f16acd1768" S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}" @@ -58,19 +54,3 @@ do_compile() { unset CFLAGS CXXFLAGS oe_runmake ${EXTRA_ENV} } - -do_install_append() { - install -d ${D}${bindir} - for i in rcc uic moc ; do - install -m 0755 ${S}/bin/$i ${D}${bindir}/ - done - - #Append an E to the qtdemo file - if [ -n "${QT_LIBINFIX}" ] ; then - mv ${D}${bindir}/qtdemo ${D}${bindir}/qtdemo${QT_LIBINFIX} - fi -} - -SRC_URI[md5sum] = "5c69f16d452b0bb3d44bc3c10556c072" -SRC_URI[sha256sum] = "f4e0ada8d4d516bbb8600a3ee7d9046c9c79e38cd781df9ffc46d8f16acd1768" - diff --git a/recipes-qt/qt4/qt-4.7.1.inc b/recipes-qt/qt4/qt-4.7.1.inc index 682707ad78..70ee59697c 100644 --- a/recipes-qt/qt4/qt-4.7.1.inc +++ b/recipes-qt/qt4/qt-4.7.1.inc @@ -1,5 +1,3 @@ -DEFAULT_PREFERENCE = "-1" - LICENSE = "LGPLv2.1 | GPLv3" LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \ file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \ @@ -7,17 +5,17 @@ LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \ FILESPATH =. "${FILE_DIRNAME}/qt-${PV}:" -SRC_URI = "\ - ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \ - file://0004-no-qmake.patch \ - file://hack-out-pg2-4.7.0.patch \ - file://0006-freetype-host-includes.patch \ - file://0001-Added-Openembedded-crossarch-option.patch \ - file://g++.conf \ - file://linux.conf \ +SRC_URI = "http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \ + file://0004-no-qmake.patch \ + file://hack-out-pg2-4.7.0.patch \ + file://0006-freetype-host-includes.patch \ + file://0001-Added-Openembedded-crossarch-option.patch \ + file://g++.conf \ + file://linux.conf \ " -# Set necessary variables in the profile -SRC_URI += "file://qte.sh" + +SRC_URI[md5sum] = "6f88d96507c84e9fea5bf3a71ebeb6d7" +SRC_URI[sha256sum] = "8cb5277c41f824cfc6dcee0e95e0bf23a9ad2c8d18d245105137481d092b124a" S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}" @@ -58,19 +56,3 @@ do_compile() { oe_runmake ${EXTRA_ENV} } - -do_install_append() { - install -d ${D}${bindir} - for i in rcc uic moc ; do - install -m 0755 ${S}/bin/$i ${D}${bindir}/ - done - - #Append an E to the qtdemo file - if [ -n "${QT_LIBINFIX}" ] ; then - mv ${D}${bindir}/qtdemo ${D}${bindir}/qtdemo${QT_LIBINFIX} - fi -} - -SRC_URI[md5sum] = "6f88d96507c84e9fea5bf3a71ebeb6d7" -SRC_URI[sha256sum] = "8cb5277c41f824cfc6dcee0e95e0bf23a9ad2c8d18d245105137481d092b124a" - diff --git a/recipes-qt/qt4/qt4-embedded.inc b/recipes-qt/qt4/qt4-embedded.inc index 932f005d20..2ed1819f6f 100644 --- a/recipes-qt/qt4/qt4-embedded.inc +++ b/recipes-qt/qt4/qt4-embedded.inc @@ -1,37 +1,19 @@ -SUMMARY = "Qt is a versatile cross-platform application framework -- this is the embedded version." -DESCRIPTION = "${SUMMARY}" +DESCRIPTION = "Qt is a versatile cross-platform application framework -- this is the embedded version." SECTION = "libs" -LICENSE = "GPL QPL" +LICENSE = "LGPLv2.1 | GPLv3" PRIORITY = "optional" -HOMEPAGE = "http://www.trolltech.com" +HOMEPAGE = "http://qt.nokia.com" DEPENDS += "directfb tslib" -INC_PR = "r25" +INC_PR = "r26" QT_BASE_NAME ?= "qt4-embedded" QT_BASE_LIB ?= "libqt-embedded" -QT_DIR_NAME = "qtopia" -QT_LIBINFIX = "E" - -SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-embedded-linux-opensource-src-${PV}.tar.bz2 \ - file://0001-cross-compile.patch \ - file://0002-fix-resinit-declaration.patch \ - file://0003-no-tools.patch \ - file://0004-no-qmake.patch \ - file://0006-freetype-host-includes.patch \ - file://0007-openssl-host-includes.patch \ - file://0008-qt-lib-infix.patch \ - file://0009-support-2bpp.patch \ - file://fix-config-tests.patch \ - file://g++.conf \ - file://linux.conf \ - " # Set necessary variables in the profile SRC_URI += "file://qte.sh" -S = "${WORKDIR}/qt-embedded-linux-opensource-src-${PV}" - QT_CONFIG_FLAGS += " \ + -embedded ${QT_ARCH} \ -qtlibinfix ${QT_LIBINFIX} \ -plugin-gfx-transformed -plugin-gfx-qvfb -plugin-gfx-vnc -plugin-gfx-directfb \ -plugin-mouse-tslib -qt-mouse-pc -qt-mouse-qvfb -qt-mouse-linuxinput \ @@ -42,8 +24,8 @@ QT_CONFIG_FLAGS += " \ require qt4.inc do_install_append() { - install -d ${D}${sysconfdir}/profile.d/ - install -m 0755 ${WORKDIR}/qte.sh ${D}${sysconfdir}/profile.d/ + install -d ${D}${sysconfdir}/profile.d/ + install -m 0755 ${WORKDIR}/qte.sh ${D}${sysconfdir}/profile.d/ } FILES_${PN} += " ${sysconfdir}/profile.d/qte.sh" diff --git a/recipes-qt/qt4/qt4-embedded_4.6.3.bb b/recipes-qt/qt4/qt4-embedded_4.6.3.bb index 13f3f00edf..dd662aa3d8 100644 --- a/recipes-qt/qt4/qt4-embedded_4.6.3.bb +++ b/recipes-qt/qt4/qt4-embedded_4.6.3.bb @@ -1,7 +1,9 @@ +require qt-${PV}.inc require qt4-embedded.inc +SRC_URI += "file://qthelp-lib-qtclucene.patch" + PR = "${INC_PR}.1" QT_CONFIG_FLAGS_append_armv6 = " -no-neon " -require qt-${PV}.inc diff --git a/recipes-qt/qt4/qt4-embedded_4.7.1.bb b/recipes-qt/qt4/qt4-embedded_4.7.1.bb index 1cd43a664b..c3f6713199 100644 --- a/recipes-qt/qt4/qt4-embedded_4.7.1.bb +++ b/recipes-qt/qt4/qt4-embedded_4.7.1.bb @@ -1,14 +1,10 @@ -DEFAULT_PREFERENCE = "-1" - +require qt-${PV}.inc require qt4-embedded.inc -PR = "${INC_PR}.0" +PR = "${INC_PR}.1" QT_CONFIG_FLAGS_append_armv6 = " -no-neon " -require qt-${PV}.inc - QT_CONFIG_FLAGS += " \ -exceptions \ " - diff --git a/recipes-qt/qt4/qt4-tools-native.inc b/recipes-qt/qt4/qt4-tools-native.inc index fa859af98c..9114e7df6c 100644 --- a/recipes-qt/qt4/qt4-tools-native.inc +++ b/recipes-qt/qt4/qt4-tools-native.inc @@ -1,7 +1,7 @@ DESCRIPTION = "Native tools for Qt/[X11|Mac|Embedded] version 4.x" DEPENDS = "zlib-native dbus-native" SECTION = "libs" -HOMEPAGE = "http://qt.nokia.com +HOMEPAGE = "http://qt.nokia.com" PRIORITY = "optional" LICENSE = "LGPLv2.1 | GPLv3" @@ -9,11 +9,11 @@ LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \ file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \ file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354" -INC_PR = "r10" +INC_PR = "r11" inherit native -SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \ +SRC_URI = "http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \ file://qt-config.patch \ file://g++.conf \ file://linux.conf" @@ -51,11 +51,8 @@ TOBUILD = "\ src/tools/uic \ src/tools/rcc \ src/network \ - src/gui \ - src/tools/uic3 \ tools/linguist/lrelease \ tools/linguist/lupdate \ - tools/qdbus \ " do_compile() { @@ -64,12 +61,10 @@ do_compile() { done } -NATIVE_INSTALL_WORKS = "1" - 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 + for i in moc uic rcc lrelease lupdate; do install -m 0755 bin/${i} ${D}${bindir}/${i}4 done diff --git a/recipes-qt/qt4/qt4-tools-native_4.6.3.bb b/recipes-qt/qt4/qt4-tools-native_4.6.3.bb index be6a72b7c3..dae8cd19e3 100644 --- a/recipes-qt/qt4/qt4-tools-native_4.6.3.bb +++ b/recipes-qt/qt4/qt4-tools-native_4.6.3.bb @@ -1,12 +1,5 @@ -DEFAULT_PREFERENCE = "-1" - -LICENSE = "LGPLv2.1 | GPLv3" -LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \ - file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \ - file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354" - require qt4-tools-native.inc -LICENSE = "LGPLv2.1 GPLv3" + PR = "${INC_PR}.0" EXTRA_OECONF += " -no-fast -silent -no-rpath" diff --git a/recipes-qt/qt4/qt4-tools-native_4.7.1.bb b/recipes-qt/qt4/qt4-tools-native_4.7.1.bb index c808777fbc..e9de510fea 100644 --- a/recipes-qt/qt4/qt4-tools-native_4.7.1.bb +++ b/recipes-qt/qt4/qt4-tools-native_4.7.1.bb @@ -1,16 +1,9 @@ -DEFAULT_PREFERENCE = "-1" - require qt4-tools-native.inc PR = "${INC_PR}.0" # Find the g++.conf/linux.conf in the right directory. FILESPATHPKG =. "qt-${PV}:" -SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \ - file://qt-config.patch \ - file://g++.conf \ - file://linux.conf" -S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}" EXTRA_OECONF += " -no-fast -silent -no-rpath" diff --git a/recipes-qt/qt4/qt4-tools-nativesdk.inc b/recipes-qt/qt4/qt4-tools-nativesdk.inc new file mode 100644 index 0000000000..f273c9fab8 --- /dev/null +++ b/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/recipes-qt/qt4/qt4-tools-nativesdk_4.6.3.bb b/recipes-qt/qt4/qt4-tools-nativesdk_4.6.3.bb new file mode 100644 index 0000000000..d64542b5fe --- /dev/null +++ b/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/recipes-qt/qt4/qt4-tools-nativesdk_4.7.1.bb b/recipes-qt/qt4/qt4-tools-nativesdk_4.7.1.bb new file mode 100644 index 0000000000..091a539271 --- /dev/null +++ b/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" diff --git a/recipes-qt/qt4/qt4-x11-free.inc b/recipes-qt/qt4/qt4-x11-free.inc index 22242e4212..057a129ecf 100644 --- a/recipes-qt/qt4/qt4-x11-free.inc +++ b/recipes-qt/qt4/qt4-x11-free.inc @@ -1,25 +1,13 @@ +require qt4.inc + DESCRIPTION = "Qt is a versatile cross-platform application framework -- this is the X11 version." +HOMEPAGE = "http://qt.nokia.com" SECTION = "x11/libs" PRIORITY = "optional" -HOMEPAGE = "http://www.trolltech.com" DEPENDS += "virtual/libx11 fontconfig libxft libxext libxrender libxrandr libxcursor" INC_PR = "r21" -SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-${PV}.tar.gz \ - file://0001-cross-compile.patch \ - file://0002-fix-resinit-declaration.patch \ - file://0003-no-tools.patch \ - file://0004-no-qmake.patch \ - file://0006-freetype-host-includes.patch \ - file://0007-openssl-host-includes.patch \ - file://0008-qt-lib-infix.patch \ - file://fix-config-tests.patch \ - file://g++.conf \ - file://linux.conf \ - " -S = "${WORKDIR}/qt-x11-opensource-src-${PV}" - QT_GLFLAGS ?= "-no-opengl" QT_GLFLAGS_qemux86 = "-opengl" QT_GLFLAGS_emenlow = "-opengl" @@ -27,10 +15,6 @@ QT_GLFLAGS_atom-pc = "-opengl" QT_CONFIG_FLAGS += "-no-xinerama -no-xkb ${QT_GLFLAGS}" QT_BASE_NAME ?= "qt4" QT_BASE_LIB ?= "libqt" -QT_DIR_NAME = "qt4" -QT_LIBINFIX = "" - -require qt4.inc inherit qt4x11 diff --git a/recipes-qt/qt4/qt4-x11-free_4.6.3.bb b/recipes-qt/qt4/qt4-x11-free_4.6.3.bb index 0a03e9b5a3..8cf5449254 100644 --- a/recipes-qt/qt4/qt4-x11-free_4.6.3.bb +++ b/recipes-qt/qt4/qt4-x11-free_4.6.3.bb @@ -1,9 +1,6 @@ +require qt-${PV}.inc require qt4-x11-free.inc -require qt-4.6.3.inc -PR = "r1" +PR = "${INC_PR}.0" QT_CONFIG_FLAGS += " -xrandr " - -SRC_URI[md5sum] = "5c69f16d452b0bb3d44bc3c10556c072" -SRC_URI[sha256sum] = "f4e0ada8d4d516bbb8600a3ee7d9046c9c79e38cd781df9ffc46d8f16acd1768" diff --git a/recipes-qt/qt4/qt4-x11-free_4.7.1.bb b/recipes-qt/qt4/qt4-x11-free_4.7.1.bb index 79a765ed74..75c6314e7f 100644 --- a/recipes-qt/qt4/qt4-x11-free_4.7.1.bb +++ b/recipes-qt/qt4/qt4-x11-free_4.7.1.bb @@ -1,13 +1,10 @@ -DEFAULT_PREFERENCE = "-1" - require qt4-x11-free.inc +require qt-${PV}.inc -PR = "${INC_PR}.0" +PR = "${INC_PR}.1" QT_CONFIG_FLAGS_append_armv6 = " -no-neon " -require qt-${PV}.inc - QT_CONFIG_FLAGS += " \ -no-embedded \ -xrandr \ diff --git a/recipes-qt/qt4/qt4.inc b/recipes-qt/qt4/qt4.inc index ac1fc83b12..32dee4c205 100644 --- a/recipes-qt/qt4/qt4.inc +++ b/recipes-qt/qt4/qt4.inc @@ -1,16 +1,20 @@ inherit qmake_base -DEPENDS += "qt4-tools-native freetype jpeg libpng zlib dbus openssl glib-2.0 gstreamer gst-plugins-base mysql5 postgresql sqlite sqlite3" +DEPENDS += "qt4-tools-native freetype jpeg libpng zlib dbus openssl glib-2.0 gstreamer gst-plugins-base sqlite3" require qt4_arch.inc QT_ARCH := "${@qt_arch(d)}" QT_ENDIAN = "${@qt_endian(d)}" -QT_CONFIG_FLAGS += "-release -no-cups -no-accessibility -reduce-relocations \ - -shared -no-nas-sound -no-sm -no-nis \ +QT_DISTRO_FLAGS ?= "-no-accessibility -no-sm" +QT_DISTRO_FLAGS_poky-lsb = "-sm" + +QT_CONFIG_FLAGS += "-release -no-cups -reduce-relocations \ + -shared -no-nas-sound -no-nis \ -qt-gif -system-libjpeg -system-libpng -system-zlib \ - -no-sql-ibase -plugin-sql-mysql -no-sql-odbc -plugin-sql-psql -plugin-sql-sqlite -plugin-sql-sqlite2 \ - -no-pch -qdbus -stl -glib -phonon -webkit" + -no-sql-ibase -no-sql-mysql -no-sql-psql -no-sql-odbc -plugin-sql-sqlite \ + -no-pch -qdbus -stl -glib -phonon -webkit \ + ${QT_DISTRO_FLAGS} " EXTRA_OEMAKE = "-e" @@ -109,6 +113,16 @@ RRECOMMENDS_${QT_BASE_NAME}-fonts = " \ ${QT_BASE_NAME}-fonts-pfa \ ${QT_BASE_NAME}-fonts-pfb \ ${QT_BASE_NAME}-fonts-qpf" +RRECOMMENDS_${QT_BASE_NAME}-demos += " \ + ${QT_BASE_NAME}-fonts \ + ${QT_BASE_NAME}-examples \ + ${QT_BASE_NAME}-plugin-sqldriver-sqlite \ + ${QT_BASE_NAME}-plugin-imageformat-jpeg \ + ${QT_BASE_NAME}-assistant \ + ${PN}-doc" +RRECOMMENDS_${QT_BASE_NAME}-examples += " \ + ${QT_BASE_NAME}-plugin-sqldriver-sqlite \ + ${QT_BASE_NAME}-plugin-imageformat-jpeg" FILES_${QT_BASE_NAME}-tools = "${bindir}/uic* ${bindir}/moc ${bindir}/rcc ${bindir}/qttracereplay ${bindir}/qdoc*" FILES_${QT_BASE_NAME}-tools-dbg = "${bindir}/.debug/uic* ${bindir}/.debug/moc ${bindir}/.debug/rcc ${bindir}/.debug/qttracereplay ${bindir}/.debug/qdoc*" @@ -187,22 +201,11 @@ do_configure() { -demosdir ${bindir}/${QT_DIR_NAME}/demos \ -platform ${TARGET_OS}-oe-g++ \ -xplatform ${TARGET_OS}-oe-g++ \ - -embedded ${QT_ARCH} ${QT_ENDIAN} \ + ${QT_ENDIAN} \ -crossarch ${QT_ARCH} \ ${QT_CONFIG_FLAGS} -no-fast \ -L${STAGING_LIBDIR} -I${STAGING_INCDIR} \ - -I${STAGING_INCDIR}/freetype2 \ - -I${STAGING_INCDIR}/mysql \ - -I${STAGING_INCDIR}/postgresql -} - -do_compile() { - unset CFLAGS CXXFLAGS - install -m 0755 ${STAGING_BINDIR_NATIVE}/rcc4 ${S}/bin/rcc - install -m 0755 ${STAGING_BINDIR_NATIVE}/moc4 ${S}/bin/moc - install -m 0755 ${STAGING_BINDIR_NATIVE}/uic4 ${S}/bin/uic - - oe_runmake ${EXTRA_ENV} + -I${STAGING_INCDIR}/freetype2 } python populate_packages_prepend() { @@ -260,7 +263,7 @@ python populate_packages_prepend() { do_install() { oe_runmake install INSTALL_ROOT=${D} - + # These are host binaries, we should only use them in staging rm -rf ${D}/${bindir}/qmake @@ -284,18 +287,26 @@ do_install() { -e s#"uic_location=.*$"#"uic_location=${bindir}/uic4"# \ ${D}${libdir}/pkgconfig/*.pc for name in ${QT_LIB_NAMES}; do - sed -i -e /Requires/s#"${name}"#"${name}${QT_LIBINFIX}"#g ${D}${libdir}/pkgconfig/*.pc + sed -i -e /Requires/s#"${name}"#"${name}${QT_LIBINFIX}"#g ${D}${libdir}/pkgconfig/*.pc done - # QT abuses $includedir to point to its headers, which breaks pkgconfig sysroot, so manually fix it up here: - for pc in ${D}${libdir}/pkgconfig/*.pc ; do - sed -i -e "s:prefix}include/${QT_BASE_NAME}/$(basename $pc .pc):prefix}/include:" \ - -e "s,Cflags: ,Cflags: -IP{includedir}/${QT_BASE_NAME}/$(basename $pc .pc) ," \ - -e 's:IP{:I${:g' $pc - done + # QT abuses $includedir to point to its headers, which breaks pkgconfig sysroot, so manually fix it up here: + for pc in ${D}${libdir}/pkgconfig/*.pc ; do + sed -i -e "s:prefix}include/${QT_BASE_NAME}/$(basename $pc .pc):prefix}/include:" \ + -e "s,Cflags: ,Cflags: -IP{includedir}/${QT_BASE_NAME}/$(basename $pc .pc) ," \ + -e 's:IP{:I${:g' $pc + done install -d ${D}/${libdir}/fonts touch ${D}/${libdir}/fonts/fontdir -} + install -d ${D}${bindir} + for i in rcc uic moc ; do + install -m 0755 ${S}/bin/$i ${D}${bindir}/ + done + #Append an E to the qtdemo file + if [ -n "${QT_LIBINFIX}" ] ; then + mv ${D}${bindir}/qtdemo ${D}${bindir}/qtdemo${QT_LIBINFIX} + fi +} diff --git a/recipes-qt/qt4/qt4_arch.inc b/recipes-qt/qt4/qt4_arch.inc index e8c8fabe68..7f4be63bca 100644 --- a/recipes-qt/qt4/qt4_arch.inc +++ b/recipes-qt/qt4/qt4_arch.inc @@ -17,9 +17,9 @@ def qt_arch(d): def qt_endian(d): import bb - if bb.data.getVar('SITEINFO_ENDIANNESS', d, True) == "le": + if bb.data.getVar('SITEINFO_ENDIANESS', d, True) == "le": return "-little-endian" - elif bb.data.getVar('SITEINFO_ENDIANNESS', d, True) == "be": + elif bb.data.getVar('SITEINFO_ENDIANESS', d, True) == "be": return "-big-endian" else: assert False |