summaryrefslogtreecommitdiffstats
path: root/meta/recipes-qt
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2011-01-21 15:38:29 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-02-01 15:57:26 (GMT)
commitc5998e6def9b320eb50247765b096743f6efbfe8 (patch)
treefde827d88e0afb56b10a43ace0a24c7de1d40b26 /meta/recipes-qt
parent70ce04977c9d752430f9a01a01d6db5bf501ba42 (diff)
downloadpoky-c5998e6def9b320eb50247765b096743f6efbfe8.tar.gz
qt4: Bring in improvements from meta-openembedded
Differences from meta-openembedded version: * SRC_URI and S now come from qt-${PV}.inc since these are version specific * Source checksums are also now in qt-${PV}.inc * Remove do_compile as this is handled in qt-${PV}.inc * Move contents of do_install_append from qt-${PV}.inc to do_install in qt4.inc as this is the same for 4.6.3 and 4.7.1 and will get in the way of do_install_append in qt-embedded.inc. * Don't enable PostgreSQL, MySQL or SQLite 2.x plugins as we don't currently have recipes for these DBMSs in Poky. These can be re-enabled easily when or if we do. * Use INC_PR in qt4-x11-free_4.6.3.bb * Don't always specify -embedded config option in qt4.inc * Don't add qte.sh to SRC_URI in qt-4.6.3.inc (this is embedded-specific) Differences from what we have currently in Poky (plus the above): * Set DESCRIPTION based on embedded/X11 * Move out arch-specific settings to qt4-arch.inc * Add qt4x11.bbclass which can be inherited by application recipes to select the X11 version (this makes more sense once the embedded version is added). * Update HOMEPAGE Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Diffstat (limited to 'meta/recipes-qt')
-rw-r--r--meta/recipes-qt/qt4/qt-4.6.3.inc18
-rw-r--r--meta/recipes-qt/qt4/qt4-x11-free.inc9
-rw-r--r--meta/recipes-qt/qt4/qt4-x11-free_4.6.3.bb7
-rw-r--r--meta/recipes-qt/qt4/qt4.inc66
-rw-r--r--meta/recipes-qt/qt4/qt4_arch.inc25
5 files changed, 69 insertions, 56 deletions
diff --git a/meta/recipes-qt/qt4/qt-4.6.3.inc b/meta/recipes-qt/qt4/qt-4.6.3.inc
index 155af66..ec2c920 100644
--- a/meta/recipes-qt/qt4/qt-4.6.3.inc
+++ b/meta/recipes-qt/qt4/qt-4.6.3.inc
@@ -19,6 +19,9 @@ SRC_URI = "http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-${PV}.
19 file://mips-relocate.patch \ 19 file://mips-relocate.patch \
20 " 20 "
21 21
22SRC_URI[md5sum] = "5c69f16d452b0bb3d44bc3c10556c072"
23SRC_URI[sha256sum] = "f4e0ada8d4d516bbb8600a3ee7d9046c9c79e38cd781df9ffc46d8f16acd1768"
24
22S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}" 25S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
23 26
24do_configure_prepend() { 27do_configure_prepend() {
@@ -40,7 +43,7 @@ do_configure_append() {
40} 43}
41 44
42QT_GLFLAGS ?= "" 45QT_GLFLAGS ?= ""
43QT_CONFIG_FLAGS += " -no-rpath -qt3support -silent ${QT_GLFLAGS}" 46QT_CONFIG_FLAGS += " -no-rpath -qt3support -reduce-relocations -silent ${QT_GLFLAGS}"
44 47
45do_compile() { 48do_compile() {
46 # Fixup missing wsegl header in some SGX SDKs 49 # Fixup missing wsegl header in some SGX SDKs
@@ -51,16 +54,3 @@ do_compile() {
51 unset CFLAGS CXXFLAGS 54 unset CFLAGS CXXFLAGS
52 oe_runmake ${EXTRA_ENV} 55 oe_runmake ${EXTRA_ENV}
53} 56}
54
55do_install_append() {
56 install -d ${D}${bindir}
57 for i in rcc uic moc ; do
58 install -m 0755 ${S}/bin/$i ${D}${bindir}/
59 done
60
61 #Append an E to the qtdemo file
62 if [ -n "${QT_LIBINFIX}" ] ; then
63 mv ${D}${bindir}/qtdemo ${D}${bindir}/qtdemo${QT_LIBINFIX}
64 fi
65}
66
diff --git a/meta/recipes-qt/qt4/qt4-x11-free.inc b/meta/recipes-qt/qt4/qt4-x11-free.inc
index 22eef7c..057a129 100644
--- a/meta/recipes-qt/qt4/qt4-x11-free.inc
+++ b/meta/recipes-qt/qt4/qt4-x11-free.inc
@@ -1,9 +1,13 @@
1require qt4.inc 1require qt4.inc
2 2
3DESCRIPTION = "Qt is a versatile cross-platform application framework -- this is the X11 version."
4HOMEPAGE = "http://qt.nokia.com"
3SECTION = "x11/libs" 5SECTION = "x11/libs"
4PRIORITY = "optional" 6PRIORITY = "optional"
5DEPENDS += "virtual/libx11 fontconfig libxft libxext libxrender libxrandr libxcursor" 7DEPENDS += "virtual/libx11 fontconfig libxft libxext libxrender libxrandr libxcursor"
6 8
9INC_PR = "r21"
10
7QT_GLFLAGS ?= "-no-opengl" 11QT_GLFLAGS ?= "-no-opengl"
8QT_GLFLAGS_qemux86 = "-opengl" 12QT_GLFLAGS_qemux86 = "-opengl"
9QT_GLFLAGS_emenlow = "-opengl" 13QT_GLFLAGS_emenlow = "-opengl"
@@ -11,7 +15,6 @@ QT_GLFLAGS_atom-pc = "-opengl"
11QT_CONFIG_FLAGS += "-no-xinerama -no-xkb ${QT_GLFLAGS}" 15QT_CONFIG_FLAGS += "-no-xinerama -no-xkb ${QT_GLFLAGS}"
12QT_BASE_NAME ?= "qt4" 16QT_BASE_NAME ?= "qt4"
13QT_BASE_LIB ?= "libqt" 17QT_BASE_LIB ?= "libqt"
14QT_DIR_NAME = "qt4"
15QT_LIBINFIX = ""
16 18
17inherit qmake2 19inherit qt4x11
20
diff --git a/meta/recipes-qt/qt4/qt4-x11-free_4.6.3.bb b/meta/recipes-qt/qt4/qt4-x11-free_4.6.3.bb
index f13b947..8cf5449 100644
--- a/meta/recipes-qt/qt4/qt4-x11-free_4.6.3.bb
+++ b/meta/recipes-qt/qt4/qt4-x11-free_4.6.3.bb
@@ -1,9 +1,6 @@
1require qt-${PV}.inc
1require qt4-x11-free.inc 2require qt4-x11-free.inc
2require qt-4.6.3.inc
3 3
4PR = "r2" 4PR = "${INC_PR}.0"
5 5
6QT_CONFIG_FLAGS += " -xrandr " 6QT_CONFIG_FLAGS += " -xrandr "
7
8SRC_URI[md5sum] = "5c69f16d452b0bb3d44bc3c10556c072"
9SRC_URI[sha256sum] = "f4e0ada8d4d516bbb8600a3ee7d9046c9c79e38cd781df9ffc46d8f16acd1768"
diff --git a/meta/recipes-qt/qt4/qt4.inc b/meta/recipes-qt/qt4/qt4.inc
index 3382445..4dcf7a3 100644
--- a/meta/recipes-qt/qt4/qt4.inc
+++ b/meta/recipes-qt/qt4/qt4.inc
@@ -1,9 +1,10 @@
1DESCRIPTION = "Qt is a comprehensive cross-platform C++ application framework" 1inherit qmake_base
2HOMEPAGE = "http://qt.nokia.com"
3 2
4DEPENDS += "qt4-tools-native freetype jpeg libpng zlib dbus openssl glib-2.0 gstreamer gst-plugins-base sqlite3" 3DEPENDS += "qt4-tools-native freetype jpeg libpng zlib dbus openssl glib-2.0 gstreamer gst-plugins-base sqlite3"
5 4
6inherit qmake_base 5require qt4_arch.inc
6QT_ARCH := "${@qt_arch(d)}"
7QT_ENDIAN = "${@qt_endian(d)}"
7 8
8QT_DISTRO_FLAGS ?= "-no-accessibility -no-sm" 9QT_DISTRO_FLAGS ?= "-no-accessibility -no-sm"
9QT_DISTRO_FLAGS_poky-lsb = "-sm" 10QT_DISTRO_FLAGS_poky-lsb = "-sm"
@@ -12,7 +13,7 @@ QT_CONFIG_FLAGS += "-release -no-cups -reduce-relocations \
12 -shared -no-nas-sound -no-nis \ 13 -shared -no-nas-sound -no-nis \
13 -qt-gif -system-libjpeg -system-libpng -system-zlib \ 14 -qt-gif -system-libjpeg -system-libpng -system-zlib \
14 -no-sql-ibase -no-sql-mysql -no-sql-psql -no-sql-odbc -plugin-sql-sqlite \ 15 -no-sql-ibase -no-sql-mysql -no-sql-psql -no-sql-odbc -plugin-sql-sqlite \
15 -no-pch -dbus -stl -glib -phonon -webkit \ 16 -no-pch -qdbus -stl -glib -phonon -webkit \
16 ${QT_DISTRO_FLAGS} " 17 ${QT_DISTRO_FLAGS} "
17 18
18EXTRA_OEMAKE = "-e" 19EXTRA_OEMAKE = "-e"
@@ -26,7 +27,7 @@ EXTRA_ENV = 'QMAKE="${STAGING_BINDIR_NATIVE}/qmake2 -after \
26export QT_CONF_PATH="${WORKDIR}/qt.conf" 27export QT_CONF_PATH="${WORKDIR}/qt.conf"
27 28
28# Library packages 29# Library packages
29QT_LIB_NAMES = "Qt3Support QtAssistantClient QtCLucene QtCore QtDBus QtDesigner QtDesignerComponents QtGui QtHelp QtNetwork QtOpenGL QtScript QtScriptTools QtSql QtSvg QtTest QtUiTools QtWebKit QtXml QtXmlPatterns phonon QtMultimedia QtOpenVG QtMediaServices" 30QT_LIB_NAMES = "Qt3Support QtAssistantClient QtCLucene QtCore QtDBus QtDesigner QtDesignerComponents QtGui QtHelp QtNetwork QtOpenGL QtScript QtScriptTools QtSql QtSvg QtTest QtUiTools QtWebKit QtXml QtXmlPatterns phonon QtMultimedia QtOpenVG QtMediaServices QtDeclarative"
30 31
31QT_EXTRA_LIBS = "pvrQWSWSEGL" 32QT_EXTRA_LIBS = "pvrQWSWSEGL"
32 33
@@ -37,7 +38,7 @@ python __anonymous () {
37 dev_packages = [] 38 dev_packages = []
38 dbg_packages = [] 39 dbg_packages = []
39 for name in bb.data.getVar("QT_LIB_NAMES", d, 1).split(): 40 for name in bb.data.getVar("QT_LIB_NAMES", d, 1).split():
40 pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "") + "4" 41 pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "").replace("_", "-") + "4"
41 # NOTE: the headers for QtAssistantClient are different 42 # NOTE: the headers for QtAssistantClient are different
42 incname = name.replace("QtAssistantClient", "QtAssistant") 43 incname = name.replace("QtAssistantClient", "QtAssistant")
43 bb.data.setVar("FILES_%s" % pkg, "${libdir}/lib%(name)s${QT_LIBINFIX}.so.*" % locals(), d) 44 bb.data.setVar("FILES_%s" % pkg, "${libdir}/lib%(name)s${QT_LIBINFIX}.so.*" % locals(), d)
@@ -55,7 +56,7 @@ python __anonymous () {
55 dbg_packages.append("%s-dbg" % name) 56 dbg_packages.append("%s-dbg" % name)
56 57
57 for name in bb.data.getVar("QT_EXTRA_LIBS", d, 1).split(): 58 for name in bb.data.getVar("QT_EXTRA_LIBS", d, 1).split():
58 pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "") + "4" 59 pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "").replace("_", "-") + "4"
59 bb.data.setVar("FILES_%s" % pkg, "${libdir}/lib%(name)s.so.*" % locals(), d) 60 bb.data.setVar("FILES_%s" % pkg, "${libdir}/lib%(name)s.so.*" % locals(), d)
60 bb.data.setVar("FILES_%s-dev" % pkg, """${libdir}/lib%(name)s.prl 61 bb.data.setVar("FILES_%s-dev" % pkg, """${libdir}/lib%(name)s.prl
61 ${libdir}/lib%(name)s.a 62 ${libdir}/lib%(name)s.a
@@ -91,6 +92,8 @@ OTHER_PACKAGES = "\
91 ${QT_BASE_NAME}-makeqpf \ 92 ${QT_BASE_NAME}-makeqpf \
92 ${QT_BASE_NAME}-mkspecs \ 93 ${QT_BASE_NAME}-mkspecs \
93 ${QT_BASE_NAME}-pixeltool \ 94 ${QT_BASE_NAME}-pixeltool \
95 ${QT_BASE_NAME}-qmlviewer \
96 ${QT_BASE_NAME}-xmlpatterns \
94 ${QT_BASE_NAME}-qt3to4" 97 ${QT_BASE_NAME}-qt3to4"
95 98
96PACKAGES += "${LIB_PACKAGES} ${DEV_PACKAGES} ${DBG_PACKAGES} ${OTHER_PACKAGES}" 99PACKAGES += "${LIB_PACKAGES} ${DEV_PACKAGES} ${DBG_PACKAGES} ${OTHER_PACKAGES}"
@@ -112,6 +115,7 @@ RRECOMMENDS_${QT_BASE_NAME}-fonts = " \
112 ${QT_BASE_NAME}-fonts-qpf" 115 ${QT_BASE_NAME}-fonts-qpf"
113 116
114FILES_${QT_BASE_NAME}-tools = "${bindir}/uic* ${bindir}/moc ${bindir}/rcc ${bindir}/qttracereplay ${bindir}/qdoc*" 117FILES_${QT_BASE_NAME}-tools = "${bindir}/uic* ${bindir}/moc ${bindir}/rcc ${bindir}/qttracereplay ${bindir}/qdoc*"
118FILES_${QT_BASE_NAME}-tools-dbg = "${bindir}/.debug/uic* ${bindir}/.debug/moc ${bindir}/.debug/rcc ${bindir}/.debug/qttracereplay ${bindir}/.debug/qdoc*"
115FILES_${QT_BASE_NAME}-assistant = "${bindir}/*assistant* ${bindir}/qcollectiongenerator ${bindir}/qhelpconverter ${bindir}/qhelpgenerator" 119FILES_${QT_BASE_NAME}-assistant = "${bindir}/*assistant* ${bindir}/qcollectiongenerator ${bindir}/qhelpconverter ${bindir}/qhelpgenerator"
116FILES_${QT_BASE_NAME}-assistant-dbg = "${bindir}/.debug/*assistant* ${bindir}/.debug/qcollectiongenerator ${bindir}/.debug/qhelpconverter ${bindir}/.debug/qhelpgenerator" 120FILES_${QT_BASE_NAME}-assistant-dbg = "${bindir}/.debug/*assistant* ${bindir}/.debug/qcollectiongenerator ${bindir}/.debug/qhelpconverter ${bindir}/.debug/qhelpgenerator"
117FILES_${QT_BASE_NAME}-common = "${bindir}/qtconfig" 121FILES_${QT_BASE_NAME}-common = "${bindir}/qtconfig"
@@ -123,7 +127,7 @@ FILES_${QT_BASE_NAME}-demos-dbg = "${bindir}/.debug/qtdemo* ${bindir}
123FILES_${QT_BASE_NAME}-designer = "${bindir}/*designer*" 127FILES_${QT_BASE_NAME}-designer = "${bindir}/*designer*"
124FILES_${QT_BASE_NAME}-designer-dbg = "${bindir}/.debug/*designer*" 128FILES_${QT_BASE_NAME}-designer-dbg = "${bindir}/.debug/*designer*"
125FILES_${QT_BASE_NAME}-examples = "${bindir}/${QT_DIR_NAME}/examples/*" 129FILES_${QT_BASE_NAME}-examples = "${bindir}/${QT_DIR_NAME}/examples/*"
126FILES_${QT_BASE_NAME}-examples-dbg = "${bindir}/${QT_DIR_NAME}/examples/.debug ${bindir}/${QT_DIR_NAME}/examples/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/*/*/.debug" 130FILES_${QT_BASE_NAME}-examples-dbg = "${bindir}/${QT_DIR_NAME}/examples/.debug ${bindir}/${QT_DIR_NAME}/examples/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/declarative/*/*/*/*/*/.debug/* ${bindir}/${QT_DIR_NAME}/examples/declarative/*/*/*/*/.debug/*"
127FILES_${QT_BASE_NAME}-fonts-ttf-vera = "${libdir}/fonts/Vera*.ttf" 131FILES_${QT_BASE_NAME}-fonts-ttf-vera = "${libdir}/fonts/Vera*.ttf"
128FILES_${QT_BASE_NAME}-fonts-ttf-dejavu = "${libdir}/fonts/DejaVu*.ttf" 132FILES_${QT_BASE_NAME}-fonts-ttf-dejavu = "${libdir}/fonts/DejaVu*.ttf"
129FILES_${QT_BASE_NAME}-fonts-pfa = "${libdir}/fonts/*.pfa" 133FILES_${QT_BASE_NAME}-fonts-pfa = "${libdir}/fonts/*.pfa"
@@ -135,28 +139,19 @@ FILES_${QT_BASE_NAME}-pixeltool = "${bindir}/pixeltool"
135FILES_${QT_BASE_NAME}-pixeltool-dbg = "${bindir}/.debug/pixeltool" 139FILES_${QT_BASE_NAME}-pixeltool-dbg = "${bindir}/.debug/pixeltool"
136FILES_${QT_BASE_NAME}-qt3to4 = "${bindir}/qt3to4 ${datadir}/${QT_DIR_NAME}/q3porting.xml" 140FILES_${QT_BASE_NAME}-qt3to4 = "${bindir}/qt3to4 ${datadir}/${QT_DIR_NAME}/q3porting.xml"
137FILES_${QT_BASE_NAME}-qt3to4-dbg = "${bindir}/.debug/qt3to4" 141FILES_${QT_BASE_NAME}-qt3to4-dbg = "${bindir}/.debug/qt3to4"
142FILES_${QT_BASE_NAME}-qmlviewer = "${bindir}/qmlviewer"
143FILES_${QT_BASE_NAME}-qmlviewer-dbg = "${bindir}/.debug/qmlviewer"
138FILES_${QT_BASE_NAME}-makeqpf = "${bindir}/makeqpf" 144FILES_${QT_BASE_NAME}-makeqpf = "${bindir}/makeqpf"
139FILES_${QT_BASE_NAME}-makeqpf-dbg = "${bindir}/.debug/makeqpf" 145FILES_${QT_BASE_NAME}-makeqpf-dbg = "${bindir}/.debug/makeqpf"
140FILES_${QT_BASE_NAME}-mkspecs = "${datadir}/${QT_DIR_NAME}/mkspecs/*" 146FILES_${QT_BASE_NAME}-mkspecs = "${datadir}/${QT_DIR_NAME}/mkspecs/*"
147FILES_${QT_BASE_NAME}-xmlpatterns = "${bindir}/xmlpatterns*"
148FILES_${QT_BASE_NAME}-xmlpatterns-dbg = "${bindir}/.debug/xmlpatterns*"
141 149
142ARM_INSTRUCTION_SET = "arm"
143
144set_arch() {
145 case ${TARGET_ARCH} in
146 arm*) QT_ARCH=arm ;;
147 i*86*) QT_ARCH=i386 ;;
148 mips*) QT_ARCH=mips ;;
149 powerpc*) QT_ARCH=powerpc ;;
150 x86_64*) QT_ARCH=x86_64 ;;
151 esac
152}
153 150
154do_configure() { 151do_configure() {
155 unset QMAKESPEC 152 unset QMAKESPEC
156 unset QTDIR 153 unset QTDIR
157 154
158 set_arch
159
160 if [ ! -e bin/qmake ]; then 155 if [ ! -e bin/qmake ]; then
161 ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake 156 ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake
162 fi 157 fi
@@ -196,30 +191,22 @@ do_configure() {
196 -demosdir ${bindir}/${QT_DIR_NAME}/demos \ 191 -demosdir ${bindir}/${QT_DIR_NAME}/demos \
197 -platform ${TARGET_OS}-oe-g++ \ 192 -platform ${TARGET_OS}-oe-g++ \
198 -xplatform ${TARGET_OS}-oe-g++ \ 193 -xplatform ${TARGET_OS}-oe-g++ \
194 ${QT_ENDIAN} \
199 -crossarch ${QT_ARCH} \ 195 -crossarch ${QT_ARCH} \
200 ${QT_CONFIG_FLAGS} -no-fast \ 196 ${QT_CONFIG_FLAGS} -no-fast \
201 -L${STAGING_LIBDIR} -I${STAGING_INCDIR} \ 197 -L${STAGING_LIBDIR} -I${STAGING_INCDIR} \
202 -I${STAGING_INCDIR}/freetype2 198 -I${STAGING_INCDIR}/freetype2
203} 199}
204 200
205do_compile() {
206 unset CFLAGS CXXFLAGS
207 install -m 0755 ${STAGING_BINDIR_NATIVE}/rcc4 ${S}/bin/rcc
208 install -m 0755 ${STAGING_BINDIR_NATIVE}/moc4 ${S}/bin/moc
209 install -m 0755 ${STAGING_BINDIR_NATIVE}/uic4 ${S}/bin/uic
210
211 oe_runmake ${EXTRA_ENV}
212}
213
214python populate_packages_prepend() { 201python populate_packages_prepend() {
215 translation_dir = bb.data.expand('${datadir}/${QT_DIR_NAME}/translations/', d) 202 translation_dir = bb.data.expand('${datadir}/${QT_DIR_NAME}/translations/', d)
216 translation_name = bb.data.expand('${QT_BASE_NAME}-translation-%s', d) 203 translation_name = bb.data.expand('${QT_BASE_NAME}-translation-%s', d)
217 do_split_packages(d, translation_dir, '^(assistant|designer|linguist|qt|qtconfig|qvfb)_(.*)\.qm$', translation_name, '${PN} translation for %s', extra_depends='' ) 204 do_split_packages(d, translation_dir, '^(assistant|designer|linguist|qt|qtconfig|qvfb)_(.*)\.qm$', translation_name, '${PN} translation for %s', extra_depends='' )
218 205
219 phrasebook_dir = bb.data.expand('${datadir}/${QT_DIR_NAME}/phrasebooks/', d) 206 phrasebook_dir = bb.data.expand('${datadir}/${QT_DIR_NAME}/phrasebooks/', d)
220 phrasebook_name = bb.data.expand('${QT_BASE_NAME}-phrasebook-%s', d) 207 phrasebook_name = bb.data.expand('${QT_BASE_NAME}-phrasebook-%s', d)
221 do_split_packages(d, phrasebook_dir, '^(.*)\.qph$', phrasebook_name, '${PN} phrasebook for %s', extra_depends='' ) 208 do_split_packages(d, phrasebook_dir, '^(.*)\.qph$', phrasebook_name, '${PN} phrasebook for %s', extra_depends='' )
222 209
223 # Package all the plugins and their -dbg version and create a meta package 210 # Package all the plugins and their -dbg version and create a meta package
224 import os 211 import os
225 def qtopia_split(path, name, glob): 212 def qtopia_split(path, name, glob):
@@ -231,7 +218,7 @@ python populate_packages_prepend() {
231 if not os.path.exists("%s%s" % (bb.data.expand('${D}',d), plugin_dir)): 218 if not os.path.exists("%s%s" % (bb.data.expand('${D}',d), plugin_dir)):
232 bb.note("The path does not exist:", bb.data.expand('${D}', d), plugin_dir) 219 bb.note("The path does not exist:", bb.data.expand('${D}', d), plugin_dir)
233 return 220 return
234 221
235 plugin_name = bb.data.expand('${QT_BASE_NAME}-plugin-%s-%%s' % name, d) 222 plugin_name = bb.data.expand('${QT_BASE_NAME}-plugin-%s-%%s' % name, d)
236 dev_packages = [] 223 dev_packages = []
237 dev_hook = lambda file,pkg,b,c,d:dev_packages.append((file,pkg)) 224 dev_hook = lambda file,pkg,b,c,d:dev_packages.append((file,pkg))
@@ -261,6 +248,7 @@ python populate_packages_prepend() {
261 qtopia_split('script', 'script', '^libqtscript(.*)\.so$') 248 qtopia_split('script', 'script', '^libqtscript(.*)\.so$')
262 qtopia_split('styles', 'style', '^libq(.*)\.so$') 249 qtopia_split('styles', 'style', '^libq(.*)\.so$')
263 qtopia_split('phonon_backend','phonon-backend','^libphonon_(.*)\.so$') 250 qtopia_split('phonon_backend','phonon-backend','^libphonon_(.*)\.so$')
251 qtopia_split('bearer', 'bearer', '^libq(.*)bearer\.so$')
264} 252}
265 253
266do_install() { 254do_install() {
@@ -289,7 +277,7 @@ do_install() {
289 -e s#"uic_location=.*$"#"uic_location=${bindir}/uic4"# \ 277 -e s#"uic_location=.*$"#"uic_location=${bindir}/uic4"# \
290 ${D}${libdir}/pkgconfig/*.pc 278 ${D}${libdir}/pkgconfig/*.pc
291 for name in ${QT_LIB_NAMES}; do 279 for name in ${QT_LIB_NAMES}; do
292 sed -i -e /Requires/s#"${name}"#"${name}${QT_LIBINFIX}"#g ${D}${libdir}/pkgconfig/*.pc 280 sed -i -e /Requires/s#"${name}"#"${name}${QT_LIBINFIX}"#g ${D}${libdir}/pkgconfig/*.pc
293 done 281 done
294 282
295 # QT abuses $includedir to point to its headers, which breaks pkgconfig sysroot, so manually fix it up here: 283 # QT abuses $includedir to point to its headers, which breaks pkgconfig sysroot, so manually fix it up here:
@@ -301,4 +289,14 @@ do_install() {
301 289
302 install -d ${D}/${libdir}/fonts 290 install -d ${D}/${libdir}/fonts
303 touch ${D}/${libdir}/fonts/fontdir 291 touch ${D}/${libdir}/fonts/fontdir
292
293 install -d ${D}${bindir}
294 for i in rcc uic moc ; do
295 install -m 0755 ${S}/bin/$i ${D}${bindir}/
296 done
297
298 #Append an E to the qtdemo file
299 if [ -n "${QT_LIBINFIX}" ] ; then
300 mv ${D}${bindir}/qtdemo ${D}${bindir}/qtdemo${QT_LIBINFIX}
301 fi
304} 302}
diff --git a/meta/recipes-qt/qt4/qt4_arch.inc b/meta/recipes-qt/qt4/qt4_arch.inc
new file mode 100644
index 0000000..7f4be63
--- /dev/null
+++ b/meta/recipes-qt/qt4/qt4_arch.inc
@@ -0,0 +1,25 @@
1inherit siteinfo
2
3ARM_INSTRUCTION_SET = "arm"
4
5def qt_arch(d):
6 import bb, re
7 arch = bb.data.getVar('TARGET_ARCH', d, 1)
8 if re.match("^i.86$", arch):
9 arch = "i386"
10 elif re.match("^arm.*", arch):
11 arch = "arm"
12 elif arch == "x86_64":
13 arch = "x86"
14 elif arch == "mipsel":
15 arch = "mips"
16 return arch
17
18def qt_endian(d):
19 import bb
20 if bb.data.getVar('SITEINFO_ENDIANESS', d, True) == "le":
21 return "-little-endian"
22 elif bb.data.getVar('SITEINFO_ENDIANESS', d, True) == "be":
23 return "-big-endian"
24 else:
25 assert False