All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2] Add Qt5 packages
@ 2013-03-06 20:22 Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 01/34] pcre: add support for 16 bits and 32 bits variants Thomas Petazzoni
                   ` (33 more replies)
  0 siblings, 34 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Hello,

Here is a set of patches that add Qt5 support in Buildroot. I have
built a number of different combinations, but there are some many
different possibilities, that I obviously couldn't test all of
them. Some testing will be appreciated, but for sure, only the
autobuilders will really help in getting a good build coverage of all
this.

In short:

 * Patch 1 improves our pcre package to add support for 16 bits and 32
   bits variants, need by Qt5.

 * Patches 2 to 4 bump the version or add new XCB-util packages that
   are needed to build the XCB backend of Qt5.

 * Patches 5 to 8 add virtual packages for OpenGLES, OpenVG and EGL,
   and make rpi-userland provide an implementation of those virtual
   packages, and do other related fixes to RPi OpenGLES/EGL support.

 * Patch 9 makes packages using host-jpeg use host-libjpeg instead so
   that we don't have to provide a virtual host-jpeg package.

 * Patch 10 converts the jpeg virtual package to a real package.

 * Patch 11 and 12 adds some basic infrastructure to support the Qt5
   packages.

 * Patch 13 adds the Qt5Base package.

 * Patches 14 to 23 extend the Qt5Base package with various features
   (GUI, OpenSSL, EGL, D-Bus, etc.)

 * Patch 24 creates a common variable to share the Qt5 version between
   all the Qt5 packages.

 * Patches 25 to 34 add more Qt5 libraries: Qt5Svg, Qt5Webkit,
   Qt5Script, and more.

Changes v1 -> v2:

 * Make the package that depended on host-jpeg depend on host-libjpeg
   directly, so that we don't need to provide a virtual host-jpeg
   package.
 * Integrated patches from Floris Bos to fix issues related RPi
   OpenGLES/EGL libraries, and to get the installation of fonts done
   by the qt5base package.
 * pcre: fixed typo is -> if in commit log [Gustavo Zacarias]
 * pcre: fix help text in Config.in [Gustavo Zacarias]

The patches are also available from:

  http://git.free-electrons.com/users/thomas-petazzoni/buildroot/log/?h=qt5

Best regards,

Thomas

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 01/34] pcre: add support for 16 bits and 32 bits variants
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:54   ` Peter Korsgaard
  2013-03-06 20:22 ` [Buildroot] [PATCH 02/34] x11r7/xcb-util: bump to 0.3.9 Thomas Petazzoni
                   ` (32 subsequent siblings)
  33 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Until now, we have been building only the 8bits PCRE variant. However,
Qt5 requires the 16bits variant. This commit therefore adds support to
build the 16bits and 32bits variants of PCRE. In order to preserve
backward compatibility, the 8bits variant is automatically chosen if
no specific variant is defined.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Changes v1->v2:
 * Fix commit message is -> if [Gustavo Zacarias]
 * Fix help text in Config.in [Gustavo Zacarias]
---
 package/pcre/Config.in |   22 ++++++++++++++++++++++
 package/pcre/pcre.mk   |    4 ++++
 2 files changed, 26 insertions(+)

diff --git a/package/pcre/Config.in b/package/pcre/Config.in
index a4e2547..5d16e6d 100644
--- a/package/pcre/Config.in
+++ b/package/pcre/Config.in
@@ -1,6 +1,28 @@
 config BR2_PACKAGE_PCRE
 	bool "pcre"
+	# Ensure at least the default 8-bit library is enabled.
+	select BR2_PACKAGE_PCRE_8 if \
+	       (!BR2_PACKAGE_PCRE_16 && !BR2_PACKAGE_PCRE_32)
 	help
 	  Perl Compatible Regular Expressions
 
 	  http://www.pcre.org/
+
+if BR2_PACKAGE_PCRE
+
+config BR2_PACKAGE_PCRE_8
+	bool "8-bit pcre"
+	help
+	  This option builds the 8-bits pcre library, i.e 'libpcre'
+
+config BR2_PACKAGE_PCRE_16
+	bool "16-bit pcre"
+	help
+	  This option builds the 16-bits pcre library, i.e 'libpcre16'
+
+config BR2_PACKAGE_PCRE_32
+	bool "32-bit pcre"
+	help
+	  This option builds the 32-bits pcre library, i.e 'libpcre32'
+
+endif
diff --git a/package/pcre/pcre.mk b/package/pcre/pcre.mk
index 48266ff..b1339fb 100644
--- a/package/pcre/pcre.mk
+++ b/package/pcre/pcre.mk
@@ -16,4 +16,8 @@ ifneq ($(BR2_INSTALL_LIBSTDCPP),y)
 PCRE_CONF_OPT = --disable-cpp
 endif
 
+PCRE_CONF_OPT += $(if $(BR2_PACKAGE_PCRE_8),--enable-pcre8,--disable-pcre8)
+PCRE_CONF_OPT += $(if $(BR2_PACKAGE_PCRE_16),--enable-pcre16,--disable-pcre16)
+PCRE_CONF_OPT += $(if $(BR2_PACKAGE_PCRE_32),--enable-pcre32,--disable-pcre32)
+
 $(eval $(autotools-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 02/34] x11r7/xcb-util: bump to 0.3.9
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 01/34] pcre: add support for 16 bits and 32 bits variants Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:54   ` Peter Korsgaard
  2013-03-06 20:22 ` [Buildroot] [PATCH 03/34] x11r7/xcb-util-wm: new package Thomas Petazzoni
                   ` (31 subsequent siblings)
  33 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/x11r7/xcb-util/xcb-util.mk |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/x11r7/xcb-util/xcb-util.mk b/package/x11r7/xcb-util/xcb-util.mk
index 5681b72..fcf99ea 100644
--- a/package/x11r7/xcb-util/xcb-util.mk
+++ b/package/x11r7/xcb-util/xcb-util.mk
@@ -3,7 +3,7 @@
 # xcb-util
 #
 #############################################################
-XCB_UTIL_VERSION = 0.3.6
+XCB_UTIL_VERSION = 0.3.9
 XCB_UTIL_SOURCE = xcb-util-$(XCB_UTIL_VERSION).tar.bz2
 XCB_UTIL_SITE = http://xcb.freedesktop.org/dist/
 XCB_UTIL_INSTALL_STAGING = YES
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 03/34] x11r7/xcb-util-wm: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 01/34] pcre: add support for 16 bits and 32 bits variants Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 02/34] x11r7/xcb-util: bump to 0.3.9 Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:59   ` Peter Korsgaard
  2013-03-06 20:22 ` [Buildroot] [PATCH 04/34] x11r7/xcb-util-image: " Thomas Petazzoni
                   ` (30 subsequent siblings)
  33 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/x11r7/Config.in                  |    1 +
 package/x11r7/xcb-util-wm/Config.in      |   15 +++++++++++++++
 package/x11r7/xcb-util-wm/xcb-util-wm.mk |   13 +++++++++++++
 3 files changed, 29 insertions(+)
 create mode 100644 package/x11r7/xcb-util-wm/Config.in
 create mode 100644 package/x11r7/xcb-util-wm/xcb-util-wm.mk

diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in
index 706574c..2abd593 100644
--- a/package/x11r7/Config.in
+++ b/package/x11r7/Config.in
@@ -16,6 +16,7 @@ if BR2_PACKAGE_XORG7
 		source package/x11r7/mesa3d/Config.in
 		source package/x11r7/xcb-util/Config.in
 		source package/x11r7/xcb-util-keysyms/Config.in
+		source package/x11r7/xcb-util-wm/Config.in
 		source package/x11r7/xlib_libFS/Config.in
 		source package/x11r7/xlib_libICE/Config.in
 		source package/x11r7/xlib_libSM/Config.in
diff --git a/package/x11r7/xcb-util-wm/Config.in b/package/x11r7/xcb-util-wm/Config.in
new file mode 100644
index 0000000..491e7a3
--- /dev/null
+++ b/package/x11r7/xcb-util-wm/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_XCB_UTIL_WM
+	bool "xcb-util-wm"
+	help
+	  The XCB util modules provides a number of libraries which sit on top
+	  of libxcb, the core X protocol library, and some of the extension
+	  libraries. These experimental libraries provide convenience functions
+	  and interfaces which make the raw X protocol more usable. Some of the
+	  libraries also provide client-side code which is not strictly part of
+	  the X protocol but which have traditionally been provided by Xlib.
+
+	  XCB util-wm module provides the following libraries:
+	    - ewmh: Both client and window-manager helpers for EWMH.
+	    - icccm: Both client and window-manager helpers for ICCCM.
+
+	  http://xcb.freedesktop.org/
diff --git a/package/x11r7/xcb-util-wm/xcb-util-wm.mk b/package/x11r7/xcb-util-wm/xcb-util-wm.mk
new file mode 100644
index 0000000..a631fa6
--- /dev/null
+++ b/package/x11r7/xcb-util-wm/xcb-util-wm.mk
@@ -0,0 +1,13 @@
+#############################################################
+#
+# xcb-util-wm
+#
+#############################################################
+
+XCB_UTIL_WM_VERSION = 0.3.9
+XCB_UTIL_WM_SITE = http://xcb.freedesktop.org/dist/
+XCB_UTIL_WM_SOURCE = xcb-util-wm-$(XCB_UTIL_WM_VERSION).tar.bz2
+XCB_UTIL_WM_INSTALL_STAGING = YES
+XCB_UTIL_WM_LICENSE = MIT
+
+$(eval $(autotools-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 04/34] x11r7/xcb-util-image: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (2 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 03/34] x11r7/xcb-util-wm: new package Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 21:00   ` Peter Korsgaard
  2013-03-06 20:22 ` [Buildroot] [PATCH 05/34] package: create virtual package for libGLES, libOpenVG and libEGL Thomas Petazzoni
                   ` (29 subsequent siblings)
  33 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/x11r7/Config.in                        |    1 +
 package/x11r7/xcb-util-image/Config.in         |   15 +++++++++++++++
 package/x11r7/xcb-util-image/xcb-util-image.mk |   14 ++++++++++++++
 3 files changed, 30 insertions(+)
 create mode 100644 package/x11r7/xcb-util-image/Config.in
 create mode 100644 package/x11r7/xcb-util-image/xcb-util-image.mk

diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in
index 2abd593..5d0f991 100644
--- a/package/x11r7/Config.in
+++ b/package/x11r7/Config.in
@@ -15,6 +15,7 @@ if BR2_PACKAGE_XORG7
 		source package/x11r7/libxcb/Config.in
 		source package/x11r7/mesa3d/Config.in
 		source package/x11r7/xcb-util/Config.in
+		source package/x11r7/xcb-util-image/Config.in
 		source package/x11r7/xcb-util-keysyms/Config.in
 		source package/x11r7/xcb-util-wm/Config.in
 		source package/x11r7/xlib_libFS/Config.in
diff --git a/package/x11r7/xcb-util-image/Config.in b/package/x11r7/xcb-util-image/Config.in
new file mode 100644
index 0000000..31fc61a
--- /dev/null
+++ b/package/x11r7/xcb-util-image/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_XCB_UTIL_IMAGE
+	bool "xcb-util-image"
+	select BR2_PACKAGE_XCB_UTIL
+	help
+	  The XCB util modules provides a number of libraries which sit on top
+	  of libxcb, the core X protocol library, and some of the extension
+	  libraries. These experimental libraries provide convenience functions
+	  and interfaces which make the raw X protocol more usable. Some of the
+	  libraries also provide client-side code which is not strictly part of
+	  the X protocol but which have traditionally been provided by Xlib.
+
+	  XCB util-image module provides the following library:
+	    - image: Port of Xlib's XImage and XShmImage functions.
+
+	  http://xcb.freedesktop.org/
diff --git a/package/x11r7/xcb-util-image/xcb-util-image.mk b/package/x11r7/xcb-util-image/xcb-util-image.mk
new file mode 100644
index 0000000..0309f3b
--- /dev/null
+++ b/package/x11r7/xcb-util-image/xcb-util-image.mk
@@ -0,0 +1,14 @@
+#############################################################
+#
+# xcb-util-image
+#
+#############################################################
+
+XCB_UTIL_IMAGE_VERSION = 0.3.9
+XCB_UTIL_IMAGE_SITE = http://xcb.freedesktop.org/dist/
+XCB_UTIL_IMAGE_SOURCE = xcb-util-image-$(XCB_UTIL_IMAGE_VERSION).tar.bz2
+XCB_UTIL_IMAGE_INSTALL_STAGING = YES
+XCB_UTIL_IMAGE_LICENSE = MIT
+XCB_UTIL_IMAGE_DEPENDENCIES = xcb-util
+
+$(eval $(autotools-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 05/34] package: create virtual package for libGLES, libOpenVG and libEGL
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (3 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 04/34] x11r7/xcb-util-image: " Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 21:10   ` Peter Korsgaard
  2013-03-06 20:22 ` [Buildroot] [PATCH 06/34] rpi-userland: provides OpenGL ES, EGL and OpenVG Thomas Petazzoni
                   ` (28 subsequent siblings)
  33 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Those acceleration libraries typically have multiple implementations:
some are free (Mesa), some are proprietary (generally SoC specific).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/Config.in                     |    1 +
 package/opengl/Config.in              |    8 ++++++++
 package/opengl/libegl/libegl.mk       |   16 ++++++++++++++++
 package/opengl/libgles/libgles.mk     |   16 ++++++++++++++++
 package/opengl/libopenvg/libopenvg.mk |   16 ++++++++++++++++
 package/opengl/opengl.mk              |    1 +
 6 files changed, 58 insertions(+)
 create mode 100644 package/opengl/Config.in
 create mode 100644 package/opengl/libegl/libegl.mk
 create mode 100644 package/opengl/libgles/libgles.mk
 create mode 100644 package/opengl/libopenvg/libopenvg.mk
 create mode 100644 package/opengl/opengl.mk

diff --git a/package/Config.in b/package/Config.in
index 3706763..22e64f8 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -435,6 +435,7 @@ source "package/librsvg/Config.in"
 source "package/libsvgtiny/Config.in"
 source "package/libungif/Config.in"
 source "package/opencv/Config.in"
+source "package/opengl/Config.in"
 source "package/pango/Config.in"
 source "package/pixman/Config.in"
 source "package/tiff/Config.in"
diff --git a/package/opengl/Config.in b/package/opengl/Config.in
new file mode 100644
index 0000000..81616f9
--- /dev/null
+++ b/package/opengl/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_HAS_OPENGL_EGL
+	bool
+
+config BR2_PACKAGE_HAS_OPENGL_ES
+	bool
+
+config BR2_PACKAGE_HAS_OPENVG
+	bool
diff --git a/package/opengl/libegl/libegl.mk b/package/opengl/libegl/libegl.mk
new file mode 100644
index 0000000..56cc8ac
--- /dev/null
+++ b/package/opengl/libegl/libegl.mk
@@ -0,0 +1,16 @@
+#############################################################
+#
+# Virtual package for libEGL
+#
+#############################################################
+
+LIBEGL_SOURCE =
+
+ifeq ($(LIBEGL_DEPENDENCIES),y)
+define LIBEGL_CONFIGURE_CMDS
+	echo "No libEGL implementation selected. Configuration error."
+	exit 1
+endef
+endif
+
+$(eval $(generic-package))
diff --git a/package/opengl/libgles/libgles.mk b/package/opengl/libgles/libgles.mk
new file mode 100644
index 0000000..753f53e
--- /dev/null
+++ b/package/opengl/libgles/libgles.mk
@@ -0,0 +1,16 @@
+#############################################################
+#
+# Virtual package for libGLES
+#
+#############################################################
+
+LIBGLES_SOURCE =
+
+ifeq ($(LIBGLES_DEPENDENCIES),y)
+define LIBGLES_CONFIGURE_CMDS
+	echo "No libGLES implementation selected. Configuration error."
+	exit 1
+endef
+endif
+
+$(eval $(generic-package))
diff --git a/package/opengl/libopenvg/libopenvg.mk b/package/opengl/libopenvg/libopenvg.mk
new file mode 100644
index 0000000..2fcc99f
--- /dev/null
+++ b/package/opengl/libopenvg/libopenvg.mk
@@ -0,0 +1,16 @@
+#############################################################
+#
+# Virtual package for libOpenVG
+#
+#############################################################
+
+LIBOPENVG_SOURCE =
+
+ifeq ($(LIBOPENVG_DEPENDENCIES),y)
+define LIBOPENVG_CONFIGURE_CMDS
+	echo "No libOpenVG implementation selected. Configuration error."
+	exit 1
+endef
+endif
+
+$(eval $(generic-package))
diff --git a/package/opengl/opengl.mk b/package/opengl/opengl.mk
new file mode 100644
index 0000000..68df3b1
--- /dev/null
+++ b/package/opengl/opengl.mk
@@ -0,0 +1 @@
+include package/opengl/*/*.mk
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 06/34] rpi-userland: provides OpenGL ES, EGL and OpenVG
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (4 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 05/34] package: create virtual package for libGLES, libOpenVG and libEGL Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 21:23   ` Peter Korsgaard
  2013-03-06 20:22 ` [Buildroot] [PATCH 07/34] rpi-userland: add .pc files for OpenGLESv2 and EGL libs Thomas Petazzoni
                   ` (27 subsequent siblings)
  33 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/opengl/libegl/libegl.mk       |    4 ++++
 package/opengl/libgles/libgles.mk     |    4 ++++
 package/opengl/libopenvg/libopenvg.mk |    4 ++++
 package/rpi-userland/Config.in        |    3 +++
 4 files changed, 15 insertions(+)

diff --git a/package/opengl/libegl/libegl.mk b/package/opengl/libegl/libegl.mk
index 56cc8ac..c495496 100644
--- a/package/opengl/libegl/libegl.mk
+++ b/package/opengl/libegl/libegl.mk
@@ -6,6 +6,10 @@
 
 LIBEGL_SOURCE =
 
+ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
+LIBEGL_DEPENDENCIES += rpi-userland
+endif
+
 ifeq ($(LIBEGL_DEPENDENCIES),y)
 define LIBEGL_CONFIGURE_CMDS
 	echo "No libEGL implementation selected. Configuration error."
diff --git a/package/opengl/libgles/libgles.mk b/package/opengl/libgles/libgles.mk
index 753f53e..f0d0eec 100644
--- a/package/opengl/libgles/libgles.mk
+++ b/package/opengl/libgles/libgles.mk
@@ -6,6 +6,10 @@
 
 LIBGLES_SOURCE =
 
+ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
+LIBGLES_DEPENDENCIES += rpi-userland
+endif
+
 ifeq ($(LIBGLES_DEPENDENCIES),y)
 define LIBGLES_CONFIGURE_CMDS
 	echo "No libGLES implementation selected. Configuration error."
diff --git a/package/opengl/libopenvg/libopenvg.mk b/package/opengl/libopenvg/libopenvg.mk
index 2fcc99f..573fa78 100644
--- a/package/opengl/libopenvg/libopenvg.mk
+++ b/package/opengl/libopenvg/libopenvg.mk
@@ -6,6 +6,10 @@
 
 LIBOPENVG_SOURCE =
 
+ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
+LIBOPENVG_DEPENDENCIES += rpi-userland
+endif
+
 ifeq ($(LIBOPENVG_DEPENDENCIES),y)
 define LIBOPENVG_CONFIGURE_CMDS
 	echo "No libOpenVG implementation selected. Configuration error."
diff --git a/package/rpi-userland/Config.in b/package/rpi-userland/Config.in
index 58ea8cb..2c35fb7 100644
--- a/package/rpi-userland/Config.in
+++ b/package/rpi-userland/Config.in
@@ -3,6 +3,9 @@ config BR2_PACKAGE_RPI_USERLAND
 	depends on BR2_arm
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_LARGEFILE
+	select BR2_PACKAGE_HAS_OPENGL_EGL
+	select BR2_PACKAGE_HAS_OPENGL_ES
+	select BR2_PACKAGE_HAS_OPENVG
 	help
 	  Raspberry Pi Userland contains the necessary library to use the
 	  VideoCore driver.
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 07/34] rpi-userland: add .pc files for OpenGLESv2 and EGL libs
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (5 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 06/34] rpi-userland: provides OpenGL ES, EGL and OpenVG Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 08/34] rpi-userland: add bcm_host to egl.pc Thomas Petazzoni
                   ` (26 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 .../rpi-userland-add-pkgconfig-files.patch         |   53 ++++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 package/rpi-userland/rpi-userland-add-pkgconfig-files.patch

diff --git a/package/rpi-userland/rpi-userland-add-pkgconfig-files.patch b/package/rpi-userland/rpi-userland-add-pkgconfig-files.patch
new file mode 100644
index 0000000..0da9afd
--- /dev/null
+++ b/package/rpi-userland/rpi-userland-add-pkgconfig-files.patch
@@ -0,0 +1,53 @@
+Add .pc files for the OpenGLESv2 and EGL libraries
+
+Those pkg-config files make it easier for Qt5 to find those libraries
+and the appropriate link flags.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/interface/khronos/egl/egl.pc.in
+===================================================================
+--- /dev/null
++++ b/interface/khronos/egl/egl.pc.in
+@@ -0,0 +1,10 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++exec_prefix=${prefix}
++libdir=${exec_prefix}/lib
++includedir=${prefix}/include
++
++Name: egl
++Description: RasberryPi implementation of EGL
++Version: 1.0
++Libs: -L${libdir} -lEGL -lGLESv2
++Cflags: -I${includedir}/ -I${includedir}/interface/vcos/pthreads/
+Index: b/interface/khronos/CMakeLists.txt
+===================================================================
+--- a/interface/khronos/CMakeLists.txt
++++ b/interface/khronos/CMakeLists.txt
+@@ -73,3 +73,11 @@
+ 
+ install(TARGETS EGL GLESv2 OpenVG WFC khrn_client DESTINATION lib)
+ install(TARGETS EGL_static GLESv2_static khrn_static DESTINATION lib)
++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/egl/egl.pc.in"
++  "${CMAKE_CURRENT_BINARY_DIR}/egl/egl.pc" @ONLY)
++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/egl/egl.pc"
++  DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/glxx/glesv2.pc.in"
++  "${CMAKE_CURRENT_BINARY_DIR}/glxx/glesv2.pc" @ONLY)
++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/glxx/glesv2.pc"
++  DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
+Index: b/interface/khronos/glxx/glesv2.pc.in
+===================================================================
+--- /dev/null
++++ b/interface/khronos/glxx/glesv2.pc.in
+@@ -0,0 +1,10 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++exec_prefix=${prefix}
++libdir=${exec_prefix}/lib
++includedir=${prefix}/include
++
++Name: glesv2
++Description: RasberryPi implementation of OpenGL ESv2
++Version: 2.0
++Libs: -L${libdir} -lGLESv2
++Cflags: -I${includedir}/
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 08/34] rpi-userland: add bcm_host to egl.pc
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (6 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 07/34] rpi-userland: add .pc files for OpenGLESv2 and EGL libs Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 09/34] efl/libeet, efl/libevas: use host-libjpeg instead of host-jpeg Thomas Petazzoni
                   ` (25 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

From: Floris Bos <bos@je-eigen-domein.nl>

bcm_host is the Broadcom hardware interface library
And is currently a dependency to use the EGL functions

Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 .../rpi-userland-add-pkgconfig-files.patch         |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/package/rpi-userland/rpi-userland-add-pkgconfig-files.patch b/package/rpi-userland/rpi-userland-add-pkgconfig-files.patch
index 0da9afd..4ffc2b0 100644
--- a/package/rpi-userland/rpi-userland-add-pkgconfig-files.patch
+++ b/package/rpi-userland/rpi-userland-add-pkgconfig-files.patch
@@ -9,7 +9,7 @@ Index: b/interface/khronos/egl/egl.pc.in
 ===================================================================
 --- /dev/null
 +++ b/interface/khronos/egl/egl.pc.in
-@@ -0,0 +1,10 @@
+@@ -0,0 +1,11 @@
 +prefix=@CMAKE_INSTALL_PREFIX@
 +exec_prefix=${prefix}
 +libdir=${exec_prefix}/lib
@@ -18,8 +18,9 @@ Index: b/interface/khronos/egl/egl.pc.in
 +Name: egl
 +Description: RasberryPi implementation of EGL
 +Version: 1.0
-+Libs: -L${libdir} -lEGL -lGLESv2
-+Cflags: -I${includedir}/ -I${includedir}/interface/vcos/pthreads/
++Libs: -L${libdir} -lEGL -lGLESv2 -lbcm_host
++Cflags: -I${includedir}/ -I${includedir}/interface/vcos/pthreads/ \
++        -I${includedir}/interface/vmcs_host/linux/
 Index: b/interface/khronos/CMakeLists.txt
 ===================================================================
 --- a/interface/khronos/CMakeLists.txt
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 09/34] efl/libeet, efl/libevas: use host-libjpeg instead of host-jpeg
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (7 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 08/34] rpi-userland: add bcm_host to egl.pc Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 10/34] jpeg: convert to a real package Thomas Petazzoni
                   ` (24 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Before creating a real virtual package named 'jpeg', we want to ensure
that no package is using the host variant of the virtual
package. Instead, we make them use directly the host-libjpeg package.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/efl/libeet/libeet.mk   |    2 +-
 package/efl/libevas/libevas.mk |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/efl/libeet/libeet.mk b/package/efl/libeet/libeet.mk
index 3d5b460..db3ec6e 100644
--- a/package/efl/libeet/libeet.mk
+++ b/package/efl/libeet/libeet.mk
@@ -13,7 +13,7 @@ LIBEET_LICENSE_FILES = COPYING
 LIBEET_INSTALL_STAGING = YES
 
 LIBEET_DEPENDENCIES = host-pkgconf zlib jpeg libeina
-HOST_LIBEET_DEPENDENCIES = host-pkgconf host-zlib host-jpeg host-libeina
+HOST_LIBEET_DEPENDENCIES = host-pkgconf host-zlib host-libjpeg host-libeina
 
 ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy)
 LIBEET_DEPENDENCIES += gnutls libgcrypt
diff --git a/package/efl/libevas/libevas.mk b/package/efl/libevas/libevas.mk
index 0a90842..5bdcba5 100644
--- a/package/efl/libevas/libevas.mk
+++ b/package/efl/libevas/libevas.mk
@@ -15,7 +15,7 @@ LIBEVAS_INSTALL_STAGING = YES
 LIBEVAS_DEPENDENCIES = host-pkgconf zlib libeina freetype
 
 HOST_LIBEVAS_DEPENDENCIES = host-pkgconf host-zlib host-libeina \
-				host-freetype host-libpng host-jpeg
+				host-freetype host-libpng host-libjpeg
 HOST_LIBEVAS_CONF_OPT += \
 	--enable-image-loader-png \
 	--enable-image-loader-jpeg \
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 10/34] jpeg: convert to a real package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (8 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 09/34] efl/libeet, efl/libevas: use host-libjpeg instead of host-jpeg Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 11/34] qt5: base infrastructure Thomas Petazzoni
                   ` (23 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

jpeg is a virtual package, but since it is listed in the dependencies
of other packages, it should obey to all the normal make rules for
packages. Notably, the jpeg-show-depends target is mandatory for the
graph-depends script to work.

Instead to implement such a make target manually, make jpeg a normal
generic-package, except that it doesn't have any source.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/jpeg/jpeg.mk |   22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

diff --git a/package/jpeg/jpeg.mk b/package/jpeg/jpeg.mk
index 3caacaa..962908d 100644
--- a/package/jpeg/jpeg.mk
+++ b/package/jpeg/jpeg.mk
@@ -1,10 +1,24 @@
 #############################################################
 #
-# jpeg
+# Virtual jpeg package
 #
 #############################################################
 
-jpeg: $(if $(BR2_PACKAGE_JPEG_TURBO),jpeg-turbo,libjpeg)
+JPEG_SOURCE =
 
-host-jpeg: host-libjpeg
-host-jpeg-source: host-libjpeg-source
+ifeq ($(BR2_PACKAGE_JPEG_TURBO),y)
+JPEG_DEPENDENCIES += jpeg-turbo
+endif
+
+ifeq ($(BR2_PACKAGE_LIBJPEG),y)
+JPEG_DEPENDENCIES += libjpeg
+endif
+
+ifeq ($(JPEG_DEPENDENCIES),)
+define JPEG_CONFIGURE_CMDS
+	echo "No JPEG implementation defined. Configuration error"
+	exit 1
+endef
+endif
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 11/34] qt5: base infrastructure
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (9 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 10/34] jpeg: convert to a real package Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 12/34] qt5: add macro to fixup Qt5 .la and .prl files Thomas Petazzoni
                   ` (22 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in |   18 ++++++++++++++++++
 package/qt5/qt5.mk    |    1 +
 2 files changed, 19 insertions(+)
 create mode 100644 package/qt5/Config.in
 create mode 100644 package/qt5/qt5.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
new file mode 100644
index 0000000..0acb89e
--- /dev/null
+++ b/package/qt5/Config.in
@@ -0,0 +1,18 @@
+comment "Qt5 needs a toolchain with WCHAR, IPv6, thread and C++ support"
+	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_INET_IPV6 || !BR2_TOOLCHAIN_HAS_THREADS
+
+menuconfig BR2_PACKAGE_QT5
+	bool "Qt5"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_USE_WCHAR
+	depends on BR2_INET_IPV6
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	help
+	  This option enables the Qt5 framework. Sub-options allow to
+	  select which modules should be built.
+
+	  http://qt-project.org
+
+if BR2_PACKAGE_QT5
+
+endif
diff --git a/package/qt5/qt5.mk b/package/qt5/qt5.mk
new file mode 100644
index 0000000..8b1a7ed
--- /dev/null
+++ b/package/qt5/qt5.mk
@@ -0,0 +1 @@
+include package/qt5/*/*.mk
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 12/34] qt5: add macro to fixup Qt5 .la and .prl files
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (10 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 11/34] qt5: base infrastructure Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 13/34] qt5base: new package Thomas Petazzoni
                   ` (21 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5.mk |   10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/package/qt5/qt5.mk b/package/qt5/qt5.mk
index 8b1a7ed..f220508 100644
--- a/package/qt5/qt5.mk
+++ b/package/qt5/qt5.mk
@@ -1 +1,11 @@
 include package/qt5/*/*.mk
+
+define QT5_LA_PRL_FILES_FIXUP
+	for i in $$(find $(STAGING_DIR)/usr/lib* -name "libQt5*.la"); do \
+		$(SED) "s:\(['= ]\)/usr:\\1$(STAGING_DIR)/usr:g" $$i; \
+		$(SED) "/^dependency_libs=/s%-L/usr/lib %%g" $$i ; \
+	done
+	for i in $$(find $(STAGING_DIR)/usr/lib* -name "libQt5*.prl"); do \
+		$(SED) "s%-L/usr/lib%%" $$i; \
+	done
+endef
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 13/34] qt5base: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (11 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 12/34] qt5: add macro to fixup Qt5 .la and .prl files Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-07  6:00   ` Alexander Lukichev
  2013-03-06 20:22 ` [Buildroot] [PATCH 14/34] qt5base: add GUI support Thomas Petazzoni
                   ` (20 subsequent siblings)
  33 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

This is the beginning of the Qt5 packaging. This commit allows to
build only the qtbase module, which contains QtCore, QtNetwork, QtXml,
QtTest, QtSql and QtConcurrent.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/Config.in                               |    1 +
 package/qt5/Config.in                           |    2 +-
 package/qt5/qt5base/Config.in                   |   56 ++++++++++
 package/qt5/qt5base/qt5base-mkspecs-files.patch |   61 +++++++++++
 package/qt5/qt5base/qt5base-uclibc-no-lfs.patch |   36 +++++++
 package/qt5/qt5base/qt5base.mk                  |  131 +++++++++++++++++++++++
 6 files changed, 286 insertions(+), 1 deletion(-)
 create mode 100644 package/qt5/qt5base/Config.in
 create mode 100644 package/qt5/qt5base/qt5base-mkspecs-files.patch
 create mode 100644 package/qt5/qt5base/qt5base-uclibc-no-lfs.patch
 create mode 100644 package/qt5/qt5base/qt5base.mk

diff --git a/package/Config.in b/package/Config.in
index 22e64f8..afe7440 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -148,6 +148,7 @@ source "package/qtuio/Config.in"
 source "package/qwt/Config.in"
 endif
 
+source "package/qt5/Config.in"
 source "package/x11r7/Config.in"
 
 comment "X libraries and helper libraries"
diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 0acb89e..1c9f8a6 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -14,5 +14,5 @@ menuconfig BR2_PACKAGE_QT5
 	  http://qt-project.org
 
 if BR2_PACKAGE_QT5
-
+source "package/qt5/qt5base/Config.in"
 endif
diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
new file mode 100644
index 0000000..4cd6ce0
--- /dev/null
+++ b/package/qt5/qt5base/Config.in
@@ -0,0 +1,56 @@
+config BR2_PACKAGE_QT5BASE
+	bool "qt5base"
+	select BR2_PACKAGE_ZLIB
+	select BR2_PACKAGE_PCRE
+	select BR2_PACKAGE_PCRE_16
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5base module, which
+	  contains the base Qt libraries: QtCore, QtNetwork, QtGui,
+	  QtWidgets, etc.
+
+	  http://qt-project.org
+
+if BR2_PACKAGE_QT5BASE
+
+config BR2_PACKAGE_QT5BASE_LICENSE_APPROVED
+	bool "Approve free license"
+	help
+	  Select this if you approve one of the available free licenses for the
+	  Qt5 library.
+	  By doing this you will not be asked while the library is compiled.
+	  Please read and understand the license terms before approving this.
+
+	  LGPL v2.1: http://qt-project.org/doc/qt-5.0/qtdoc/lgpl.html
+	  GPL  v3.0: http://qt-project.org/doc/qt-5.0/qtdoc/gpl.html
+
+	  See also http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html
+
+config BR2_PACKAGE_QT5BASE_NETWORK
+	bool "network module"
+	help
+	  This options enables the Qt5Network library.
+
+config BR2_PACKAGE_QT5BASE_CONCURRENT
+	bool "concurrent module"
+	help
+	  This options enables the Qt5Concurrent library.
+
+config BR2_PACKAGE_QT5BASE_SQL
+	bool "sql module"
+	help
+	  This options enables the Qt5Sql library.
+
+config BR2_PACKAGE_QT5BASE_TEST
+	bool "test module"
+	help
+	  This options enables the Qt5Test library.
+
+config BR2_PACKAGE_QT5BASE_XML
+	bool "XML module"
+	help
+	  This options enables the Qt5Xml library.
+
+endif
diff --git a/package/qt5/qt5base/qt5base-mkspecs-files.patch b/package/qt5/qt5base/qt5base-mkspecs-files.patch
new file mode 100644
index 0000000..a86d0b1
--- /dev/null
+++ b/package/qt5/qt5base/qt5base-mkspecs-files.patch
@@ -0,0 +1,61 @@
+Add a Buildroot 'device' to ease cross-compilation
+
+Qt5 has a mechanism to support "device" profiles, so that people can
+specify the compiler, compiler flags and so on for a specific device.
+
+We leverage this mechanism in the Buildroot packaging of qt5 to
+simplify cross-compilation: we have our own "device" definition, which
+allows us to easily pass the cross-compiler paths and flags from our
+qt5.mk.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/mkspecs/devices/linux-buildroot-g++/qmake.conf
+===================================================================
+--- /dev/null
++++ b/mkspecs/devices/linux-buildroot-g++/qmake.conf
+@@ -0,0 +1,38 @@
++MAKEFILE_GENERATOR      = UNIX
++CONFIG                  += incremental gdb_dwarf_index
++QMAKE_INCREMENTAL_STYLE = sublib
++
++include(../../common/linux.conf)
++include(../../common/gcc-base-unix.conf)
++include(../../common/g++-unix.conf)
++
++load(device_config)
++
++QT_QPA_DEFAULT_PLATFORM = eglfs
++
++CROSS_COMPILE =
++COMPILER_CFLAGS =
++COMPILER_CXXFLAGS =
++
++# modifications to g++.conf
++QMAKE_CC                = $${CROSS_COMPILE}gcc
++QMAKE_CXX               = $${CROSS_COMPILE}g++
++QMAKE_LINK              = $${QMAKE_CXX}
++QMAKE_LINK_SHLIB        = $${QMAKE_CXX}
++
++# modifications to linux.conf
++QMAKE_AR                = $${CROSS_COMPILE}ar cqs
++QMAKE_OBJCOPY           = $${CROSS_COMPILE}objcopy
++QMAKE_STRIP             = $${CROSS_COMPILE}strip
++
++#modifications to gcc-base.conf
++QMAKE_CFLAGS           += $${COMPILER_CFLAGS}
++QMAKE_CXXFLAGS         += $${COMPILER_CXXFLAGS}
++QMAKE_CXXFLAGS_RELEASE += -O3
++
++QMAKE_LIBS             += -lrt -lpthread -ldl
++
++# Sanity check
++deviceSanityCheckCompiler()
++
++load(qt_config)
+Index: b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
+===================================================================
+--- /dev/null
++++ b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
+@@ -0,0 +1 @@
++#include "../../linux-g++/qplatformdefs.h"
diff --git a/package/qt5/qt5base/qt5base-uclibc-no-lfs.patch b/package/qt5/qt5base/qt5base-uclibc-no-lfs.patch
new file mode 100644
index 0000000..9772d49
--- /dev/null
+++ b/package/qt5/qt5base/qt5base-uclibc-no-lfs.patch
@@ -0,0 +1,36 @@
+From 6f88b27de256266947a7f6a3e70e18510754aab2 Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <jacmet@sunsite.dk>
+Date: Sat, 14 Apr 2012 20:36:07 +0200
+Subject: [PATCH] mkspecs/common/posix: fix !largefile builds on uClibc
+
+uClibc doesn't even define O_LARGEFILE when not configured with large file
+support, so ensure this define is only used when Qt is built with
+-largefile, otherwise the build fails with:
+
+io/qtemporaryfile.cpp: In function 'bool createFileFromTemplate(
+        NativeFileHandle&, QFileSystemEntry::NativePath&, size_t, size_t,
+        QSystemError&)':
+io/qtemporaryfile.cpp:197:57: error: 'O_LARGEFILE' was not declared in
+        this scope
+
+Moved to qt5 by Thomas Petazzoni.
+
+Reported-Upstream: https://bugreports.qt-project.org/browse/QTBUG-25321
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+
+Index: b/mkspecs/common/posix/qplatformdefs.h
+===================================================================
+--- a/mkspecs/common/posix/qplatformdefs.h
++++ b/mkspecs/common/posix/qplatformdefs.h
+@@ -123,7 +123,11 @@
+ #define QT_READ                 ::read
+ #define QT_WRITE                ::write
+ 
++#ifdef QT_LARGEFILE_SUPPORT
+ #define QT_OPEN_LARGEFILE       O_LARGEFILE
++#else
++#define QT_OPEN_LARGEFILE       0
++#endif
+ #define QT_OPEN_RDONLY          O_RDONLY
+ #define QT_OPEN_WRONLY          O_WRONLY
+ #define QT_OPEN_RDWR            O_RDWR
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
new file mode 100644
index 0000000..094ded1
--- /dev/null
+++ b/package/qt5/qt5base/qt5base.mk
@@ -0,0 +1,131 @@
+#############################################################
+#
+# qt5base
+#
+#############################################################
+
+QT5BASE_VERSION = 5.0.0
+QT5BASE_SITE = http://releases.qt-project.org/qt5/$(QT5BASE_VERSION)/submodules_tar/
+QT5BASE_SOURCE = qtbase-opensource-src-$(QT5BASE_VERSION).tar.xz
+
+QT5BASE_DEPENDENCIES = host-pkgconf zlib pcre
+QT5BASE_INSTALL_STAGING = YES
+
+# A few comments:
+#  * -no-pch to workaround the issue described at
+#     http://comments.gmane.org/gmane.comp.lib.qt.devel/5933.
+#  * -system-zlib because zlib is mandatory for Qt build, and we
+#     want to use the Buildroot packaged zlib
+#  * -system-pcre because pcre is mandatory to build Qt, and we
+#    want to use the one packaged in Buildroot
+QT5BASE_CONFIGURE_OPTS += \
+	-optimized-qmake \
+	-no-linuxfb \
+	-no-xcb \
+	-no-directfb \
+	-no-eglfs \
+	-no-kms \
+	-no-gui \
+	-no-widgets \
+	-no-opengl \
+	-no-glib \
+	-no-cups \
+	-no-nis \
+	-no-libudev \
+	-no-iconv \
+	-no-openssl \
+	-no-fontconfig \
+	-no-gif \
+	-no-libpng \
+	-no-libjpeg \
+	-no-icu \
+	-no-dbus \
+	-no-gstreamer \
+	-no-gtkstyle \
+	-system-zlib \
+	-system-pcre \
+	-no-pch
+
+ifeq ($(BR2_LARGEFILE),y)
+QT5BASE_CONFIGURE_OPTS += -largefile
+else
+QT5BASE_CONFIGURE_OPTS += -no-largefile
+endif
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5BASE_CONFIGURE_OPTS += -opensource -confirm-license
+QT5BASE_LICENSE = LGPLv2.1 or GPLv3.0
+QT5BASE_LICENSE_FILES = LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt
+else
+QT5BASE_LICENSE = Commercial license
+QT5BASE_REDISTRIBUTE = NO
+endif
+
+# Build the list of libraries to be installed on the target
+QT5BASE_INSTALL_LIBS_y                                 += Qt5Core
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK)    += Qt5Network
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_CONCURRENT) += Qt5Concurrent
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_SQL)        += Qt5Sql
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_TEST)       += Qt5Test
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_XML)        += Qt5Xml
+
+# Ideally, we could use -device-option to substitute variable values
+# in our linux-buildroot-g++/qmake.config, but this mechanism doesn't
+# nicely support variable values that contain spaces. So we use the
+# good old sed solution here.
+define QT5BASE_CONFIG_SET
+	$(SED) 's%^$(1).*%$(1) = $(2)%g' $(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
+endef
+
+define QT5BASE_CONFIGURE_CMDS
+	$(call QT5BASE_CONFIG_SET,CROSS_COMPILE,$(TARGET_CROSS))
+	$(call QT5BASE_CONFIG_SET,COMPILER_CFLAGS,$(TARGET_CFLAGS))
+	$(call QT5BASE_CONFIG_SET,COMPILER_CXXFLAGS,$(TARGET_CXXFLAGS))
+	(cd $(@D); \
+		PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
+		PKG_CONFIG_LIBDIR="$(STAGING_DIR)/usr/lib/pkgconfig" \
+		PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \
+		MAKEFLAGS="$(MAKEFLAGS) -j$(PARALLEL_JOBS)" \
+		./configure \
+		-v \
+		-prefix /usr \
+		-hostprefix $(HOST_DIR)/usr \
+		-sysroot $(STAGING_DIR) \
+		-plugindir /usr/lib/qt/plugins \
+		-fast \
+		-no-rpath \
+		-nomake examples -nomake demos -nomake tests \
+		-device buildroot \
+		-no-c++11 \
+		$(QT5BASE_CONFIGURE_OPTS) \
+	)
+endef
+
+define QT5BASE_BUILD_CMDS
+	$(MAKE) -C $(@D)
+endef
+
+define QT5BASE_INSTALL_STAGING_CMDS
+	$(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+define QT5BASE_INSTALL_TARGET_LIBS
+	for lib in $(QT5BASE_INSTALL_LIBS_y); do \
+		cp -dpf $(STAGING_DIR)/usr/lib/lib$${lib}.so.* $(TARGET_DIR)/usr/lib ; \
+	done
+endef
+
+define QT5BASE_INSTALL_TARGET_PLUGINS
+	if [ -d $(STAGING_DIR)/usr/lib/qt/plugins/ ] ; then \
+		mkdir -p $(TARGET_DIR)/usr/lib/qt/plugins ; \
+		cp -dpfr $(STAGING_DIR)/usr/lib/qt/plugins/* $(TARGET_DIR)/usr/lib/qt/plugins ; \
+	fi
+endef
+
+define QT5BASE_INSTALL_TARGET_CMDS
+	$(QT5BASE_INSTALL_TARGET_LIBS)
+	$(QT5BASE_INSTALL_TARGET_PLUGINS)
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 14/34] qt5base: add GUI support
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (12 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 13/34] qt5base: new package Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-07 13:10   ` Lionel Orry
  2013-03-06 20:22 ` [Buildroot] [PATCH 15/34] qt5base: support debug or release modes Thomas Petazzoni
                   ` (19 subsequent siblings)
  33 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/Config.in  |   44 ++++++++++++++++++++++++++++++++++++++++
 package/qt5/qt5base/qt5base.mk |   29 +++++++++++++++++++++-----
 2 files changed, 68 insertions(+), 5 deletions(-)

diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
index 4cd6ce0..801ef6f 100644
--- a/package/qt5/qt5base/Config.in
+++ b/package/qt5/qt5base/Config.in
@@ -53,4 +53,48 @@ config BR2_PACKAGE_QT5BASE_XML
 	help
 	  This options enables the Qt5Xml library.
 
+config BR2_PACKAGE_QT5BASE_GUI
+	bool "gui module"
+	# At least one graphic backend must be enabled, so enable
+	# linuxfb if nothing is enabled.
+	select BR2_PACKAGE_QT5BASE_LINUXFB if \
+	       !BR2_PACKAGE_QT5BASE_DIRECTFB && \
+	       !BR2_PACKAGE_QT5BASE_XCB
+	help
+	  This option enables the Qt5Gui library.
+
+if BR2_PACKAGE_QT5BASE_GUI
+
+config BR2_PACKAGE_QT5BASE_WIDGETS
+	bool "widgets module"
+	help
+	  This option enables the Qt5Widgets library.
+
+config BR2_PACKAGE_QT5BASE_LINUXFB
+	bool "linuxfb support"
+
+config BR2_PACKAGE_QT5BASE_DIRECTFB
+	bool "directfb support"
+	select BR2_PACKAGE_DIRECTFB
+
+config BR2_PACKAGE_QT5BASE_XCB
+	bool "X.org XCB support"
+	depends on BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_LIBX11
+	select BR2_PACKAGE_LIBXCB
+	select BR2_PACKAGE_XCB_UTIL_IMAGE
+	select BR2_PACKAGE_XCB_UTIL_KEYSYMS
+	select BR2_PACKAGE_XCB_UTIL_WM
+
+comment "X.org XCB backend available if X.org is enabled"
+	depends on !BR2_PACKAGE_XORG7
+
+config BR2_PACKAGE_QT5BASE_PRINTSUPPORT
+	bool "print support module"
+	select BR2_PACKAGE_QT5BASE_WIDGETS
+	help
+	  This option enables the Qt5PrintSupport
+
+endif
+
 endif
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 094ded1..7213238 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -20,13 +20,8 @@ QT5BASE_INSTALL_STAGING = YES
 #    want to use the one packaged in Buildroot
 QT5BASE_CONFIGURE_OPTS += \
 	-optimized-qmake \
-	-no-linuxfb \
-	-no-xcb \
-	-no-directfb \
 	-no-eglfs \
 	-no-kms \
-	-no-gui \
-	-no-widgets \
 	-no-opengl \
 	-no-glib \
 	-no-cups \
@@ -61,6 +56,26 @@ QT5BASE_LICENSE = Commercial license
 QT5BASE_REDISTRIBUTE = NO
 endif
 
+# We have to use --enable-linuxfb, otherwise Qt thinks that -linuxfb
+# is to add a link against the "inuxfb" library.
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-gui,-no-gui)
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_WIDGETS),-widgets,-no-widgets)
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_LINUXFB),--enable-linuxfb,-no-linuxfb)
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),-directfb,-no-directfb)
+QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),directfb)
+
+ifeq ($(BR2_PACKAGE_QT5BASE_XCB),y)
+QT5BASE_CONFIGURE_OPTS += -xcb
+QT5BASE_DEPENDENCIES   += \
+	libxcb \
+	xcb-util-wm \
+	xcb-util-image \
+	xcb-util-keysyms \
+	xlib_libX11
+else
+QT5_BASE_CONFIGURE_OPTS += -no-xcb
+endif
+
 # Build the list of libraries to be installed on the target
 QT5BASE_INSTALL_LIBS_y                                 += Qt5Core
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK)    += Qt5Network
@@ -69,6 +84,10 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_SQL)        += Qt5Sql
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_TEST)       += Qt5Test
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_XML)        += Qt5Xml
 
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_GUI)          += Qt5Gui
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_WIDGETS)      += Qt5Widgets
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
+
 # Ideally, we could use -device-option to substitute variable values
 # in our linux-buildroot-g++/qmake.config, but this mechanism doesn't
 # nicely support variable values that contain spaces. So we use the
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 15/34] qt5base: support debug or release modes
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (13 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 14/34] qt5base: add GUI support Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 16/34] qt5base: add OpenSSL support Thomas Petazzoni
                   ` (18 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/qt5base.mk |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 7213238..41e7779 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -41,6 +41,12 @@ QT5BASE_CONFIGURE_OPTS += \
 	-system-pcre \
 	-no-pch
 
+ifeq ($(BR2_ENABLE_DEBUG),y)
+QT5BASE_CONFIGURE_OPTS += -debug
+else
+QT5BASE_CONFIGURE_OPTS += -release
+endif
+
 ifeq ($(BR2_LARGEFILE),y)
 QT5BASE_CONFIGURE_OPTS += -largefile
 else
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 16/34] qt5base: add OpenSSL support
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (14 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 15/34] qt5base: support debug or release modes Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:22 ` [Buildroot] [PATCH 17/34] qt5base: add eglfs graphics backend Thomas Petazzoni
                   ` (17 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/Config.in  |    8 ++++++++
 package/qt5/qt5base/qt5base.mk |    4 +++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
index 801ef6f..540c8b2 100644
--- a/package/qt5/qt5base/Config.in
+++ b/package/qt5/qt5base/Config.in
@@ -33,6 +33,14 @@ config BR2_PACKAGE_QT5BASE_NETWORK
 	help
 	  This options enables the Qt5Network library.
 
+config BR2_PACKAGE_QT5BASE_NETWORK_OPENSSL
+	bool "OpenSSL support"
+	select BR2_PACKAGE_OPENSSL
+	depends on BR2_PACKAGE_QT5BASE_NETWORK
+	help
+	  This option enables the OpenSSL support in the Qt5Network
+	  library.
+
 config BR2_PACKAGE_QT5BASE_CONCURRENT
 	bool "concurrent module"
 	help
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 41e7779..79cbc48 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -28,7 +28,6 @@ QT5BASE_CONFIGURE_OPTS += \
 	-no-nis \
 	-no-libudev \
 	-no-iconv \
-	-no-openssl \
 	-no-fontconfig \
 	-no-gif \
 	-no-libpng \
@@ -82,6 +81,9 @@ else
 QT5_BASE_CONFIGURE_OPTS += -no-xcb
 endif
 
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_OPENSSL),-openssl,-no-openssl)
+QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_OPENSSL),openssl)
+
 # Build the list of libraries to be installed on the target
 QT5BASE_INSTALL_LIBS_y                                 += Qt5Core
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK)    += Qt5Network
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 17/34] qt5base: add eglfs graphics backend
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (15 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 16/34] qt5base: add OpenSSL support Thomas Petazzoni
@ 2013-03-06 20:22 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 18/34] qt5base: add support for fontconfig, png, jpeg, gif Thomas Petazzoni
                   ` (16 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/Config.in                      |   11 ++++++-
 ...nce-add-egl-to-CONFIG-to-get-correct-incl.patch |   32 ++++++++++++++++++++
 package/qt5/qt5base/qt5base.mk                     |    9 ++++--
 3 files changed, 49 insertions(+), 3 deletions(-)
 create mode 100644 package/qt5/qt5base/qt5base-eglconvenience-add-egl-to-CONFIG-to-get-correct-incl.patch

diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
index 540c8b2..e91c405 100644
--- a/package/qt5/qt5base/Config.in
+++ b/package/qt5/qt5base/Config.in
@@ -67,7 +67,8 @@ config BR2_PACKAGE_QT5BASE_GUI
 	# linuxfb if nothing is enabled.
 	select BR2_PACKAGE_QT5BASE_LINUXFB if \
 	       !BR2_PACKAGE_QT5BASE_DIRECTFB && \
-	       !BR2_PACKAGE_QT5BASE_XCB
+	       !BR2_PACKAGE_QT5BASE_XCB && \
+	       !BR2_PACKAGE_QT5BASE_EGLFS
 	help
 	  This option enables the Qt5Gui library.
 
@@ -97,6 +98,14 @@ config BR2_PACKAGE_QT5BASE_XCB
 comment "X.org XCB backend available if X.org is enabled"
 	depends on !BR2_PACKAGE_XORG7
 
+config BR2_PACKAGE_QT5BASE_EGLFS
+	bool "eglfs support"
+	depends on BR2_PACKAGE_HAS_OPENGL_EGL
+	depends on BR2_PACKAGE_HAS_OPENGL_ES
+
+comment "eglfs backend available if OpenGLES and EGL are enabled"
+	depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES
+
 config BR2_PACKAGE_QT5BASE_PRINTSUPPORT
 	bool "print support module"
 	select BR2_PACKAGE_QT5BASE_WIDGETS
diff --git a/package/qt5/qt5base/qt5base-eglconvenience-add-egl-to-CONFIG-to-get-correct-incl.patch b/package/qt5/qt5base/qt5base-eglconvenience-add-egl-to-CONFIG-to-get-correct-incl.patch
new file mode 100644
index 0000000..a85a5aa
--- /dev/null
+++ b/package/qt5/qt5base/qt5base-eglconvenience-add-egl-to-CONFIG-to-get-correct-incl.patch
@@ -0,0 +1,32 @@
+From 588c60d0c3d11e79d19860fa62b03c935658d13a Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sun, 13 Jan 2013 14:36:48 +0100
+Subject: [PATCH qtbase] eglconvenience: add egl to CONFIG to get correct include
+ paths
+
+The eglconvenience code includes <EGL/egl.h>. Therefore, it should get
+the appropriate EGL-specific include paths from QMAKE_INCDIR_EGL,
+otherwise the build might if the EGL library has its headers in
+special locations. In order to achieve this, we simply add the "egl"
+feature to the list of features imported by eglconvenience.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ .../eglconvenience/eglconvenience.pri              |    1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/platformsupport/eglconvenience/eglconvenience.pri b/src/platformsupport/eglconvenience/eglconvenience.pri
+index 188eb1c..8996cea 100644
+--- a/src/platformsupport/eglconvenience/eglconvenience.pri
++++ b/src/platformsupport/eglconvenience/eglconvenience.pri
+@@ -5,6 +5,7 @@ contains(QT_CONFIG,egl) {
+     SOURCES += \
+         $$PWD/qeglconvenience.cpp \
+         $$PWD/qeglplatformcontext.cpp
++    CONFIG += egl
+ 
+     contains(QT_CONFIG,xlib) {
+         HEADERS += \
+-- 
+1.7.9.5
+
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 79cbc48..3e8bde1 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -20,9 +20,7 @@ QT5BASE_INSTALL_STAGING = YES
 #    want to use the one packaged in Buildroot
 QT5BASE_CONFIGURE_OPTS += \
 	-optimized-qmake \
-	-no-eglfs \
 	-no-kms \
-	-no-opengl \
 	-no-glib \
 	-no-cups \
 	-no-nis \
@@ -81,6 +79,13 @@ else
 QT5_BASE_CONFIGURE_OPTS += -no-xcb
 endif
 
+ifeq ($(BR2_PACKAGE_QT5BASE_EGLFS),y)
+QT5BASE_CONFIGURE_OPTS += -opengl es2 -eglfs
+QT5BASE_DEPENDENCIES   += libgles libegl
+else
+QT5BASE_CONFIGURE_OPTS += -no-opengl -no-eglfs
+endif
+
 QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_OPENSSL),-openssl,-no-openssl)
 QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_OPENSSL),openssl)
 
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 18/34] qt5base: add support for fontconfig, png, jpeg, gif
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (16 preceding siblings ...)
  2013-03-06 20:22 ` [Buildroot] [PATCH 17/34] qt5base: add eglfs graphics backend Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 19/34] qt5base: add D-Bus support Thomas Petazzoni
                   ` (15 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/Config.in  |   26 ++++++++++++++++++++++++++
 package/qt5/qt5base/qt5base.mk |   12 ++++++++----
 2 files changed, 34 insertions(+), 4 deletions(-)

diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
index e91c405..08e3c16 100644
--- a/package/qt5/qt5base/Config.in
+++ b/package/qt5/qt5base/Config.in
@@ -112,6 +112,32 @@ config BR2_PACKAGE_QT5BASE_PRINTSUPPORT
 	help
 	  This option enables the Qt5PrintSupport
 
+config BR2_PACKAGE_QT5BASE_FONTCONFIG
+	bool "fontconfig support"
+	select BR2_PACKAGE_FONTCONFIG
+	help
+	  This option enables Fontconfig and Freetype support using
+	  the system fontconfig and freetype2 libraries.
+
+config BR2_PACKAGE_QT5BASE_GIF
+	bool "GIF support"
+	help
+	  This compiles and installs the plugin for GIF reading support.
+
+config BR2_PACKAGE_QT5BASE_JPEG
+	bool "JPEG support"
+	select BR2_PACKAGE_JPEG
+	help
+	  This option enables JPEG support using the system libjpeg
+	  library.
+
+config BR2_PACKAGE_QT5BASE_PNG
+	bool "PNG support"
+	select BR2_PACKAGE_LIBPNG
+	help
+	  This option enables PNG support using the system libpng
+	  library.
+
 endif
 
 endif
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 3e8bde1..ac25f17 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -26,10 +26,6 @@ QT5BASE_CONFIGURE_OPTS += \
 	-no-nis \
 	-no-libudev \
 	-no-iconv \
-	-no-fontconfig \
-	-no-gif \
-	-no-libpng \
-	-no-libjpeg \
 	-no-icu \
 	-no-dbus \
 	-no-gstreamer \
@@ -89,6 +85,14 @@ endif
 QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_OPENSSL),-openssl,-no-openssl)
 QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_OPENSSL),openssl)
 
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_FONTCONFIG),-fontconfig,-no-fontconfig)
+QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_FONTCONFIG),fontconfig)
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GIF),,-no-gif)
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_JPEG),-system-libjpeg,-no-libjpeg)
+QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_JPEG),jpeg)
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_PNG),-system-libpng,-no-libpng)
+QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_PNG),libpng)
+
 # Build the list of libraries to be installed on the target
 QT5BASE_INSTALL_LIBS_y                                 += Qt5Core
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK)    += Qt5Network
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 19/34] qt5base: add D-Bus support
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (17 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 18/34] qt5base: add support for fontconfig, png, jpeg, gif Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 20/34] qt5base: add glib support Thomas Petazzoni
                   ` (14 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/Config.in  |    8 ++++++++
 package/qt5/qt5base/qt5base.mk |    6 +++++-
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
index 08e3c16..baf471f 100644
--- a/package/qt5/qt5base/Config.in
+++ b/package/qt5/qt5base/Config.in
@@ -140,4 +140,12 @@ config BR2_PACKAGE_QT5BASE_PNG
 
 endif
 
+config BR2_PACKAGE_QT5BASE_DBUS
+	bool "DBus module"
+	select BR2_PACKAGE_DBUS
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_USE_MMU
+	help
+	  This option enables the D-Bus module.
+
 endif
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index ac25f17..7988ce2 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -27,7 +27,6 @@ QT5BASE_CONFIGURE_OPTS += \
 	-no-libudev \
 	-no-iconv \
 	-no-icu \
-	-no-dbus \
 	-no-gstreamer \
 	-no-gtkstyle \
 	-system-zlib \
@@ -93,6 +92,9 @@ QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_JPEG),jpeg)
 QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_PNG),-system-libpng,-no-libpng)
 QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_PNG),libpng)
 
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_DBUS),-dbus,-no-dbus)
+QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_DBUS),dbus)
+
 # Build the list of libraries to be installed on the target
 QT5BASE_INSTALL_LIBS_y                                 += Qt5Core
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK)    += Qt5Network
@@ -105,6 +107,8 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_GUI)          += Qt5Gui
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_WIDGETS)      += Qt5Widgets
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
 
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
+
 # Ideally, we could use -device-option to substitute variable values
 # in our linux-buildroot-g++/qmake.config, but this mechanism doesn't
 # nicely support variable values that contain spaces. So we use the
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 20/34] qt5base: add glib support
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (18 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 19/34] qt5base: add D-Bus support Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 21/34] qt5base: add support to build against ICU Thomas Petazzoni
                   ` (13 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/qt5base.mk |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 7988ce2..414410a 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -21,7 +21,6 @@ QT5BASE_INSTALL_STAGING = YES
 QT5BASE_CONFIGURE_OPTS += \
 	-optimized-qmake \
 	-no-kms \
-	-no-glib \
 	-no-cups \
 	-no-nis \
 	-no-libudev \
@@ -95,6 +94,9 @@ QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_PNG),libpng)
 QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_DBUS),-dbus,-no-dbus)
 QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_DBUS),dbus)
 
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_LIBGLIB2),-glib,-no-glib)
+QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_LIBGLIB2),libglib2)
+
 # Build the list of libraries to be installed on the target
 QT5BASE_INSTALL_LIBS_y                                 += Qt5Core
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK)    += Qt5Network
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 21/34] qt5base: add support to build against ICU
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (19 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 20/34] qt5base: add glib support Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 22/34] qt5base: add rPi EGL glue code Thomas Petazzoni
                   ` (12 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Qt5Webkit requires Qt5Base to be built with ICU support, so we add
such support.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/Config.in  |    7 +++++++
 package/qt5/qt5base/qt5base.mk |    4 +++-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
index baf471f..71c2ccd 100644
--- a/package/qt5/qt5base/Config.in
+++ b/package/qt5/qt5base/Config.in
@@ -148,4 +148,11 @@ config BR2_PACKAGE_QT5BASE_DBUS
 	help
 	  This option enables the D-Bus module.
 
+config BR2_PACKAGE_QT5BASE_ICU
+	bool "Enable ICU support"
+	select BR2_PACKAGE_ICU
+	help
+	  This option enables ICU support in Qt5. This is for example
+	  needed for Qt5Webkit.
+
 endif
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 414410a..865377f 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -25,7 +25,6 @@ QT5BASE_CONFIGURE_OPTS += \
 	-no-nis \
 	-no-libudev \
 	-no-iconv \
-	-no-icu \
 	-no-gstreamer \
 	-no-gtkstyle \
 	-system-zlib \
@@ -97,6 +96,9 @@ QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_DBUS),dbus)
 QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_LIBGLIB2),-glib,-no-glib)
 QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_LIBGLIB2),libglib2)
 
+QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_ICU),-icu,-no-icu)
+QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_ICU),icu)
+
 # Build the list of libraries to be installed on the target
 QT5BASE_INSTALL_LIBS_y                                 += Qt5Core
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK)    += Qt5Network
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 22/34] qt5base: add rPi EGL glue code
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (20 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 21/34] qt5base: add support to build against ICU Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 23/34] qt5base: install bundled fonts to target Thomas Petazzoni
                   ` (11 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

From: Floris Bos <bos@je-eigen-domein.nl>

When the rpi-userland package is selected, assume we are targetting
the Raspberry Pi, and add the right platform glue code when building
the Qt5 EGLFS plugin.

Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/qt5base-mkspecs-files.patch |    5 ++++-
 package/qt5/qt5base/qt5base.mk                  |    6 ++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/package/qt5/qt5base/qt5base-mkspecs-files.patch b/package/qt5/qt5base/qt5base-mkspecs-files.patch
index a86d0b1..d5827f6 100644
--- a/package/qt5/qt5base/qt5base-mkspecs-files.patch
+++ b/package/qt5/qt5base/qt5base-mkspecs-files.patch
@@ -14,7 +14,7 @@ Index: b/mkspecs/devices/linux-buildroot-g++/qmake.conf
 ===================================================================
 --- /dev/null
 +++ b/mkspecs/devices/linux-buildroot-g++/qmake.conf
-@@ -0,0 +1,38 @@
+@@ -0,0 +1,41 @@
 +MAKEFILE_GENERATOR      = UNIX
 +CONFIG                  += incremental gdb_dwarf_index
 +QMAKE_INCREMENTAL_STYLE = sublib
@@ -49,6 +49,9 @@ Index: b/mkspecs/devices/linux-buildroot-g++/qmake.conf
 +
 +QMAKE_LIBS             += -lrt -lpthread -ldl
 +
++# device specific glue code
++EGLFS_PLATFORM_HOOKS_SOURCES =
++
 +# Sanity check
 +deviceSanityCheckCompiler()
 +
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 865377f..953e194 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -75,6 +75,10 @@ endif
 ifeq ($(BR2_PACKAGE_QT5BASE_EGLFS),y)
 QT5BASE_CONFIGURE_OPTS += -opengl es2 -eglfs
 QT5BASE_DEPENDENCIES   += libgles libegl
+ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
+QT5BASE_EGLFS_PLATFORM_HOOKS_SOURCES = \
+	$(@D)/mkspecs/devices/linux-rasp-pi-g++/qeglfshooks_pi.cpp
+endif
 else
 QT5BASE_CONFIGURE_OPTS += -no-opengl -no-eglfs
 endif
@@ -125,6 +129,8 @@ define QT5BASE_CONFIGURE_CMDS
 	$(call QT5BASE_CONFIG_SET,CROSS_COMPILE,$(TARGET_CROSS))
 	$(call QT5BASE_CONFIG_SET,COMPILER_CFLAGS,$(TARGET_CFLAGS))
 	$(call QT5BASE_CONFIG_SET,COMPILER_CXXFLAGS,$(TARGET_CXXFLAGS))
+	$(call QT5BASE_CONFIG_SET,EGLFS_PLATFORM_HOOKS_SOURCES, \
+		$(QT5BASE_EGLFS_PLATFORM_HOOKS_SOURCES))
 	(cd $(@D); \
 		PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
 		PKG_CONFIG_LIBDIR="$(STAGING_DIR)/usr/lib/pkgconfig" \
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 23/34] qt5base: install bundled fonts to target
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (21 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 22/34] qt5base: add rPi EGL glue code Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 24/34] qt5: factor Qt5 version Thomas Petazzoni
                   ` (10 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

From: Floris Bos <bos@je-eigen-domein.nl>

If not using font-config, Qt 5 offers a set of standard fonts to
use instead. Install these to target.

Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5base/qt5base.mk |    8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 953e194..31d6dff 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -173,9 +173,17 @@ define QT5BASE_INSTALL_TARGET_PLUGINS
 	fi
 endef
 
+define QT5BASE_INSTALL_TARGET_FONTS
+	if [ -d $(STAGING_DIR)/usr/lib/fonts/ ] ; then \
+		mkdir -p $(TARGET_DIR)/usr/lib/fonts ; \
+		cp -dpfr $(STAGING_DIR)/usr/lib/fonts/* $(TARGET_DIR)/usr/lib/fonts ; \
+	fi
+endef
+
 define QT5BASE_INSTALL_TARGET_CMDS
 	$(QT5BASE_INSTALL_TARGET_LIBS)
 	$(QT5BASE_INSTALL_TARGET_PLUGINS)
+	$(QT5BASE_INSTALL_TARGET_FONTS)
 endef
 
 $(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 24/34] qt5: factor Qt5 version
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (22 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 23/34] qt5base: install bundled fonts to target Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 25/34] qt5/qt5svg: new package Thomas Petazzoni
                   ` (9 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Since the Qt5 version will be the same for all Qt5 modules, factor it
in qt5/qt5.mk as QT5_VERSION.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/qt5.mk             |    1 +
 package/qt5/qt5base/qt5base.mk |    2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/package/qt5/qt5.mk b/package/qt5/qt5.mk
index f220508..0c6d0f9 100644
--- a/package/qt5/qt5.mk
+++ b/package/qt5/qt5.mk
@@ -1,3 +1,4 @@
+QT5_VERSION = 5.0.0
 include package/qt5/*/*.mk
 
 define QT5_LA_PRL_FILES_FIXUP
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 31d6dff..fc08b77 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -4,7 +4,7 @@
 #
 #############################################################
 
-QT5BASE_VERSION = 5.0.0
+QT5BASE_VERSION = $(QT5_VERSION)
 QT5BASE_SITE = http://releases.qt-project.org/qt5/$(QT5BASE_VERSION)/submodules_tar/
 QT5BASE_SOURCE = qtbase-opensource-src-$(QT5BASE_VERSION).tar.xz
 
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 25/34] qt5/qt5svg: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (23 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 24/34] qt5: factor Qt5 version Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 26/34] qt5/qt5script: " Thomas Petazzoni
                   ` (8 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in        |    1 +
 package/qt5/qt5svg/Config.in |   11 ++++++++++
 package/qt5/qt5svg/qt5svg.mk |   47 ++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 59 insertions(+)
 create mode 100644 package/qt5/qt5svg/Config.in
 create mode 100644 package/qt5/qt5svg/qt5svg.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 1c9f8a6..f4d2b45 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -15,4 +15,5 @@ menuconfig BR2_PACKAGE_QT5
 
 if BR2_PACKAGE_QT5
 source "package/qt5/qt5base/Config.in"
+source "package/qt5/qt5svg/Config.in"
 endif
diff --git a/package/qt5/qt5svg/Config.in b/package/qt5/qt5svg/Config.in
new file mode 100644
index 0000000..27e6b05
--- /dev/null
+++ b/package/qt5/qt5svg/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_QT5SVG
+	bool "qt5svg"
+	select BR2_PACKAGE_QT5BASE
+	select BR2_PACKAGE_QT5BASE_GUI
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5svg module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5svg/qt5svg.mk b/package/qt5/qt5svg/qt5svg.mk
new file mode 100644
index 0000000..8db28ba
--- /dev/null
+++ b/package/qt5/qt5svg/qt5svg.mk
@@ -0,0 +1,47 @@
+#############################################################
+#
+# qt5svg
+#
+#############################################################
+
+QT5SVG_VERSION = $(QT5_VERSION)
+QT5SVG_SITE = http://releases.qt-project.org/qt5/$(QT5SVG_VERSION)/submodules_tar/
+QT5SVG_SOURCE = qtsvg-opensource-src-$(QT5SVG_VERSION).tar.xz
+QT5SVG_DEPENDENCIES = qt5base
+QT5SVG_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5SVG_CONFIGURE_OPTS += -opensource -confirm-license
+QT5SVG_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for qt5svg.
+else
+QT5SVG_LICENSE = Commercial license
+QT5SVG_REDISTRIBUTE = NO
+endif
+
+define QT5SVG_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5SVG_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5SVG_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+ifeq ($(BR2_PACKAGE_QT5BASE_WIDGETS),y)
+define QT5SVG_INSTALL_ICONENGINES
+	cp -dpfr $(STAGING_DIR)/usr/lib/qt/plugins/iconengines $(TARGET_DIR)/usr/lib/qt/plugins
+endef
+endif
+define QT5SVG_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5Svg*.so.* $(TARGET_DIR)/usr/lib
+	cp -dpf $(STAGING_DIR)/usr/lib/qt/plugins/imageformats/libqsvg.so $(TARGET_DIR)/usr/lib/qt/plugins/imageformats/
+	$(QT5SVG_INSTALL_ICONENGINES)
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 26/34] qt5/qt5script: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (24 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 25/34] qt5/qt5svg: new package Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 27/34] qt5/qt5imageformats: " Thomas Petazzoni
                   ` (7 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in              |    1 +
 package/qt5/qt5script/Config.in    |   10 +++++++++
 package/qt5/qt5script/qt5script.mk |   41 ++++++++++++++++++++++++++++++++++++
 3 files changed, 52 insertions(+)
 create mode 100644 package/qt5/qt5script/Config.in
 create mode 100644 package/qt5/qt5script/qt5script.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index f4d2b45..3f303e2 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -15,5 +15,6 @@ menuconfig BR2_PACKAGE_QT5
 
 if BR2_PACKAGE_QT5
 source "package/qt5/qt5base/Config.in"
+source "package/qt5/qt5script/Config.in"
 source "package/qt5/qt5svg/Config.in"
 endif
diff --git a/package/qt5/qt5script/Config.in b/package/qt5/qt5script/Config.in
new file mode 100644
index 0000000..3c5d60c
--- /dev/null
+++ b/package/qt5/qt5script/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_QT5SCRIPT
+	bool "qt5script"
+	select BR2_PACKAGE_QT5BASE
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5script module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5script/qt5script.mk b/package/qt5/qt5script/qt5script.mk
new file mode 100644
index 0000000..a009402
--- /dev/null
+++ b/package/qt5/qt5script/qt5script.mk
@@ -0,0 +1,41 @@
+#############################################################
+#
+# qt5script
+#
+#############################################################
+
+QT5SCRIPT_VERSION = $(QT5_VERSION)
+QT5SCRIPT_SITE = http://releases.qt-project.org/qt5/$(QT5SCRIPT_VERSION)/submodules_tar/
+QT5SCRIPT_SOURCE = qtscript-opensource-src-$(QT5SCRIPT_VERSION).tar.xz
+QT5SCRIPT_DEPENDENCIES = qt5base
+QT5SCRIPT_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5SCRIPT_CONFIGURE_OPTS += -opensource -confirm-license
+QT5SCRIPT_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for
+# qt5script.
+else
+QT5SCRIPT_LICENSE = Commercial license
+QT5SCRIPT_REDISTRIBUTE = NO
+endif
+
+define QT5SCRIPT_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5SCRIPT_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5SCRIPT_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+define QT5SCRIPT_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5Script*.so.* $(TARGET_DIR)/usr/lib
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 27/34] qt5/qt5imageformats: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (25 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 26/34] qt5/qt5script: " Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 28/34] qt5/qt5xmlpatterns: " Thomas Petazzoni
                   ` (6 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in                          |    1 +
 package/qt5/qt5imageformats/Config.in          |   10 ++++++
 package/qt5/qt5imageformats/qt5imageformats.mk |   39 ++++++++++++++++++++++++
 3 files changed, 50 insertions(+)
 create mode 100644 package/qt5/qt5imageformats/Config.in
 create mode 100644 package/qt5/qt5imageformats/qt5imageformats.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 3f303e2..397f9c2 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -15,6 +15,7 @@ menuconfig BR2_PACKAGE_QT5
 
 if BR2_PACKAGE_QT5
 source "package/qt5/qt5base/Config.in"
+source "package/qt5/qt5imageformats/Config.in"
 source "package/qt5/qt5script/Config.in"
 source "package/qt5/qt5svg/Config.in"
 endif
diff --git a/package/qt5/qt5imageformats/Config.in b/package/qt5/qt5imageformats/Config.in
new file mode 100644
index 0000000..d37e08f
--- /dev/null
+++ b/package/qt5/qt5imageformats/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_QT5IMAGEFORMATS
+	bool "qt5imageformats"
+	select BR2_PACKAGE_QT5BASE
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5imageformats module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5imageformats/qt5imageformats.mk b/package/qt5/qt5imageformats/qt5imageformats.mk
new file mode 100644
index 0000000..c40d545
--- /dev/null
+++ b/package/qt5/qt5imageformats/qt5imageformats.mk
@@ -0,0 +1,39 @@
+#############################################################
+#
+# qt5imageformats
+#
+#############################################################
+
+QT5IMAGEFORMATS_VERSION = $(QT5_VERSION)
+QT5IMAGEFORMATS_SITE = http://releases.qt-project.org/qt5/$(QT5IMAGEFORMATS_VERSION)/submodules_tar/
+QT5IMAGEFORMATS_SOURCE = qtimageformats-opensource-src-$(QT5IMAGEFORMATS_VERSION).tar.xz
+QT5IMAGEFORMATS_DEPENDENCIES = qt5base
+QT5IMAGEFORMATS_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5IMAGEFORMATS_CONFIGURE_OPTS += -opensource -confirm-license
+QT5IMAGEFORMATS_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for qt5svg.
+else
+QT5IMAGEFORMATS_LICENSE = Commercial license
+QT5IMAGEFORMATS_REDISTRIBUTE = NO
+endif
+
+define QT5IMAGEFORMATS_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5IMAGEFORMATS_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5IMAGEFORMATS_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+endef
+
+define QT5IMAGEFORMATS_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/qt/plugins/imageformats/*.so $(TARGET_DIR)/usr/lib/qt/plugins/imageformats/
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 28/34] qt5/qt5xmlpatterns: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (26 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 27/34] qt5/qt5imageformats: " Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 29/34] qt5/qt5jsbackend: " Thomas Petazzoni
                   ` (5 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in                        |    1 +
 package/qt5/qt5xmlpatterns/Config.in         |   10 +++++++
 package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk |   41 ++++++++++++++++++++++++++
 3 files changed, 52 insertions(+)
 create mode 100644 package/qt5/qt5xmlpatterns/Config.in
 create mode 100644 package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 397f9c2..3979fa5 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -18,4 +18,5 @@ source "package/qt5/qt5base/Config.in"
 source "package/qt5/qt5imageformats/Config.in"
 source "package/qt5/qt5script/Config.in"
 source "package/qt5/qt5svg/Config.in"
+source "package/qt5/qt5xmlpatterns/Config.in"
 endif
diff --git a/package/qt5/qt5xmlpatterns/Config.in b/package/qt5/qt5xmlpatterns/Config.in
new file mode 100644
index 0000000..6ea7466
--- /dev/null
+++ b/package/qt5/qt5xmlpatterns/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_QT5XMLPATTERNS
+	bool "qt5xmlpatterns"
+	select BR2_PACKAGE_QT5BASE
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5xmlpatterns module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk
new file mode 100644
index 0000000..f1d3a50
--- /dev/null
+++ b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk
@@ -0,0 +1,41 @@
+#############################################################
+#
+# qt5xmlpatterns
+#
+#############################################################
+
+QT5XMLPATTERNS_VERSION = $(QT5_VERSION)
+QT5XMLPATTERNS_SITE = http://releases.qt-project.org/qt5/$(QT5XMLPATTERNS_VERSION)/submodules_tar/
+QT5XMLPATTERNS_SOURCE = qtxmlpatterns-opensource-src-$(QT5XMLPATTERNS_VERSION).tar.xz
+QT5XMLPATTERNS_DEPENDENCIES = qt5base
+QT5XMLPATTERNS_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5XMLPATTERNS_CONFIGURE_OPTS += -opensource -confirm-license
+QT5XMLPATTERNS_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for
+# qt5script.
+else
+QT5XMLPATTERNS_LICENSE = Commercial license
+QT5XMLPATTERNS_REDISTRIBUTE = NO
+endif
+
+define QT5XMLPATTERNS_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5XMLPATTERNS_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5XMLPATTERNS_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+define QT5XMLPATTERNS_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5XmlPatterns*.so.* $(TARGET_DIR)/usr/lib
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 29/34] qt5/qt5jsbackend: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (27 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 28/34] qt5/qt5xmlpatterns: " Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 30/34] qt5/qt5declarative: " Thomas Petazzoni
                   ` (4 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in                              |    1 +
 package/qt5/qt5jsbackend/Config.in                 |   10 +++++
 .../qt5/qt5jsbackend/qt5jsbackend-fix-uclibc.patch |   33 ++++++++++++++++
 package/qt5/qt5jsbackend/qt5jsbackend.mk           |   41 ++++++++++++++++++++
 4 files changed, 85 insertions(+)
 create mode 100644 package/qt5/qt5jsbackend/Config.in
 create mode 100644 package/qt5/qt5jsbackend/qt5jsbackend-fix-uclibc.patch
 create mode 100644 package/qt5/qt5jsbackend/qt5jsbackend.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 3979fa5..8a4ed53 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -16,6 +16,7 @@ menuconfig BR2_PACKAGE_QT5
 if BR2_PACKAGE_QT5
 source "package/qt5/qt5base/Config.in"
 source "package/qt5/qt5imageformats/Config.in"
+source "package/qt5/qt5jsbackend/Config.in"
 source "package/qt5/qt5script/Config.in"
 source "package/qt5/qt5svg/Config.in"
 source "package/qt5/qt5xmlpatterns/Config.in"
diff --git a/package/qt5/qt5jsbackend/Config.in b/package/qt5/qt5jsbackend/Config.in
new file mode 100644
index 0000000..89d5067
--- /dev/null
+++ b/package/qt5/qt5jsbackend/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_QT5JSBACKEND
+	bool "qt5jsbackend"
+	select BR2_PACKAGE_QT5BASE
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5jsbackend module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5jsbackend/qt5jsbackend-fix-uclibc.patch b/package/qt5/qt5jsbackend/qt5jsbackend-fix-uclibc.patch
new file mode 100644
index 0000000..50a6dbc
--- /dev/null
+++ b/package/qt5/qt5jsbackend/qt5jsbackend-fix-uclibc.patch
@@ -0,0 +1,33 @@
+Fix build on uClibc
+
+Patch taken from https://code.google.com/p/v8/source/detail?r=12094.
+
+Review URL: https://chromiumcodereview.appspot.com/10784012
+Patch from Remi Duraffort <remi.duraffort@st.com>.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: qt5jsbackend-5.0.0/src/3rdparty/v8/src/platform-linux.cc
+===================================================================
+--- qt5jsbackend-5.0.0.orig/src/3rdparty/v8/src/platform-linux.cc	2012-12-18 20:04:01.000000000 +0100
++++ qt5jsbackend-5.0.0/src/3rdparty/v8/src/platform-linux.cc	2013-03-03 20:31:46.000000000 +0100
+@@ -1030,7 +1030,8 @@
+   sample->fp = reinterpret_cast<Address>(mcontext.gregs[REG_RBP]);
+ #elif V8_HOST_ARCH_ARM
+ // An undefined macro evaluates to 0, so this applies to Android's Bionic also.
+-#if (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3))
++#if (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3) && \
++     !defined(__UCLIBC__))
+   sample->pc = reinterpret_cast<Address>(mcontext.gregs[R15]);
+   sample->sp = reinterpret_cast<Address>(mcontext.gregs[R13]);
+   sample->fp = reinterpret_cast<Address>(mcontext.gregs[R11]);
+@@ -1038,7 +1039,8 @@
+   sample->pc = reinterpret_cast<Address>(mcontext.arm_pc);
+   sample->sp = reinterpret_cast<Address>(mcontext.arm_sp);
+   sample->fp = reinterpret_cast<Address>(mcontext.arm_fp);
+-#endif  // (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3))
++#endif  // (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3) &&
++        // !defined(__UCLIBC__))
+ #elif V8_HOST_ARCH_MIPS
+   sample->pc = reinterpret_cast<Address>(mcontext.pc);
+   sample->sp = reinterpret_cast<Address>(mcontext.gregs[29]);
diff --git a/package/qt5/qt5jsbackend/qt5jsbackend.mk b/package/qt5/qt5jsbackend/qt5jsbackend.mk
new file mode 100644
index 0000000..74c19be
--- /dev/null
+++ b/package/qt5/qt5jsbackend/qt5jsbackend.mk
@@ -0,0 +1,41 @@
+#############################################################
+#
+# qt5jsbackend
+#
+#############################################################
+
+QT5JSBACKEND_VERSION = $(QT5_VERSION)
+QT5JSBACKEND_SITE = http://releases.qt-project.org/qt5/$(QT5JSBACKEND_VERSION)/submodules_tar/
+QT5JSBACKEND_SOURCE = qtjsbackend-opensource-src-$(QT5JSBACKEND_VERSION).tar.xz
+QT5JSBACKEND_DEPENDENCIES = qt5base
+QT5JSBACKEND_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5JSBACKEND_CONFIGURE_OPTS += -opensource -confirm-license
+QT5JSBACKEND_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for
+# qt5script.
+else
+QT5JSBACKEND_LICENSE = Commercial license
+QT5JSBACKEND_REDISTRIBUTE = NO
+endif
+
+define QT5JSBACKEND_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5JSBACKEND_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5JSBACKEND_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+define QT5JSBACKEND_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5V8*.so.* $(TARGET_DIR)/usr/lib
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 30/34] qt5/qt5declarative: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (28 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 29/34] qt5/qt5jsbackend: " Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 31/34] qt5/qt5graphicaleffects: " Thomas Petazzoni
                   ` (3 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in                        |    1 +
 package/qt5/qt5declarative/Config.in         |   18 ++++++++++
 package/qt5/qt5declarative/qt5declarative.mk |   48 ++++++++++++++++++++++++++
 3 files changed, 67 insertions(+)
 create mode 100644 package/qt5/qt5declarative/Config.in
 create mode 100644 package/qt5/qt5declarative/qt5declarative.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 8a4ed53..ff98b9e 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -15,6 +15,7 @@ menuconfig BR2_PACKAGE_QT5
 
 if BR2_PACKAGE_QT5
 source "package/qt5/qt5base/Config.in"
+source "package/qt5/qt5declarative/Config.in"
 source "package/qt5/qt5imageformats/Config.in"
 source "package/qt5/qt5jsbackend/Config.in"
 source "package/qt5/qt5script/Config.in"
diff --git a/package/qt5/qt5declarative/Config.in b/package/qt5/qt5declarative/Config.in
new file mode 100644
index 0000000..f862b94
--- /dev/null
+++ b/package/qt5/qt5declarative/Config.in
@@ -0,0 +1,18 @@
+config BR2_PACKAGE_QT5DECLARATIVE
+	bool "qt5declarative"
+	select BR2_PACKAGE_QT5XMLPATTERNS
+	select BR2_PACKAGE_QT5JSBACKEND
+	select BR2_PACKAGE_QT5BASE
+	select BR2_PACKAGE_QT5BASE_EGLFS
+	depends on BR2_PACKAGE_HAS_OPENGL_EGL
+	depends on BR2_PACKAGE_HAS_OPENGL_ES
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5declarative module.
+
+	  http://qt-project.org
+
+comment "qt5declarative requires an OpenGL-capable backend"
+	depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES
diff --git a/package/qt5/qt5declarative/qt5declarative.mk b/package/qt5/qt5declarative/qt5declarative.mk
new file mode 100644
index 0000000..02fae6a
--- /dev/null
+++ b/package/qt5/qt5declarative/qt5declarative.mk
@@ -0,0 +1,48 @@
+#############################################################
+#
+# qt5declarative
+#
+#############################################################
+
+QT5DECLARATIVE_VERSION = $(QT5_VERSION)
+QT5DECLARATIVE_SITE = http://releases.qt-project.org/qt5/$(QT5DECLARATIVE_VERSION)/submodules_tar/
+QT5DECLARATIVE_SOURCE = qtdeclarative-opensource-src-$(QT5DECLARATIVE_VERSION).tar.xz
+QT5DECLARATIVE_DEPENDENCIES = qt5base qt5xmlpatterns qt5jsbackend
+QT5DECLARATIVE_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5DECLARATIVE_CONFIGURE_OPTS += -opensource -confirm-license
+QT5DECLARATIVE_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for
+# qt5script.
+else
+QT5DECLARATIVE_LICENSE = Commercial license
+QT5DECLARATIVE_REDISTRIBUTE = NO
+endif
+
+define QT5DECLARATIVE_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5DECLARATIVE_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
+		sub-src-all sub-tools-all
+endef
+
+define QT5DECLARATIVE_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
+		sub-src-install_subtargets \
+		sub-tools-install_subtargets
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+define QT5DECLARATIVE_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5Qml*.so.* $(TARGET_DIR)/usr/lib
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5Quick*.so.* $(TARGET_DIR)/usr/lib
+	cp -dpf $(STAGING_DIR)/usr/bin/qml* $(TARGET_DIR)/usr/bin
+	cp -dpfr $(STAGING_DIR)/usr/lib/qt/plugins/qml* $(TARGET_DIR)/usr/lib/qt/plugins
+	cp -dpfr $(STAGING_DIR)/usr/qml $(TARGET_DIR)/usr
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 31/34] qt5/qt5graphicaleffects: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (29 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 30/34] qt5/qt5declarative: " Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 32/34] qt5/qt5multimedia: " Thomas Petazzoni
                   ` (2 subsequent siblings)
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in                              |    1 +
 package/qt5/qt5graphicaleffects/Config.in          |   11 ++++++
 .../qt5/qt5graphicaleffects/qt5graphicaleffects.mk |   40 ++++++++++++++++++++
 3 files changed, 52 insertions(+)
 create mode 100644 package/qt5/qt5graphicaleffects/Config.in
 create mode 100644 package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index ff98b9e..59234dd 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -16,6 +16,7 @@ menuconfig BR2_PACKAGE_QT5
 if BR2_PACKAGE_QT5
 source "package/qt5/qt5base/Config.in"
 source "package/qt5/qt5declarative/Config.in"
+source "package/qt5/qt5graphicaleffects/Config.in"
 source "package/qt5/qt5imageformats/Config.in"
 source "package/qt5/qt5jsbackend/Config.in"
 source "package/qt5/qt5script/Config.in"
diff --git a/package/qt5/qt5graphicaleffects/Config.in b/package/qt5/qt5graphicaleffects/Config.in
new file mode 100644
index 0000000..79ca432
--- /dev/null
+++ b/package/qt5/qt5graphicaleffects/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_QT5GRAPHICALEFFECTS
+	bool "qt5graphicaleffects"
+	select BR2_PACKAGE_QT5BASE
+	select BR2_PACKAGE_QT5DECLARATIVE
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5graphicaleffects module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk
new file mode 100644
index 0000000..c4b7231
--- /dev/null
+++ b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk
@@ -0,0 +1,40 @@
+#############################################################
+#
+# qt5graphicaleffects
+#
+#############################################################
+
+QT5GRAPHICALEFFECTS_VERSION = $(QT5_VERSION)
+QT5GRAPHICALEFFECTS_SITE = http://releases.qt-project.org/qt5/$(QT5GRAPHICALEFFECTS_VERSION)/submodules_tar/
+QT5GRAPHICALEFFECTS_SOURCE = qtgraphicaleffects-opensource-src-$(QT5GRAPHICALEFFECTS_VERSION).tar.xz
+QT5GRAPHICALEFFECTS_DEPENDENCIES = qt5base qt5declarative
+QT5GRAPHICALEFFECTS_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5GRAPHICALEFFECTS_CONFIGURE_OPTS += -opensource -confirm-license
+QT5GRAPHICALEFFECTS_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for
+# qt5script.
+else
+QT5GRAPHICALEFFECTS_LICENSE = Commercial license
+QT5GRAPHICALEFFECTS_REDISTRIBUTE = NO
+endif
+
+define QT5GRAPHICALEFFECTS_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5GRAPHICALEFFECTS_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5GRAPHICALEFFECTS_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+endef
+
+define QT5GRAPHICALEFFECTS_INSTALL_TARGET_CMDS
+	cp -dpfr $(STAGING_DIR)/usr/qml/QtGraphicalEffects $(TARGET_DIR)/usr/qml
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 32/34] qt5/qt5multimedia: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (30 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 31/34] qt5/qt5graphicaleffects: " Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 33/34] qt5/qt5quick1: " Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 34/34] qt5/qt5webkit: " Thomas Petazzoni
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in                      |    1 +
 package/qt5/qt5multimedia/Config.in        |   11 +++++++
 package/qt5/qt5multimedia/qt5multimedia.mk |   43 ++++++++++++++++++++++++++++
 3 files changed, 55 insertions(+)
 create mode 100644 package/qt5/qt5multimedia/Config.in
 create mode 100644 package/qt5/qt5multimedia/qt5multimedia.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 59234dd..e8e581c 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -19,6 +19,7 @@ source "package/qt5/qt5declarative/Config.in"
 source "package/qt5/qt5graphicaleffects/Config.in"
 source "package/qt5/qt5imageformats/Config.in"
 source "package/qt5/qt5jsbackend/Config.in"
+source "package/qt5/qt5multimedia/Config.in"
 source "package/qt5/qt5script/Config.in"
 source "package/qt5/qt5svg/Config.in"
 source "package/qt5/qt5xmlpatterns/Config.in"
diff --git a/package/qt5/qt5multimedia/Config.in b/package/qt5/qt5multimedia/Config.in
new file mode 100644
index 0000000..8024798
--- /dev/null
+++ b/package/qt5/qt5multimedia/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_QT5MULTIMEDIA
+	bool "qt5multimedia"
+	select BR2_PACKAGE_QT5BASE
+	select BR2_PACKAGE_QT5DECLARATIVE
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5multimedia module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5multimedia/qt5multimedia.mk b/package/qt5/qt5multimedia/qt5multimedia.mk
new file mode 100644
index 0000000..5248b2e
--- /dev/null
+++ b/package/qt5/qt5multimedia/qt5multimedia.mk
@@ -0,0 +1,43 @@
+#############################################################
+#
+# qt5multimedia
+#
+#############################################################
+
+QT5MULTIMEDIA_VERSION = $(QT5_VERSION)
+QT5MULTIMEDIA_SITE = http://releases.qt-project.org/qt5/$(QT5MULTIMEDIA_VERSION)/submodules_tar/
+QT5MULTIMEDIA_SOURCE = qtmultimedia-opensource-src-$(QT5MULTIMEDIA_VERSION).tar.xz
+QT5MULTIMEDIA_DEPENDENCIES = qt5base qt5declarative
+QT5MULTIMEDIA_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5MULTIMEDIA_CONFIGURE_OPTS += -opensource -confirm-license
+QT5MULTIMEDIA_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for
+# qt5script.
+else
+QT5MULTIMEDIA_LICENSE = Commercial license
+QT5MULTIMEDIA_REDISTRIBUTE = NO
+endif
+
+define QT5MULTIMEDIA_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5MULTIMEDIA_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5MULTIMEDIA_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+define QT5MULTIMEDIA_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5Multimedia*.so.* $(TARGET_DIR)/usr/lib
+	cp -dpfr $(STAGING_DIR)/usr/lib/qt/plugins/* $(TARGET_DIR)/usr/lib/qt/plugins
+	cp -dpfr $(STAGING_DIR)/usr/qml/* $(TARGET_DIR)/usr/qml
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 33/34] qt5/qt5quick1: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (31 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 32/34] qt5/qt5multimedia: " Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  2013-03-06 20:23 ` [Buildroot] [PATCH 34/34] qt5/qt5webkit: " Thomas Petazzoni
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in              |    1 +
 package/qt5/qt5quick1/Config.in    |   15 ++++++++++++
 package/qt5/qt5quick1/qt5quick1.mk |   45 ++++++++++++++++++++++++++++++++++++
 3 files changed, 61 insertions(+)
 create mode 100644 package/qt5/qt5quick1/Config.in
 create mode 100644 package/qt5/qt5quick1/qt5quick1.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index e8e581c..0db6c45 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -20,6 +20,7 @@ source "package/qt5/qt5graphicaleffects/Config.in"
 source "package/qt5/qt5imageformats/Config.in"
 source "package/qt5/qt5jsbackend/Config.in"
 source "package/qt5/qt5multimedia/Config.in"
+source "package/qt5/qt5quick1/Config.in"
 source "package/qt5/qt5script/Config.in"
 source "package/qt5/qt5svg/Config.in"
 source "package/qt5/qt5xmlpatterns/Config.in"
diff --git a/package/qt5/qt5quick1/Config.in b/package/qt5/qt5quick1/Config.in
new file mode 100644
index 0000000..157038c
--- /dev/null
+++ b/package/qt5/qt5quick1/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_QT5QUICK1
+	bool "qt5quick1"
+	select BR2_PACKAGE_QT5BASE
+	select BR2_PACKAGE_QT5SCRIPT
+	select BR2_PACKAGE_QT5XMLPATTERNS
+	select BR2_PACKAGE_QT5DECLARATIVE
+	select BR2_PACKAGE_QT5JSBACKEND
+	select BR2_PACKAGE_QT5WEBKIT
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5quick1 module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5quick1/qt5quick1.mk b/package/qt5/qt5quick1/qt5quick1.mk
new file mode 100644
index 0000000..e076123
--- /dev/null
+++ b/package/qt5/qt5quick1/qt5quick1.mk
@@ -0,0 +1,45 @@
+#############################################################
+#
+# qt5quick1
+#
+#############################################################
+
+QT5QUICK1_VERSION = $(QT5_VERSION)
+QT5QUICK1_SITE = http://releases.qt-project.org/qt5/$(QT5QUICK1_VERSION)/submodules_tar/
+QT5QUICK1_SOURCE = qtquick1-opensource-src-$(QT5QUICK1_VERSION).tar.xz
+QT5QUICK1_DEPENDENCIES = qt5base qt5xmlpatterns qt5script qt5declarative qt5jsbackend qt5webkit
+QT5QUICK1_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5QUICK1_CONFIGURE_OPTS += -opensource -confirm-license
+QT5QUICK1_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for
+# qt5script.
+else
+QT5QUICK1_LICENSE = Commercial license
+QT5QUICK1_REDISTRIBUTE = NO
+endif
+
+define QT5QUICK1_CONFIGURE_CMDS
+	(cd $(@D); $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5QUICK1_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5QUICK1_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+define QT5QUICK1_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5Declarative.so.* $(TARGET_DIR)/usr/lib
+	cp -dpf $(STAGING_DIR)/usr/bin/qmlviewer $(TARGET_DIR)/usr/bin
+	cp -dpf $(STAGING_DIR)/usr/lib/qt/plugins/qmltooling/libqmldbg_inspector.so $(TARGET_DIR)/usr/lib/qt/plugins/qmltooling/
+	cp -dpf $(STAGING_DIR)/usr/lib/qt/plugins/qmltooling/libqmldbg_tcp_qtdeclarative.so $(TARGET_DIR)/usr/lib/qt/plugins/qmltooling/
+	cp -dpfr $(STAGING_DIR)/usr/imports $(TARGET_DIR)/usr
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 34/34] qt5/qt5webkit: new package
  2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
                   ` (32 preceding siblings ...)
  2013-03-06 20:23 ` [Buildroot] [PATCH 33/34] qt5/qt5quick1: " Thomas Petazzoni
@ 2013-03-06 20:23 ` Thomas Petazzoni
  33 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 20:23 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/qt5/Config.in              |    1 +
 package/qt5/qt5webkit/Config.in    |   12 ++++++++++
 package/qt5/qt5webkit/qt5webkit.mk |   43 ++++++++++++++++++++++++++++++++++++
 3 files changed, 56 insertions(+)
 create mode 100644 package/qt5/qt5webkit/Config.in
 create mode 100644 package/qt5/qt5webkit/qt5webkit.mk

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 0db6c45..5662f55 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -23,5 +23,6 @@ source "package/qt5/qt5multimedia/Config.in"
 source "package/qt5/qt5quick1/Config.in"
 source "package/qt5/qt5script/Config.in"
 source "package/qt5/qt5svg/Config.in"
+source "package/qt5/qt5webkit/Config.in"
 source "package/qt5/qt5xmlpatterns/Config.in"
 endif
diff --git a/package/qt5/qt5webkit/Config.in b/package/qt5/qt5webkit/Config.in
new file mode 100644
index 0000000..17ee3ab
--- /dev/null
+++ b/package/qt5/qt5webkit/Config.in
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_QT5WEBKIT
+	bool "qt5webkit"
+	select BR2_PACKAGE_QT5BASE
+	select BR2_PACKAGE_QT5BASE_ICU
+	select BR2_PACKAGE_SQLITE
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  This package corresponds to the qt5webkit module.
+
+	  http://qt-project.org
diff --git a/package/qt5/qt5webkit/qt5webkit.mk b/package/qt5/qt5webkit/qt5webkit.mk
new file mode 100644
index 0000000..d577cf8
--- /dev/null
+++ b/package/qt5/qt5webkit/qt5webkit.mk
@@ -0,0 +1,43 @@
+#############################################################
+#
+# qt5webkit
+#
+#############################################################
+
+QT5WEBKIT_VERSION = $(QT5_VERSION)
+QT5WEBKIT_SITE = http://releases.qt-project.org/qt5/$(QT5WEBKIT_VERSION)/submodules_tar/
+QT5WEBKIT_SOURCE = qtwebkit-opensource-src-$(QT5WEBKIT_VERSION).tar.xz
+QT5WEBKIT_DEPENDENCIES = qt5base sqlite host-ruby host-gperf
+QT5WEBKIT_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5WEBKIT_CONFIGURE_OPTS += -opensource -confirm-license
+QT5WEBKIT_LICENSE = LGPLv2.1 or GPLv3.0
+# Here we would like to get license files from qt5base, but qt5base
+# may not be extracted at the time we get the legal-info for
+# qt5script.
+else
+QT5WEBKIT_LICENSE = Commercial license
+QT5WEBKIT_REDISTRIBUTE = NO
+endif
+
+define QT5WEBKIT_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5WEBKIT_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5WEBKIT_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+define QT5WEBKIT_INSTALL_TARGET_CMDS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5WebKit*.so.* $(TARGET_DIR)/usr/lib
+	cp -dpf $(@D)/bin/* $(TARGET_DIR)/usr/bin/
+	cp -dpfr $(STAGING_DIR)/usr/qml/QtWebKit $(TARGET_DIR)/usr/qml/
+endef
+
+$(eval $(generic-package))
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 01/34] pcre: add support for 16 bits and 32 bits variants
  2013-03-06 20:22 ` [Buildroot] [PATCH 01/34] pcre: add support for 16 bits and 32 bits variants Thomas Petazzoni
@ 2013-03-06 20:54   ` Peter Korsgaard
  0 siblings, 0 replies; 49+ messages in thread
From: Peter Korsgaard @ 2013-03-06 20:54 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Until now, we have been building only the 8bits PCRE
 Thomas> variant. However, Qt5 requires the 16bits variant. This commit
 Thomas> therefore adds support to build the 16bits and 32bits variants
 Thomas> of PCRE. In order to preserve backward compatibility, the 8bits
 Thomas> variant is automatically chosen if no specific variant is
 Thomas> defined.

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 02/34] x11r7/xcb-util: bump to 0.3.9
  2013-03-06 20:22 ` [Buildroot] [PATCH 02/34] x11r7/xcb-util: bump to 0.3.9 Thomas Petazzoni
@ 2013-03-06 20:54   ` Peter Korsgaard
  0 siblings, 0 replies; 49+ messages in thread
From: Peter Korsgaard @ 2013-03-06 20:54 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 03/34] x11r7/xcb-util-wm: new package
  2013-03-06 20:22 ` [Buildroot] [PATCH 03/34] x11r7/xcb-util-wm: new package Thomas Petazzoni
@ 2013-03-06 20:59   ` Peter Korsgaard
  0 siblings, 0 replies; 49+ messages in thread
From: Peter Korsgaard @ 2013-03-06 20:59 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 Thomas> ---
 Thomas>  package/x11r7/Config.in                  |    1 +
 Thomas>  package/x11r7/xcb-util-wm/Config.in      |   15 +++++++++++++++
 Thomas>  package/x11r7/xcb-util-wm/xcb-util-wm.mk |   13 +++++++++++++
 Thomas>  3 files changed, 29 insertions(+)
 Thomas>  create mode 100644 package/x11r7/xcb-util-wm/Config.in
 Thomas>  create mode 100644 package/x11r7/xcb-util-wm/xcb-util-wm.mk

 Thomas> diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in
 Thomas> index 706574c..2abd593 100644
 Thomas> --- a/package/x11r7/Config.in
 Thomas> +++ b/package/x11r7/Config.in
 Thomas> @@ -16,6 +16,7 @@ if BR2_PACKAGE_XORG7
 Thomas>  		source package/x11r7/mesa3d/Config.in
 Thomas>  		source package/x11r7/xcb-util/Config.in
 Thomas>  		source package/x11r7/xcb-util-keysyms/Config.in
 Thomas> +		source package/x11r7/xcb-util-wm/Config.in
 Thomas>  		source package/x11r7/xlib_libFS/Config.in
 Thomas>  		source package/x11r7/xlib_libICE/Config.in
 Thomas>  		source package/x11r7/xlib_libSM/Config.in
 Thomas> diff --git a/package/x11r7/xcb-util-wm/Config.in b/package/x11r7/xcb-util-wm/Config.in
 Thomas> new file mode 100644
 Thomas> index 0000000..491e7a3
 Thomas> --- /dev/null
 Thomas> +++ b/package/x11r7/xcb-util-wm/Config.in
 Thomas> @@ -0,0 +1,15 @@
 Thomas> +config BR2_PACKAGE_XCB_UTIL_WM
 Thomas> +	bool "xcb-util-wm"
 Thomas> +	help

Doesn't this need to depend on libxcb or atleast host-pkgconf?

checking for XCB... no
configure: error: in `/home/peko/source/buildroot/output/build/xcb-util-wm-0.3.9':
configure: error: The pkg-config script could not be found or is too old.  Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.

Alternatively, you may set the environment variables XCB_CFLAGS
and XCB_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See `config.log' for more details
make: *** [/home/peko/source/buildroot/output/build/xcb-util-wm-0.3.9/.stamp_configured] Error 1

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 04/34] x11r7/xcb-util-image: new package
  2013-03-06 20:22 ` [Buildroot] [PATCH 04/34] x11r7/xcb-util-image: " Thomas Petazzoni
@ 2013-03-06 21:00   ` Peter Korsgaard
  0 siblings, 0 replies; 49+ messages in thread
From: Peter Korsgaard @ 2013-03-06 21:00 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 Thomas> ---
 Thomas>  package/x11r7/Config.in                        |    1 +
 Thomas>  package/x11r7/xcb-util-image/Config.in         |   15 +++++++++++++++
 Thomas>  package/x11r7/xcb-util-image/xcb-util-image.mk |   14 ++++++++++++++
 Thomas>  3 files changed, 30 insertions(+)
 Thomas>  create mode 100644 package/x11r7/xcb-util-image/Config.in
 Thomas>  create mode 100644 package/x11r7/xcb-util-image/xcb-util-image.mk

 Thomas> diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in
 Thomas> index 2abd593..5d0f991 100644
 Thomas> --- a/package/x11r7/Config.in
 Thomas> +++ b/package/x11r7/Config.in
 Thomas> @@ -15,6 +15,7 @@ if BR2_PACKAGE_XORG7
 Thomas>  		source package/x11r7/libxcb/Config.in
 Thomas>  		source package/x11r7/mesa3d/Config.in
 Thomas>  		source package/x11r7/xcb-util/Config.in
 Thomas> +		source package/x11r7/xcb-util-image/Config.in
 Thomas>  		source package/x11r7/xcb-util-keysyms/Config.in
 Thomas>  		source package/x11r7/xcb-util-wm/Config.in
 Thomas>  		source package/x11r7/xlib_libFS/Config.in
 Thomas> diff --git a/package/x11r7/xcb-util-image/Config.in b/package/x11r7/xcb-util-image/Config.in
 Thomas> new file mode 100644
 Thomas> index 0000000..31fc61a
 Thomas> --- /dev/null
 Thomas> +++ b/package/x11r7/xcb-util-image/Config.in
 Thomas> @@ -0,0 +1,15 @@
 Thomas> +config BR2_PACKAGE_XCB_UTIL_IMAGE
 Thomas> +	bool "xcb-util-image"
 Thomas> +	select BR2_PACKAGE_XCB_UTIL

Same here:

checking for XCB... no
configure: error: in `/home/peko/source/buildroot/output/build/xcb-util-0.3.9':
configure: error: The pkg-config script could not be found or is too old.  Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.

Alternatively, you may set the environment variables XCB_CFLAGS
and XCB_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See `config.log' for more details
make: *** [/home/peko/source/buildroot/output/build/xcb-util-0.3.9/.stamp_configured] Error 1

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 05/34] package: create virtual package for libGLES, libOpenVG and libEGL
  2013-03-06 20:22 ` [Buildroot] [PATCH 05/34] package: create virtual package for libGLES, libOpenVG and libEGL Thomas Petazzoni
@ 2013-03-06 21:10   ` Peter Korsgaard
  2013-03-06 21:27     ` Thomas Petazzoni
  0 siblings, 1 reply; 49+ messages in thread
From: Peter Korsgaard @ 2013-03-06 21:10 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Those acceleration libraries typically have multiple implementations:
 Thomas> some are free (Mesa), some are proprietary (generally SoC specific).

 Thomas> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 Thomas> ---
 Thomas>  package/Config.in                     |    1 +
 Thomas>  package/opengl/Config.in              |    8 ++++++++
 Thomas>  package/opengl/libegl/libegl.mk       |   16 ++++++++++++++++
 Thomas>  package/opengl/libgles/libgles.mk     |   16 ++++++++++++++++
 Thomas>  package/opengl/libopenvg/libopenvg.mk |   16 ++++++++++++++++
 Thomas>  package/opengl/opengl.mk              |    1 +
 Thomas>  6 files changed, 58 insertions(+)
 Thomas>  create mode 100644 package/opengl/Config.in
 Thomas>  create mode 100644 package/opengl/libegl/libegl.mk
 Thomas>  create mode 100644 package/opengl/libgles/libgles.mk
 Thomas>  create mode 100644 package/opengl/libopenvg/libopenvg.mk
 Thomas>  create mode 100644 package/opengl/opengl.mk

Committed, thanks.

I personally don't really like the opengl subdir, and I think we need to
be clear about what we mean when we say opengles (E.G. v1/v2/v3), but we
can fix that up later.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 06/34] rpi-userland: provides OpenGL ES, EGL and OpenVG
  2013-03-06 20:22 ` [Buildroot] [PATCH 06/34] rpi-userland: provides OpenGL ES, EGL and OpenVG Thomas Petazzoni
@ 2013-03-06 21:23   ` Peter Korsgaard
  0 siblings, 0 replies; 49+ messages in thread
From: Peter Korsgaard @ 2013-03-06 21:23 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Committed, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 05/34] package: create virtual package for libGLES, libOpenVG and libEGL
  2013-03-06 21:10   ` Peter Korsgaard
@ 2013-03-06 21:27     ` Thomas Petazzoni
  2013-03-06 21:37       ` Peter Korsgaard
  0 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-06 21:27 UTC (permalink / raw)
  To: buildroot

Dear Peter Korsgaard,

On Wed, 06 Mar 2013 22:10:21 +0100, Peter Korsgaard wrote:

> I personally don't really like the opengl subdir, and I think we need to
> be clear about what we mean when we say opengles (E.G. v1/v2/v3), but we
> can fix that up later.

Yes, I agree with those comments. We can move things out of the opengl/
subdir as an immediate follow-up. As per the version thing, it maybe
can wait until we really have a version problem, no?

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 05/34] package: create virtual package for libGLES, libOpenVG and libEGL
  2013-03-06 21:27     ` Thomas Petazzoni
@ 2013-03-06 21:37       ` Peter Korsgaard
  0 siblings, 0 replies; 49+ messages in thread
From: Peter Korsgaard @ 2013-03-06 21:37 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Dear Peter Korsgaard,
 Thomas> On Wed, 06 Mar 2013 22:10:21 +0100, Peter Korsgaard wrote:

 >> I personally don't really like the opengl subdir, and I think we need to
 >> be clear about what we mean when we say opengles (E.G. v1/v2/v3), but we
 >> can fix that up later.

 Thomas> Yes, I agree with those comments. We can move things out of the
 Thomas> opengl/ subdir as an immediate follow-up. As per the version
 Thomas> thing, it maybe can wait until we really have a version
 Thomas> problem, no?

Well, yes - But I would like to not rename symbols once they have been
in a release unless we really have to, so I would prefer to think about
the version issue sooner rather than later.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 13/34] qt5base: new package
  2013-03-06 20:22 ` [Buildroot] [PATCH 13/34] qt5base: new package Thomas Petazzoni
@ 2013-03-07  6:00   ` Alexander Lukichev
  2013-03-07  8:33     ` Thomas Petazzoni
  0 siblings, 1 reply; 49+ messages in thread
From: Alexander Lukichev @ 2013-03-07  6:00 UTC (permalink / raw)
  To: buildroot

Hi, Thomas!

On 03/06/2013 10:22 PM, Thomas Petazzoni wrote:
> +# qt5base
> +#
> +#############################################################
> +
> +QT5BASE_VERSION = 5.0.0

  Why not 5.0.1, which was rolled out quite quickly after 5.0.0
with fixes for many bugs? Please see

  http://blog.qt.digia.com/blog/2013/01/31/qt-5-0-1-released/

and e.g.

  https://qt.gitorious.org/qt/qtbase/blobs/release/dist/changes-5.0.1

for some details.

--
Best regards,
  Alexander Lukichev
 

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 13/34] qt5base: new package
  2013-03-07  6:00   ` Alexander Lukichev
@ 2013-03-07  8:33     ` Thomas Petazzoni
  0 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-07  8:33 UTC (permalink / raw)
  To: buildroot

Dear Alexander Lukichev,

On Thu, 07 Mar 2013 08:00:53 +0200, Alexander Lukichev wrote:

>   Why not 5.0.1, which was rolled out quite quickly after 5.0.0
> with fixes for many bugs? Please see
> 
>   http://blog.qt.digia.com/blog/2013/01/31/qt-5-0-1-released/
> 
> and e.g.
> 
>   https://qt.gitorious.org/qt/qtbase/blobs/release/dist/changes-5.0.1

Good point, I'll update the patch set to 5.0.1, thanks!

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 14/34] qt5base: add GUI support
  2013-03-06 20:22 ` [Buildroot] [PATCH 14/34] qt5base: add GUI support Thomas Petazzoni
@ 2013-03-07 13:10   ` Lionel Orry
  2013-03-07 13:11     ` Thomas Petazzoni
  0 siblings, 1 reply; 49+ messages in thread
From: Lionel Orry @ 2013-03-07 13:10 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

On Wed, Mar 6, 2013 at 9:22 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> ---
>  package/qt5/qt5base/Config.in  |   44 ++++++++++++++++++++++++++++++++++++++++
>  package/qt5/qt5base/qt5base.mk |   29 +++++++++++++++++++++-----
>  2 files changed, 68 insertions(+), 5 deletions(-)
>
> diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
> index 4cd6ce0..801ef6f 100644
> --- a/package/qt5/qt5base/Config.in
> +++ b/package/qt5/qt5base/Config.in
> @@ -53,4 +53,48 @@ config BR2_PACKAGE_QT5BASE_XML
>         help
>           This options enables the Qt5Xml library.
>
> +config BR2_PACKAGE_QT5BASE_GUI
> +       bool "gui module"
> +       # At least one graphic backend must be enabled, so enable
> +       # linuxfb if nothing is enabled.
> +       select BR2_PACKAGE_QT5BASE_LINUXFB if \
> +              !BR2_PACKAGE_QT5BASE_DIRECTFB && \
> +              !BR2_PACKAGE_QT5BASE_XCB
> +       help
> +         This option enables the Qt5Gui library.
> +
> +if BR2_PACKAGE_QT5BASE_GUI
> +
> +config BR2_PACKAGE_QT5BASE_WIDGETS
> +       bool "widgets module"
> +       help
> +         This option enables the Qt5Widgets library.
> +
> +config BR2_PACKAGE_QT5BASE_LINUXFB
> +       bool "linuxfb support"
> +
> +config BR2_PACKAGE_QT5BASE_DIRECTFB
> +       bool "directfb support"
> +       select BR2_PACKAGE_DIRECTFB
> +
> +config BR2_PACKAGE_QT5BASE_XCB
> +       bool "X.org XCB support"
> +       depends on BR2_PACKAGE_XORG7
> +       select BR2_PACKAGE_LIBX11
> +       select BR2_PACKAGE_LIBXCB
> +       select BR2_PACKAGE_XCB_UTIL_IMAGE
> +       select BR2_PACKAGE_XCB_UTIL_KEYSYMS
> +       select BR2_PACKAGE_XCB_UTIL_WM
> +
> +comment "X.org XCB backend available if X.org is enabled"
> +       depends on !BR2_PACKAGE_XORG7
> +
> +config BR2_PACKAGE_QT5BASE_PRINTSUPPORT
> +       bool "print support module"
> +       select BR2_PACKAGE_QT5BASE_WIDGETS
> +       help
> +         This option enables the Qt5PrintSupport
> +
> +endif
> +
>  endif
> diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
> index 094ded1..7213238 100644
> --- a/package/qt5/qt5base/qt5base.mk
> +++ b/package/qt5/qt5base/qt5base.mk
> @@ -20,13 +20,8 @@ QT5BASE_INSTALL_STAGING = YES
>  #    want to use the one packaged in Buildroot
>  QT5BASE_CONFIGURE_OPTS += \
>         -optimized-qmake \
> -       -no-linuxfb \
> -       -no-xcb \
> -       -no-directfb \
>         -no-eglfs \
>         -no-kms \
> -       -no-gui \
> -       -no-widgets \
>         -no-opengl \
>         -no-glib \
>         -no-cups \
> @@ -61,6 +56,26 @@ QT5BASE_LICENSE = Commercial license
>  QT5BASE_REDISTRIBUTE = NO
>  endif
>
> +# We have to use --enable-linuxfb, otherwise Qt thinks that -linuxfb
> +# is to add a link against the "inuxfb" library.
> +QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-gui,-no-gui)
> +QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_WIDGETS),-widgets,-no-widgets)
> +QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_LINUXFB),--enable-linuxfb,-no-linuxfb)
> +QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),-directfb,-no-directfb)
> +QT5BASE_DEPENDENCIES   += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),directfb)
> +
> +ifeq ($(BR2_PACKAGE_QT5BASE_XCB),y)
> +QT5BASE_CONFIGURE_OPTS += -xcb
> +QT5BASE_DEPENDENCIES   += \
> +       libxcb \
> +       xcb-util-wm \
> +       xcb-util-image \
> +       xcb-util-keysyms \
> +       xlib_libX11
> +else
> +QT5_BASE_CONFIGURE_OPTS += -no-xcb

typo here: should be

QT5BASE_CONFIGURE_OPTS += -no-xcb

> +endif
> +
>  # Build the list of libraries to be installed on the target
>  QT5BASE_INSTALL_LIBS_y                                 += Qt5Core
>  QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK)    += Qt5Network
> @@ -69,6 +84,10 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_SQL)        += Qt5Sql
>  QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_TEST)       += Qt5Test
>  QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_XML)        += Qt5Xml
>
> +QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_GUI)          += Qt5Gui
> +QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_WIDGETS)      += Qt5Widgets
> +QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
> +
>  # Ideally, we could use -device-option to substitute variable values
>  # in our linux-buildroot-g++/qmake.config, but this mechanism doesn't
>  # nicely support variable values that contain spaces. So we use the
> --
> 1.7.9.5
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot


Best regards,
Lionel

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 14/34] qt5base: add GUI support
  2013-03-07 13:10   ` Lionel Orry
@ 2013-03-07 13:11     ` Thomas Petazzoni
  2013-03-07 13:14       ` Lionel Orry
  0 siblings, 1 reply; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-07 13:11 UTC (permalink / raw)
  To: buildroot

Dear Lionel Orry,

On Thu, 7 Mar 2013 14:10:20 +0100, Lionel Orry wrote:

> > +QT5_BASE_CONFIGURE_OPTS += -no-xcb
> 
> typo here: should be
> 
> QT5BASE_CONFIGURE_OPTS += -no-xcb

Well spotted, thanks! I'm fixing this.

Thanks a lot for your review,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 14/34] qt5base: add GUI support
  2013-03-07 13:11     ` Thomas Petazzoni
@ 2013-03-07 13:14       ` Lionel Orry
  2013-03-07 13:17         ` Thomas Petazzoni
  0 siblings, 1 reply; 49+ messages in thread
From: Lionel Orry @ 2013-03-07 13:14 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

On Thu, Mar 7, 2013 at 2:11 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Lionel Orry,
>
> On Thu, 7 Mar 2013 14:10:20 +0100, Lionel Orry wrote:
>
>> > +QT5_BASE_CONFIGURE_OPTS += -no-xcb
>>
>> typo here: should be
>>
>> QT5BASE_CONFIGURE_OPTS += -no-xcb
>
> Well spotted, thanks! I'm fixing this.
>
> Thanks a lot for your review,

You're welcome. While I'm at it, I switched to 5.0.1 and noticed the
"-fast" option to configure is not recognised. I suppose the
equivalent options are (extract from ./configure -help):

 *  -process ........... Generate only a top-level Makefile.
    -fully-process ..... Generate Makefiles for the entire Qt tree.
    -dont-process ...... Do not generate any Makefiles.

>
> Thomas
> --
> Thomas Petazzoni, Free Electrons
> Kernel, drivers, real-time and embedded Linux
> development, consulting, training and support.
> http://free-electrons.com

Regards,
Lionel

^ permalink raw reply	[flat|nested] 49+ messages in thread

* [Buildroot] [PATCH 14/34] qt5base: add GUI support
  2013-03-07 13:14       ` Lionel Orry
@ 2013-03-07 13:17         ` Thomas Petazzoni
  0 siblings, 0 replies; 49+ messages in thread
From: Thomas Petazzoni @ 2013-03-07 13:17 UTC (permalink / raw)
  To: buildroot

Dear Lionel Orry,

On Thu, 7 Mar 2013 14:14:17 +0100, Lionel Orry wrote:

> You're welcome. While I'm at it, I switched to 5.0.1 and noticed the
> "-fast" option to configure is not recognised.

Yes, I also moved to 5.0.1. I simply removed this option. I will repost
an updated version of my patch set, hopefully this afternoon.

> I suppose the
> equivalent options are (extract from ./configure -help):
> 
>  *  -process ........... Generate only a top-level Makefile.
>     -fully-process ..... Generate Makefiles for the entire Qt tree.
>     -dont-process ...... Do not generate any Makefiles.

Hum, yes, maybe. Not sure which one is the correct choice, though. I've
just left the default value and it seems to work nicely.

Thanks,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 49+ messages in thread

end of thread, other threads:[~2013-03-07 13:17 UTC | newest]

Thread overview: 49+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-06 20:22 [Buildroot] [PATCH v2] Add Qt5 packages Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 01/34] pcre: add support for 16 bits and 32 bits variants Thomas Petazzoni
2013-03-06 20:54   ` Peter Korsgaard
2013-03-06 20:22 ` [Buildroot] [PATCH 02/34] x11r7/xcb-util: bump to 0.3.9 Thomas Petazzoni
2013-03-06 20:54   ` Peter Korsgaard
2013-03-06 20:22 ` [Buildroot] [PATCH 03/34] x11r7/xcb-util-wm: new package Thomas Petazzoni
2013-03-06 20:59   ` Peter Korsgaard
2013-03-06 20:22 ` [Buildroot] [PATCH 04/34] x11r7/xcb-util-image: " Thomas Petazzoni
2013-03-06 21:00   ` Peter Korsgaard
2013-03-06 20:22 ` [Buildroot] [PATCH 05/34] package: create virtual package for libGLES, libOpenVG and libEGL Thomas Petazzoni
2013-03-06 21:10   ` Peter Korsgaard
2013-03-06 21:27     ` Thomas Petazzoni
2013-03-06 21:37       ` Peter Korsgaard
2013-03-06 20:22 ` [Buildroot] [PATCH 06/34] rpi-userland: provides OpenGL ES, EGL and OpenVG Thomas Petazzoni
2013-03-06 21:23   ` Peter Korsgaard
2013-03-06 20:22 ` [Buildroot] [PATCH 07/34] rpi-userland: add .pc files for OpenGLESv2 and EGL libs Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 08/34] rpi-userland: add bcm_host to egl.pc Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 09/34] efl/libeet, efl/libevas: use host-libjpeg instead of host-jpeg Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 10/34] jpeg: convert to a real package Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 11/34] qt5: base infrastructure Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 12/34] qt5: add macro to fixup Qt5 .la and .prl files Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 13/34] qt5base: new package Thomas Petazzoni
2013-03-07  6:00   ` Alexander Lukichev
2013-03-07  8:33     ` Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 14/34] qt5base: add GUI support Thomas Petazzoni
2013-03-07 13:10   ` Lionel Orry
2013-03-07 13:11     ` Thomas Petazzoni
2013-03-07 13:14       ` Lionel Orry
2013-03-07 13:17         ` Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 15/34] qt5base: support debug or release modes Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 16/34] qt5base: add OpenSSL support Thomas Petazzoni
2013-03-06 20:22 ` [Buildroot] [PATCH 17/34] qt5base: add eglfs graphics backend Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 18/34] qt5base: add support for fontconfig, png, jpeg, gif Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 19/34] qt5base: add D-Bus support Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 20/34] qt5base: add glib support Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 21/34] qt5base: add support to build against ICU Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 22/34] qt5base: add rPi EGL glue code Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 23/34] qt5base: install bundled fonts to target Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 24/34] qt5: factor Qt5 version Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 25/34] qt5/qt5svg: new package Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 26/34] qt5/qt5script: " Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 27/34] qt5/qt5imageformats: " Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 28/34] qt5/qt5xmlpatterns: " Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 29/34] qt5/qt5jsbackend: " Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 30/34] qt5/qt5declarative: " Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 31/34] qt5/qt5graphicaleffects: " Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 32/34] qt5/qt5multimedia: " Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 33/34] qt5/qt5quick1: " Thomas Petazzoni
2013-03-06 20:23 ` [Buildroot] [PATCH 34/34] qt5/qt5webkit: " Thomas Petazzoni

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.