[oe-commits] Koen Kooi : qt 4.6.0: make it build, add GLES versions

git version control git at git.openembedded.org
Thu Dec 10 18:40:42 UTC 2009


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 37f8d271e8e4e8ce72378b048a27a5c4fce32ffe
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=37f8d271e8e4e8ce72378b048a27a5c4fce32ffe

Author: Koen Kooi <koen at openembedded.org>
Date:   Thu Dec 10 19:37:29 2009 +0100

qt 4.6.0: make it build, add GLES versions

* recipes still need lots of cleanup and fixes, help welcome

---

 recipes/qt4/qt-4.6.0.inc                           |    5 ++
 .../0010-no-simpledecoration-example.patch         |   12 ++--
 recipes/qt4/qt4-embedded-4.6.0/linux.conf          |    2 +-
 recipes/qt4/qt4-embedded-gles/linux.conf           |   63 ++++++++++++++++++++
 recipes/qt4/qt4-embedded-gles_4.6.0.bb             |   13 ++++
 .../0010-no-simpledecoration-example.patch         |   11 ++++
 recipes/qt4/qt4-x11-free-4.6.0/linux.conf          |    2 +-
 recipes/qt4/qt4-x11-free-gles/linux.conf           |   60 +++++++++++++++++++
 recipes/qt4/qt4-x11-free-gles_4.6.0.bb             |   17 +++++
 9 files changed, 178 insertions(+), 7 deletions(-)

diff --git a/recipes/qt4/qt-4.6.0.inc b/recipes/qt4/qt-4.6.0.inc
index aa85fac..c6694f1 100644
--- a/recipes/qt4/qt-4.6.0.inc
+++ b/recipes/qt4/qt-4.6.0.inc
@@ -9,6 +9,7 @@ SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.
            file://0006-freetype-host-includes.patch;patch=1 \
            file://0008-qt-lib-infix.patch;patch=1 \
            file://0009-support-2bpp.patch;patch=1 \
+           file://0010-no-simpledecoration-example.patch;patch=1 \
            file://fix-config-tests.patch;patch=1 \
            file://g++.conf \
            file://linux.conf \
@@ -16,6 +17,7 @@ SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.
 S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
 
 do_configure_prepend() {
+    sed -i s:SEDME:${S}: ${WORKDIR}/linux.conf
     sed -i \
     -e /QMAKE_MOC\ /d \
     -e /QMAKE_UIC\ /d \
@@ -26,6 +28,9 @@ do_configure_prepend() {
 #	sed -i /tools.pro/d ${S}/src/src.pro
 }
 
+QT_GLFLAGS ?= ""
+QT_CONFIG_FLAGS += "${QT_GLFLAGS}"
+
 do_install_append() {
 	install -d ${D}${bindir}
 	for i in rcc uic moc ; do
diff --git a/recipes/qt4/qt4-embedded-4.6.0/0010-no-simpledecoration-example.patch b/recipes/qt4/qt4-embedded-4.6.0/0010-no-simpledecoration-example.patch
index 070b4ac..fce5bba 100644
--- a/recipes/qt4/qt4-embedded-4.6.0/0010-no-simpledecoration-example.patch
+++ b/recipes/qt4/qt4-embedded-4.6.0/0010-no-simpledecoration-example.patch
@@ -1,9 +1,11 @@
---- qt-embedded-linux-opensource-src-4.5.0.orig/examples/qws/qws.pro	2009-02-25 22:32:34.000000000 +0100
-+++ qt-embedded-linux-opensource-src-4.5.0/examples/qws/qws.pro	2009-03-26 19:53:19.000000000 +0100
-@@ -1,5 +1,5 @@
+--- /tmp/qws.pro	2009-12-10 19:30:08.000000000 +0100
++++ qt-everywhere-opensource-src-4.6.0/examples/qws/qws.pro	2009-12-10 19:30:21.000000000 +0100
+@@ -1,7 +1,7 @@
  TEMPLATE      = subdirs
--SUBDIRS       = framebuffer mousecalibration simpledecoration
-+SUBDIRS       = framebuffer mousecalibration
+ # no /dev/fbX
+ !qnx:!vxworks:SUBDIRS = framebuffer
+-SUBDIRS      += mousecalibration simpledecoration
++SUBDIRS      += mousecalibration
  
  # install
  sources.files = $$SOURCES $$HEADERS $$RESOURCES $$FORMS README *.pro
diff --git a/recipes/qt4/qt4-embedded-4.6.0/linux.conf b/recipes/qt4/qt4-embedded-4.6.0/linux.conf
index 2e86240..68ae80b 100644
--- a/recipes/qt4/qt4-embedded-4.6.0/linux.conf
+++ b/recipes/qt4/qt4-embedded-4.6.0/linux.conf
@@ -15,7 +15,7 @@ QMAKE_INCDIR_OPENGL   =
 QMAKE_LIBDIR_OPENGL   =
 
 
-QMAKE_LIBS            = -lglib-2.0
+QMAKE_LIBS            = -Wl,-rpath-link,SEDME/lib -lglib-2.0
 QMAKE_LIBS_DYNLOAD    = -ldl
 QMAKE_LIBS_X11        = $(OE_QMAKE_LIBS_X11)
 QMAKE_LIBS_X11SM      = $(OE_QMAKE_LIBS_X11SM)
diff --git a/recipes/qt4/qt4-embedded-gles/linux.conf b/recipes/qt4/qt4-embedded-gles/linux.conf
new file mode 100644
index 0000000..a530c75
--- /dev/null
+++ b/recipes/qt4/qt4-embedded-gles/linux.conf
@@ -0,0 +1,63 @@
+#
+# qmake configuration for common linux
+#
+
+QMAKE_CFLAGS_THREAD	+= -D_REENTRANT
+QMAKE_CXXFLAGS_THREAD	+= $$QMAKE_CFLAGS_THREAD
+
+QMAKE_INCDIR          =
+QMAKE_LIBDIR          =
+QMAKE_INCDIR_X11      =
+QMAKE_LIBDIR_X11      =
+QMAKE_INCDIR_QT       = $(OE_QMAKE_INCDIR_QT)
+QMAKE_LIBDIR_QT       = $(OE_QMAKE_LIBDIR_QT)
+QMAKE_INCDIR_EGL      = ${STAGING_INCDIR}/GLES2
+QMAKE_INCDIR_OPENGL   = ${STAGING_INCDIR}/GLES2
+QMAKE_INCDIR_OPENGL_ES2 = ${STAGING_INCDIR}/GLES2
+QMAKE_LIBDIR_EGL      = ${STAGING_LIBDIR}
+QMAKE_LIBDIR_OPENGL   = ${STAGING_LIBDIR}
+QMAKE_LIBDIR_OPENGL_ES2 = ${STAGING_LIBDIR}
+
+QMAKE_LIBS            = -Wl,-rpath-link,SEDME/lib -lglib-2.0
+QMAKE_LIBS_DYNLOAD    = -ldl
+QMAKE_LIBS_X11        = $(OE_QMAKE_LIBS_X11)
+QMAKE_LIBS_X11SM      = $(OE_QMAKE_LIBS_X11SM)
+QMAKE_LIBS_NIS        = -lnsl
+QMAKE_LIBS_EGL        = -lEGL -lIMGegl -lsrv_um
+QMAKE_LIBS_OPENGL_QT  = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um
+QMAKE_LIBS_OPENVG     = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um -lOpenVG -lOpenVGU
+QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um 
+
+QMAKE_LIBS_THREAD     = -lpthread
+
+QMAKE_MOC             = $(OE_QMAKE_MOC)
+QMAKE_UIC             = $(OE_QMAKE_UIC)
+QMAKE_UIC3            = $(OE_QMAKE_UIC3)
+QMAKE_RCC             = $(OE_QMAKE_RCC)
+QMAKE_QDBUSCPP2XML    = $(OE_QMAKE_QDBUSCPP2XML)
+QMAKE_QDBUSXML2CPP    = $(OE_QMAKE_QDBUSXML2CPP)
+
+QMAKE_AR              = $(OE_QMAKE_AR) cqs
+QMAKE_OBJCOPY         = ${OBJCOPY}
+QMAKE_RANLIB          =
+
+QMAKE_TAR             = tar -cf
+QMAKE_GZIP            = gzip -9f
+
+QMAKE_COPY            = cp -f
+QMAKE_COPY_FILE       = $(COPY)
+QMAKE_COPY_DIR        = $(COPY) -r
+QMAKE_MOVE            = mv -f
+QMAKE_DEL_FILE        = rm -f
+QMAKE_DEL_DIR         = rmdir
+QMAKE_STRIP           = $(OE_QMAKE_STRIP)
+QMAKE_STRIPFLAGS_LIB += --strip-unneeded
+QMAKE_CHK_DIR_EXISTS  = test -d
+QMAKE_MKDIR           = mkdir -p
+QMAKE_INSTALL_FILE    = install -m 644 -p
+QMAKE_INSTALL_PROGRAM = install -m 755 -p
+
+#These defines are documented in the powervr README, please read it
+DEFINES += QT_QWS_CLIENTBLIT QT_NO_QWS_CURSOR
+
+include(unix.conf)
diff --git a/recipes/qt4/qt4-embedded-gles_4.6.0.bb b/recipes/qt4/qt4-embedded-gles_4.6.0.bb
new file mode 100644
index 0000000..f988f98
--- /dev/null
+++ b/recipes/qt4/qt4-embedded-gles_4.6.0.bb
@@ -0,0 +1,13 @@
+
+PR = "${INC_PR}.0"
+
+QT_GLFLAGS = "-opengl es2 -openvg"
+
+require qt-4.6.0.inc
+
+
+FILESPATHPKG .= ":qt4-embedded-${PV}:qt4-embedded"
+
+DEPENDS += "virtual/egl"
+
+
diff --git a/recipes/qt4/qt4-x11-free-4.6.0/0010-no-simpledecoration-example.patch b/recipes/qt4/qt4-x11-free-4.6.0/0010-no-simpledecoration-example.patch
new file mode 100644
index 0000000..fce5bba
--- /dev/null
+++ b/recipes/qt4/qt4-x11-free-4.6.0/0010-no-simpledecoration-example.patch
@@ -0,0 +1,11 @@
+--- /tmp/qws.pro	2009-12-10 19:30:08.000000000 +0100
++++ qt-everywhere-opensource-src-4.6.0/examples/qws/qws.pro	2009-12-10 19:30:21.000000000 +0100
+@@ -1,7 +1,7 @@
+ TEMPLATE      = subdirs
+ # no /dev/fbX
+ !qnx:!vxworks:SUBDIRS = framebuffer
+-SUBDIRS      += mousecalibration simpledecoration
++SUBDIRS      += mousecalibration
+ 
+ # install
+ sources.files = $$SOURCES $$HEADERS $$RESOURCES $$FORMS README *.pro
diff --git a/recipes/qt4/qt4-x11-free-4.6.0/linux.conf b/recipes/qt4/qt4-x11-free-4.6.0/linux.conf
index 2e86240..68ae80b 100644
--- a/recipes/qt4/qt4-x11-free-4.6.0/linux.conf
+++ b/recipes/qt4/qt4-x11-free-4.6.0/linux.conf
@@ -15,7 +15,7 @@ QMAKE_INCDIR_OPENGL   =
 QMAKE_LIBDIR_OPENGL   =
 
 
-QMAKE_LIBS            = -lglib-2.0
+QMAKE_LIBS            = -Wl,-rpath-link,SEDME/lib -lglib-2.0
 QMAKE_LIBS_DYNLOAD    = -ldl
 QMAKE_LIBS_X11        = $(OE_QMAKE_LIBS_X11)
 QMAKE_LIBS_X11SM      = $(OE_QMAKE_LIBS_X11SM)
diff --git a/recipes/qt4/qt4-x11-free-gles/linux.conf b/recipes/qt4/qt4-x11-free-gles/linux.conf
new file mode 100644
index 0000000..b574157
--- /dev/null
+++ b/recipes/qt4/qt4-x11-free-gles/linux.conf
@@ -0,0 +1,60 @@
+#
+# qmake configuration for common linux
+#
+
+QMAKE_CFLAGS_THREAD	+= -D_REENTRANT
+QMAKE_CXXFLAGS_THREAD	+= $$QMAKE_CFLAGS_THREAD
+
+QMAKE_INCDIR          =
+QMAKE_LIBDIR          =
+QMAKE_INCDIR_X11      =
+QMAKE_LIBDIR_X11      =
+QMAKE_INCDIR_QT       = $(OE_QMAKE_INCDIR_QT)
+QMAKE_LIBDIR_QT       = $(OE_QMAKE_LIBDIR_QT)
+QMAKE_INCDIR_EGL      = ${STAGING_INCDIR}/GLES2
+QMAKE_INCDIR_OPENGL   = ${STAGING_INCDIR}/GLES2
+QMAKE_INCDIR_OPENGL_ES2 = ${STAGING_INCDIR}/GLES2
+QMAKE_LIBDIR_EGL      = ${STAGING_LIBDIR}
+QMAKE_LIBDIR_OPENGL   = ${STAGING_LIBDIR}
+QMAKE_LIBDIR_OPENGL_ES2 = ${STAGING_LIBDIR}
+
+QMAKE_LIBS            = -Wl,-rpath-link,SEDME/lib -lglib-2.0
+QMAKE_LIBS_DYNLOAD    = -ldl
+QMAKE_LIBS_X11        = $(OE_QMAKE_LIBS_X11)
+QMAKE_LIBS_X11SM      = $(OE_QMAKE_LIBS_X11SM)
+QMAKE_LIBS_NIS        = -lnsl
+QMAKE_LIBS_EGL        = -lEGL -lIMGegl -lsrv_um
+QMAKE_LIBS_OPENGL_QT  = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um
+QMAKE_LIBS_OPENVG     = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um -lOpenVG -lOpenVGU
+QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um 
+
+QMAKE_LIBS_THREAD     = -lpthread
+
+QMAKE_MOC             = $(OE_QMAKE_MOC)
+QMAKE_UIC             = $(OE_QMAKE_UIC)
+QMAKE_UIC3            = $(OE_QMAKE_UIC3)
+QMAKE_RCC             = $(OE_QMAKE_RCC)
+QMAKE_QDBUSCPP2XML    = $(OE_QMAKE_QDBUSCPP2XML)
+QMAKE_QDBUSXML2CPP    = $(OE_QMAKE_QDBUSXML2CPP)
+
+QMAKE_AR              = $(OE_QMAKE_AR) cqs
+QMAKE_OBJCOPY         = ${OBJCOPY}
+QMAKE_RANLIB          =
+
+QMAKE_TAR             = tar -cf
+QMAKE_GZIP            = gzip -9f
+
+QMAKE_COPY            = cp -f
+QMAKE_COPY_FILE       = $(COPY)
+QMAKE_COPY_DIR        = $(COPY) -r
+QMAKE_MOVE            = mv -f
+QMAKE_DEL_FILE        = rm -f
+QMAKE_DEL_DIR         = rmdir
+QMAKE_STRIP           = $(OE_QMAKE_STRIP)
+QMAKE_STRIPFLAGS_LIB += --strip-unneeded
+QMAKE_CHK_DIR_EXISTS  = test -d
+QMAKE_MKDIR           = mkdir -p
+QMAKE_INSTALL_FILE    = install -m 644 -p
+QMAKE_INSTALL_PROGRAM = install -m 755 -p
+
+include(unix.conf)
diff --git a/recipes/qt4/qt4-x11-free-gles_4.6.0.bb b/recipes/qt4/qt4-x11-free-gles_4.6.0.bb
new file mode 100644
index 0000000..36b6ec5
--- /dev/null
+++ b/recipes/qt4/qt4-x11-free-gles_4.6.0.bb
@@ -0,0 +1,17 @@
+
+PR = "${INC_PR}.0"
+
+QT_GLFLAGS = "-opengl es2 -openvg"
+
+require qt-4.6.0.inc
+
+QT_CONFIG_FLAGS += " \
+ -no-embedded \
+ -xrandr \
+ -x11"
+
+FILESPATHPKG .= ":qt4-x11-free-${PV}:qt4-x11-free"
+
+DEPENDS += "virtual/egl"
+
+





More information about the Openembedded-commits mailing list