Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates
@ 2013-09-06  4:25 Spenser Gilliland
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support Spenser Gilliland
                   ` (6 more replies)
  0 siblings, 7 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-06  4:25 UTC (permalink / raw)
  To: buildroot

This patch series adds the glmark2 and mesa3d-demos with supporing updates to
the mesa3d, and libdrm stack.

v1->v2:
  - updates based on review.
  - add mesa3d-demos

Spenser Gilliland (7):
  libdrm: bump and add experimental ARM framebuffer support
  sunxi-cedarx: bump to newer version, use armel2 binaries, add demo
  mesa3d: pull out from x11
  mesa3d: modularize and bump to version 9.1.6
  libpng12: new package
  glmark2: new package
  mesa3d-demos: new package

 package/Config.in                                  |   4 +
 package/glmark2/Config.in                          |  16 +
 package/glmark2/glmark2-add-mali-support.patch     | 102 ++++++
 package/glmark2/glmark2-fix-add-GLchar.patch       |  17 +
 .../glmark2-gl-to-glesv2-on-drm-flavor.patch       |  25 ++
 package/glmark2/glmark2.mk                         |  69 ++++
 package/libdrm/Config.in                           |  68 +++-
 package/libdrm/libdrm.mk                           |  53 +++-
 package/libpng12/Config.in                         |   9 +
 package/libpng12/libpng12.mk                       |  18 ++
 package/mesa3d-demos/Config.in                     |   8 +
 .../mesa3d-demos/mesa3d-demos-optional-gl.patch    | 348 +++++++++++++++++++++
 package/mesa3d-demos/mesa3d-demos.mk               |  63 ++++
 package/mesa3d/Config.in                           | 180 +++++++++++
 package/mesa3d/mesa3d-cross-glsl-compiler.patch    |  41 +++
 package/mesa3d/mesa3d-gbm-without-dri.patch        |  30 ++
 package/mesa3d/mesa3d.mk                           | 123 ++++++++
 package/opengl/Config.in                           |   3 +
 package/opengl/libegl/libegl.mk                    |   4 +
 package/opengl/libgl/libgl.mk                      |  20 ++
 package/opengl/libgles/libgles.mk                  |   4 +
 package/opengl/libopenvg/libopenvg.mk              |   4 +
 package/sunxi-cedarx/Config.in                     |  10 +
 package/sunxi-cedarx/sunxi-cedarx.mk               |  26 +-
 package/x11r7/Config.in                            |   1 -
 package/x11r7/mesa3d/Config.in                     |  15 -
 package/x11r7/mesa3d/mesa3d-uclibc-locale.patch    |  56 ----
 package/x11r7/mesa3d/mesa3d.mk                     |  40 ---
 .../xserver_xorg-server/xserver_xorg-server.mk     |   4 +-
 29 files changed, 1222 insertions(+), 139 deletions(-)
 create mode 100644 package/glmark2/Config.in
 create mode 100644 package/glmark2/glmark2-add-mali-support.patch
 create mode 100644 package/glmark2/glmark2-fix-add-GLchar.patch
 create mode 100644 package/glmark2/glmark2-gl-to-glesv2-on-drm-flavor.patch
 create mode 100644 package/glmark2/glmark2.mk
 create mode 100644 package/libpng12/Config.in
 create mode 100644 package/libpng12/libpng12.mk
 create mode 100644 package/mesa3d-demos/Config.in
 create mode 100644 package/mesa3d-demos/mesa3d-demos-optional-gl.patch
 create mode 100644 package/mesa3d-demos/mesa3d-demos.mk
 create mode 100644 package/mesa3d/Config.in
 create mode 100644 package/mesa3d/mesa3d-cross-glsl-compiler.patch
 create mode 100644 package/mesa3d/mesa3d-gbm-without-dri.patch
 create mode 100644 package/mesa3d/mesa3d.mk
 create mode 100644 package/opengl/libgl/libgl.mk
 delete mode 100644 package/x11r7/mesa3d/Config.in
 delete mode 100644 package/x11r7/mesa3d/mesa3d-uclibc-locale.patch
 delete mode 100644 package/x11r7/mesa3d/mesa3d.mk

-- 
1.8.1.2

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

* [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support
  2013-09-06  4:25 [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates Spenser Gilliland
@ 2013-09-06  4:25 ` Spenser Gilliland
  2013-09-08 16:51   ` Thomas Petazzoni
  2013-09-20  8:41   ` Peter Korsgaard
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo Spenser Gilliland
                   ` (5 subsequent siblings)
  6 siblings, 2 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-06  4:25 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/libdrm/Config.in | 68 ++++++++++++++++++++++++++++++++++++++++--------
 package/libdrm/libdrm.mk | 53 ++++++++++++++++++++++++++++++-------
 2 files changed, 100 insertions(+), 21 deletions(-)

diff --git a/package/libdrm/Config.in b/package/libdrm/Config.in
index 8bf676b..533e985 100644
--- a/package/libdrm/Config.in
+++ b/package/libdrm/Config.in
@@ -1,22 +1,68 @@
 config BR2_PACKAGE_LIBDRM
 	bool "libdrm"
+	select BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
 	depends on BR2_PACKAGE_XORG7
 	depends on BR2_LARGEFILE
-	select BR2_PACKAGE_XPROTO_GLPROTO
-	select BR2_PACKAGE_XPROTO_XF86VIDMODEPROTO
-	select BR2_PACKAGE_XLIB_LIBXXF86VM
-	select BR2_PACKAGE_XLIB_LIBXMU
-	select BR2_PACKAGE_XLIB_LIBPCIACCESS
-	select BR2_PACKAGE_XPROTO_DRI2PROTO
-	select BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
-	# libatomic_ops is only available on a subset of the supported
-	# architectures, and we make the assumption that the intel
-	# driver can only be used on x86 and x86_64 machines.
-	select BR2_PACKAGE_LIBATOMIC_OPS if (BR2_PACKAGE_XDRIVER_XF86_VIDEO_INTEL && (BR2_i386 || BR2_x86_64))
 	help
 	  Direct Rendering Manager
 
 	  http://dri.freedesktop.org/libdrm/
 
+if BR2_PACKAGE_LIBDRM
+
+menu "DRM Drivers"
+
+config BR2_PACKAGE_LIBDRM_INTEL
+	bool "intel"
+	select BR2_PACKAGE_LIBATOMIC_OPS
+	select BR2_PACKAGE_XLIB_LIBPCIACCESS
+	depends on BR2_i386 || BR2_x86_64
+	help
+	  installs intel graphics driver
+
+config BR2_PACKAGE_LIBDRM_RADEON
+	bool "radeon"
+	select BR2_PACKAGE_LIBATOMIC_OPS
+	select BR2_PACKAGE_XLIB_LIBPCIACCESS
+	depends on BR2_i386 || BR2_x86_64
+	help
+	  install AMD/ATI graphics driver
+
+config BR2_PACKAGE_LIBDRM_NOUVEAU
+	bool "nouveau"
+	select BR2_PACKAGE_XLIB_LIBPCIACCESS
+	depends on BR2_i386 || BR2_x86_64
+	help
+	  install Nvidia graphics driver
+
+config BR2_PACKAGE_LIBDRM_VMWGFX
+	bool "vmwgfx"
+	select BR2_PACKAGE_XLIB_LIBPCIACCESS
+	depends on BR2_i386 || BR2_x86_64
+	help
+	  installs Vmware graphics driver
+
+config BR2_PACKAGE_LIBDRM_OMAP
+	bool "omap (experimental)"
+	depends on BR2_arm
+	help
+	  install the TI OMAP driver using an experimental API.
+
+config BR2_PACKAGE_LIBDRM_EXYNOS
+	bool "exynos (experimental)"
+	depends on BR2_arm
+	help
+	  installs Samsung Exynos driver using an experimental API.
+
+config BR2_PACKAGE_LIBDRM_FREEDRENO
+	bool "freedreno (experimental)"
+	depends on BR2_arm
+	help
+	  install Qualcomm Snapdragon driver using an experimental API.
+
+endmenu
+
+endif
+
 comment "libdrm requires a toolchain with LARGEFILE support"
 	depends on BR2_PACKAGE_XORG7 && !BR2_LARGEFILE
diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk
index d3d2b2d..697cd2f 100644
--- a/package/libdrm/libdrm.mk
+++ b/package/libdrm/libdrm.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBDRM_VERSION = 2.4.38
+LIBDRM_VERSION = 2.4.46
 LIBDRM_SOURCE = libdrm-$(LIBDRM_VERSION).tar.bz2
 LIBDRM_SITE = http://dri.freedesktop.org/libdrm/
 LIBDRM_LICENSE = MIT
@@ -12,26 +12,59 @@ LIBDRM_LICENSE = MIT
 LIBDRM_INSTALL_STAGING = YES
 
 LIBDRM_DEPENDENCIES = \
-	xproto_glproto \
-	xproto_xf86vidmodeproto \
-	xlib_libXxf86vm \
-	xlib_libXmu \
-	xlib_libpciaccess \
-	xproto_dri2proto \
 	xlib_libpthread-stubs \
 	host-pkgconf
 
-ifeq ($(BR2_PACKAGE_XDRIVER_XF86_VIDEO_INTEL),y)
+LIBDRM_CONF_OPT = \
+	--disable-cairo-tests \
+	--disable-manpages
+
+ifeq ($(BR2_PACKAGE_LIBDRM_INTEL),y)
 LIBDRM_CONF_OPT += --enable-intel
-LIBDRM_DEPENDENCIES += libatomic_ops
+LIBDRM_DEPENDENCIES += libatomic_ops xlib_libpciaccess
 else
 LIBDRM_CONF_OPT += --disable-intel
 endif
 
-ifneq ($(BR2_PACKAGE_XDRIVER_XF86_VIDEO_ATI),y)
+ifeq ($(BR2_PACKAGE_LIBDRM_RADEON),y)
+LIBDRM_CONF_OPT += --enable-radeon
+LIBDRM_DEPENDENCIES += xlib_libpciaccess
+else
 LIBDRM_CONF_OPT += --disable-radeon
 endif
 
+ifeq ($(BR2_PACKAGE_LIBDRM_NOUVEAU),y)
+LIBDRM_CONF_OPT += --enable-nouveau
+LIBDRM_DEPENDENCIES += xlib_libpciaccess
+else
+LIBDRM_CONF_OPT += --disable-nouveau
+endif
+
+ifeq ($(BR2_PACKAGE_LIBDRM_VMWGFX),y)
+LIBDRM_CONF_OPT += --enable-vmwgfx
+LIBDRM_DEPENDENCIES += xlib_libpciaccess
+else
+LIBDRM_CONF_OPT += --enable-vmwgfx
+endif
+
+ifeq ($(BR2_PACKAGE_LIBDRM_OMAP),y)
+LIBDRM_CONF_OPT += --enable-omap-experimental-api
+else
+LIBDRM_CONF_OPT += --disable-omap-experimental-api
+endif
+
+ifeq ($(BR2_PACKAGE_LIBDRM_EXYNOS),y)
+LIBDRM_CONF_OPT += --enable-exynos-experimental-api
+else
+LIBDRM_CONF_OPT += --disable-exynos-experimental-api
+endif
+
+ifeq ($(BR2_PACKAGE_LIBDRM_FREEDRENO),y)
+LIBDRM_CONF_OPT += --enable-freedreno-experimental-api
+else
+LIBDRM_CONF_OPT += --disable-freedreno-experimental-api
+endif
+
 ifeq ($(BR2_PACKAGE_UDEV),y)
 LIBDRM_CONF_OPT += --enable-udev
 LIBDRM_DEPENDENCIES += udev
-- 
1.8.1.2

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

* [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo
  2013-09-06  4:25 [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates Spenser Gilliland
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support Spenser Gilliland
@ 2013-09-06  4:25 ` Spenser Gilliland
  2013-09-08 16:59   ` Thomas Petazzoni
  2013-09-20 13:54   ` Peter Korsgaard
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 3/7] mesa3d: pull out from x11 Spenser Gilliland
                   ` (4 subsequent siblings)
  6 siblings, 2 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-06  4:25 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/sunxi-cedarx/Config.in       | 10 ++++++++++
 package/sunxi-cedarx/sunxi-cedarx.mk | 26 ++++++++++++++++++++++----
 2 files changed, 32 insertions(+), 4 deletions(-)

diff --git a/package/sunxi-cedarx/Config.in b/package/sunxi-cedarx/Config.in
index b280db0..aa520b5 100644
--- a/package/sunxi-cedarx/Config.in
+++ b/package/sunxi-cedarx/Config.in
@@ -10,5 +10,15 @@ config BR2_PACKAGE_SUNXI_CEDARX
 	  http://github.com/linux-sunxi/cedarx-libs
 	  http://linux-sunxi.org/CedarX
 
+if BR2_PACKAGE_SUNXI_CEDARX
+
+config BR2_PACKAGE_SUNXI_CEDARX_DEMO
+	bool "install enc_dec_test demo"
+	help
+	  Install a test program which verifies the functionality of the CedarX
+	  libraries
+
+endif
+
 comment "sunxi-cedarx requires an eglibc/glibc based toolchain"
 	depends on !BR2_TOOLCHAIN_USES_GLIBC && BR2_arm
diff --git a/package/sunxi-cedarx/sunxi-cedarx.mk b/package/sunxi-cedarx/sunxi-cedarx.mk
index 07c85d4..bc8ee32 100644
--- a/package/sunxi-cedarx/sunxi-cedarx.mk
+++ b/package/sunxi-cedarx/sunxi-cedarx.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-SUNXI_CEDARX_VERSION = 74923e55fc
+SUNXI_CEDARX_VERSION = 74c3e9052
 SUNXI_CEDARX_SITE = http://github.com/linux-sunxi/cedarx-libs/tarball/$(SUNXI_CEDARX_VERSION)
 
 SUNXI_CEDARX_INSTALL_STAGING = YES
@@ -14,7 +14,12 @@ SUNXI_CEDARX_CONFIGURE_OPTS = \
 
 ifeq ($(BR2_ARM_EABIHF),y)
 SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armhf
-# libavheap.so is only available on EABIHF
+SUNXI_CEDARX_SAMPLE_LOC = $(SUNXI_CEDARX_BIN_DIR)/sample/ve
+else
+SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armel2
+SUNXI_CEDARX_SAMPLE_LOC = $(SUNXI_CEDARX_BIN_DIR)/sample/output/ve
+endif
+
 define SUNXI_CEDARX_BUILD_AVHEAP
 	$(TARGET_CC) $(TARGET_CFLAGS) \
 		-c $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/avheap.c \
@@ -25,18 +30,30 @@ define SUNXI_CEDARX_BUILD_AVHEAP
 		-o $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/libavheap.so \
 		$(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/avheap.o
 endef
+
 define SUNXI_CEDARX_INSTALL_AVHEAP
 	$(INSTALL) -D -m 755 $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/libavheap.so \
 		$(1)/usr/lib/libavheap.so
 endef
-else
-SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armel
+
+ifeq ($(BR2_PACKAGE_SUNXI_CEDARX_DEMO),y)
+
+define SUNXI_CEDARX_BUILD_DEMO
+	$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(SUNXI_CEDARX_BIN_DIR)/sample
+endef
+
+define SUNXI_CEDARX_INSTALL_DEMO
+	$(INSTALL) -D -m 755 $(SUNXI_CEDARX_SAMPLE_LOC) \
+		$(TARGET_DIR)/usr/bin/ve
+endef
+
 endif
 
 define SUNXI_CEDARX_BUILD_CMDS
 	$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(SUNXI_CEDARX_BIN_DIR) \
 		$(SUNXI_CEDARX_CONFIGURE_OPTS)
 	$(SUNXI_CEDARX_BUILD_AVHEAP)
+	$(SUNXI_CEDARX_BUILD_DEMO)
 endef
 
 define SUNXI_CEDARX_INSTALL_STAGING_CMDS
@@ -54,6 +71,7 @@ define SUNXI_CEDARX_INSTALL_TARGET_CMDS
 	$(INSTALL) -D -m 755 $(SUNXI_CEDARX_BIN_DIR)/libvecore/libvecore.so \
 		$(TARGET_DIR)/usr/lib/libvecore.so
 	$(call SUNXI_CEDARX_INSTALL_AVHEAP, $(TARGET_DIR))
+	$(SUNXI_CEDARX_INSTALL_DEMO)
 endef
 
 $(eval $(generic-package))
-- 
1.8.1.2

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

* [Buildroot] [PATCH v2 3/7] mesa3d: pull out from x11
  2013-09-06  4:25 [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates Spenser Gilliland
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support Spenser Gilliland
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo Spenser Gilliland
@ 2013-09-06  4:25 ` Spenser Gilliland
  2013-09-08 17:02   ` Thomas Petazzoni
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 4/7] mesa3d: modularize and bump to version 9.1.6 Spenser Gilliland
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-06  4:25 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/Config.in                                     | 1 +
 package/{x11r7 => }/mesa3d/Config.in                  | 0
 package/{x11r7 => }/mesa3d/mesa3d-uclibc-locale.patch | 0
 package/{x11r7 => }/mesa3d/mesa3d.mk                  | 0
 package/x11r7/Config.in                               | 1 -
 5 files changed, 1 insertion(+), 1 deletion(-)
 rename package/{x11r7 => }/mesa3d/Config.in (100%)
 rename package/{x11r7 => }/mesa3d/mesa3d-uclibc-locale.patch (100%)
 rename package/{x11r7 => }/mesa3d/mesa3d.mk (100%)

diff --git a/package/Config.in b/package/Config.in
index a94cb62..0111771 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -278,6 +278,7 @@ source "package/lvm2/Config.in"
 source "package/mdadm/Config.in"
 source "package/media-ctl/Config.in"
 source "package/memtester/Config.in"
+source "package/mesa3d/Config.in"
 source "package/minicom/Config.in"
 source "package/nanocom/Config.in"
 source "package/neard/Config.in"
diff --git a/package/x11r7/mesa3d/Config.in b/package/mesa3d/Config.in
similarity index 100%
rename from package/x11r7/mesa3d/Config.in
rename to package/mesa3d/Config.in
diff --git a/package/x11r7/mesa3d/mesa3d-uclibc-locale.patch b/package/mesa3d/mesa3d-uclibc-locale.patch
similarity index 100%
rename from package/x11r7/mesa3d/mesa3d-uclibc-locale.patch
rename to package/mesa3d/mesa3d-uclibc-locale.patch
diff --git a/package/x11r7/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk
similarity index 100%
rename from package/x11r7/mesa3d/mesa3d.mk
rename to package/mesa3d/mesa3d.mk
diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in
index 205079c..d5d6e60 100644
--- a/package/x11r7/Config.in
+++ b/package/x11r7/Config.in
@@ -13,7 +13,6 @@ if BR2_PACKAGE_XORG7
 	endmenu
 	menu "X11R7 Libraries"
 		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
-- 
1.8.1.2

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

* [Buildroot] [PATCH v2 4/7] mesa3d: modularize and bump to version 9.1.6
  2013-09-06  4:25 [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates Spenser Gilliland
                   ` (2 preceding siblings ...)
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 3/7] mesa3d: pull out from x11 Spenser Gilliland
@ 2013-09-06  4:25 ` Spenser Gilliland
  2013-09-08 18:30   ` Thomas Petazzoni
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 5/7] libpng12: new package Spenser Gilliland
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-06  4:25 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/mesa3d/Config.in                           | 177 ++++++++++++++++++++-
 package/mesa3d/mesa3d-cross-glsl-compiler.patch    |  41 +++++
 package/mesa3d/mesa3d-gbm-without-dri.patch        |  30 ++++
 package/mesa3d/mesa3d-uclibc-locale.patch          |  56 -------
 package/mesa3d/mesa3d.mk                           | 115 +++++++++++--
 package/opengl/Config.in                           |   3 +
 package/opengl/libegl/libegl.mk                    |   4 +
 package/opengl/libgl/libgl.mk                      |  20 +++
 package/opengl/libgles/libgles.mk                  |   4 +
 package/opengl/libopenvg/libopenvg.mk              |   4 +
 .../xserver_xorg-server/xserver_xorg-server.mk     |   4 +-
 11 files changed, 378 insertions(+), 80 deletions(-)
 create mode 100644 package/mesa3d/mesa3d-cross-glsl-compiler.patch
 create mode 100644 package/mesa3d/mesa3d-gbm-without-dri.patch
 delete mode 100644 package/mesa3d/mesa3d-uclibc-locale.patch
 create mode 100644 package/opengl/libgl/libgl.mk

diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in
index 080f56a..4b48021 100644
--- a/package/mesa3d/Config.in
+++ b/package/mesa3d/Config.in
@@ -1,15 +1,180 @@
 config BR2_PACKAGE_MESA3D
 	bool "Mesa 3D Graphics Library"
-	select BR2_PACKAGE_XPROTO_GLPROTO
-	select BR2_PACKAGE_XLIB_LIBXXF86VM
-	select BR2_PACKAGE_XLIB_LIBXDAMAGE
-	select BR2_PACKAGE_XLIB_LIBXFIXES
-	select BR2_PACKAGE_XPROTO_DRI2PROTO
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_EXPAT
 	select BR2_PACKAGE_HOST_LIBXML2_PYTHON
-	depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
+	select BR2_PACKAGE_XPROTO_DRI2_PROTO if BR2_PACKAGE_XSERVER_XORG_SERVER
+	select BR2_PACKAGE_XPROTO_XF86DRIPROTO if BR2_PACKAGE_XSERVER_XORG_SERVER
+	select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XSERVER_XORG_SERVER
+	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XSERVER_XORG_SERVER
+	select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_XSERVER_XORG_SERVER
+	select BR2_PACKAGE_XLIB_LIBXFIXES if BR2_PACKAGE_XSERVER_XORG_SERVER
+	select BR2_PACKAGE_LIBXCB if BR2_PACKAGE_XSERVER_XORG_SERVER
 	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_LARGEFILE
+	depends on BR2_PACKAGE_XORG7
 	help
 	  Mesa 3D, an open-source implementation of the OpenGL specification.
 
+	  http://mesa3d.org
+
+if BR2_PACKAGE_MESA3D
+
+menu "libraries"
+
+config BR2_PACKAGE_MESA3D_GBM
+	depends on BR2_PACKAGE_UDEV
+	bool "gbm support"
+	help
+	  Add support for Graphics Buffer Manager.
+
+config BR2_PACKAGE_MESA3D_XVMC
+	bool "xvmc support"
+	help
+	  Add support for X Video Motion Compensation.
+
+config BR2_PACKAGE_MESA3D_VDPAU
+	bool "vdpau support"
+	help
+	  Add support for Video Decode and Presentation API for Unix.
+
+endmenu
+
+menu "Drivers"
+
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_I915
+	bool "Gallium i915 driver"
+	depends on BR2_i386 || BR2_x86_64
+	select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_LIBDRM_INTEL
+	help
+	  Supports intel chips with Gallium. In most cases, the DRI i965 driver
+	  should be used as it is better maintained by Intel.
+
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU
+	bool "Gallium nouveau driver"
+	depends on BR2_i386 || BR2_x86_64
+	select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_LIBDRM_NOUVEAU
+	help
+	  Supports all Nvidia GPUs.
+
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R300
+	bool "Gallium r300 driver"
+	depends on BR2_i386 || BR2_x86_64
+	select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_LIBDRM_RADEON
+	help
+	  Supports the R300, R400, and R500 series of ATI/AMD GPUs.
+
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600
+	bool "Gallium r600 driver"
+	depends on BR2_i386 || BR2_x86_64
+	select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_LIBDRM_RADEON
+	help
+	  Supports the R600, R700, and R800 series of ATI/AMD GPUs.
+
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI
+	bool "Gallium radeonsi driver"
+	depends on BR2_i386 || BR2_x86_64
+	select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_LIBDRM_RADEON
+	help
+	  Supports the Radeon HD7000/HD8000/HD9000 series of ATI/AMD GPUs.
+
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA
+	bool "Gallium vmware svga driver"
+	select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_LIBDRM_VMWGFX
+	help
+	  This is a virtual GPU driver for VMWare virtual machines.
+
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST
+	bool "Gallium swrast driver"
+	select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	help
+	  This is a software opengl implementation using the Gallium3D
+	  infrastructure.
+
+config BR2_PACKAGE_MESA3D_DRI_DRIVERS_SWRAST
+	bool "DRI swrast driver"
+	select BR2_PACKAGE_MESA3D_DRI_DRIVER
+	help
+	  This is a software opengl implementation using the DRI infrastructure.
+
+config BR2_PACKAGE_MESA3D_DRI_DRIVERS_I965
+	bool "DRI i965 driver"
+	depends on BR2_i386 || BR2_x86_64
+	select BR2_PACKAGE_MESA3D_DRI_DRIVER
+	select BR2_PACKAGE_LIBDRM_INTEL
+	help
+	  Supports all Intel GPUs.  This version is most supported by Intel.
+
+config BR2_PACKAGE_MESA3D_DRI_DRIVERS_RADEON
+	bool "DRI radeon driver"
+	depends on BR2_i386 || BR2_x86_64
+	select BR2_PACKAGE_MESA3D_DRI_DRIVER
+	select BR2_PACKAGE_LIBDRM_RADEON
+	help
+	  Legacy Radeon driver for R100 series GPUs.
+
+endmenu
+
+# The following hidden options inform gallium or dri driver selection.
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_MESA3D_DRIVER
+	bool
+
+config BR2_PACKAGE_MESA3D_DRI_DRIVER
+	select BR2_PACKAGE_MESA3D_DRIVER
+	bool
+
+config BR2_PACKAGE_MESA3D_DRIVER
+	bool
+
+menu "API Support"
+depends on BR2_PACKAGE_MESA3D_GALLIUM_DRIVER || BR2_PACKAGE_MESA3D_DRI_DRIVER
+
+config BR2_PACKAGE_MESA3D_OPENGL
+	bool "OpenGL"
+	select BR2_PACKAGE_HAS_OPENGL
+	help
+	  Use the Khronos OpenGL API.  This is a desktop computer API and is not
+	  normally implemented by embedded systems.
+
+config BR2_PACKAGE_MESA3D_EGL
+	bool "EGL"
+	select BR2_PACKAGE_MESA3D_GBM
+	select BR2_PACKAGE_HAS_OPENGL_EGL
+	help
+	  Use the Khronos EGL APIs. EGL is a window manager for OpenGL applications
+	  similar to GLX, for X, and WGL, for Windows.
+
+ config BR2_PACKAGE_MESA3D_OPENGL_ES
+	bool "OpenGL ES"
+	select BR2_PACKAGE_HAS_OPENGL_ES
+	help
+	  Use the Khronos OpenGL ES APIs.  This is commonly used on embedded
+	  systems and represents a subset of the OpenGL API.
+
+config BR2_PACKAGE_MESA3D_OPENVG
+	bool "OpenVG"
+	depends on BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_HAS_OPENVG
+	select BR2_PACKAGE_MESA3D_OPENGL_EGL
+	help
+	  Use the Khronos OpenVG APIs. This is a 2D API commonly used on
+	  embedded systems.
+
+config BR2_PACKAGE_MESA3D_OPENCL
+	bool "OpenCL"
+	depends on BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+	select BR2_PACKAGE_HAS_OPENCL
+	help
+	  Use the Khronos OpenCL APIs. This is a GPU computation language
+	  commonly used in GPGPU computing applications.
+
+endmenu
+
+endif
diff --git a/package/mesa3d/mesa3d-cross-glsl-compiler.patch b/package/mesa3d/mesa3d-cross-glsl-compiler.patch
new file mode 100644
index 0000000..1028ea1
--- /dev/null
+++ b/package/mesa3d/mesa3d-cross-glsl-compiler.patch
@@ -0,0 +1,41 @@
+This patch fixes a cross compile issue as described here
+https://bugs.freedesktop.org/show_bug.cgi?id=44618
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+diff --git a/src/glsl/builtin_compiler/Makefile.am b/src/glsl/builtin_compiler/Makefile.am
+index e11a17f..8ebe0a2 100644
+--- a/src/glsl/builtin_compiler/Makefile.am
++++ b/src/glsl/builtin_compiler/Makefile.am
+@@ -64,6 +64,8 @@ AM_CXXFLAGS = $(AM_CFLAGS)
+ include ../Makefile.sources
+ 
+ noinst_PROGRAMS = builtin_compiler
++
++if !CROSS_COMPILING
+ noinst_LTLIBRARIES = libglslcore.la libglcpp.la
+ 
+ libglcpp_la_SOURCES =					\
+@@ -73,6 +75,7 @@ libglcpp_la_SOURCES =					\
+ libglslcore_la_SOURCES =				\
+ 	$(BUILTIN_COMPILER_GENERATED_CXX_FILES)		\
+ 	$(LIBGLSL_FILES)
++endif
+ 
+ builtin_compiler_SOURCES = \
+ 	$(top_srcdir)/src/mesa/main/hash_table.c	\
+@@ -81,4 +84,14 @@ builtin_compiler_SOURCES = \
+ 	$(top_srcdir)/src/mesa/program/symbol_table.c	\
+ 	$(BUILTIN_COMPILER_CXX_FILES)			\
+ 	$(GLSL_COMPILER_CXX_FILES)
++
++if CROSS_COMPILING
++builtin_compiler_SOURCES += \
++	$(LIBGLCPP_GENERATED_FILES) \
++	$(LIBGLCPP_FILES) \
++	$(BUILTIN_COMPILER_GENERATED_CXX_FILES) \
++	$(LIBGLSL_FILES)
++builtin_compiler_CPPFLAGS = $(AM_CPPFLAGS)
++else
+ builtin_compiler_LDADD = libglslcore.la libglcpp.la
++endif
diff --git a/package/mesa3d/mesa3d-gbm-without-dri.patch b/package/mesa3d/mesa3d-gbm-without-dri.patch
new file mode 100644
index 0000000..2c417f4
--- /dev/null
+++ b/package/mesa3d/mesa3d-gbm-without-dri.patch
@@ -0,0 +1,30 @@
+Fix build issue when gbm backend is built without dri support.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+
+---
+Index: mesa3d-9.1.6/src/gbm/main/backend.c
+===================================================================
+--- mesa3d-9.1.6.orig/src/gbm/main/backend.c	2012-11-24 11:57:41.000000000 -0600
++++ mesa3d-9.1.6/src/gbm/main/backend.c	2013-08-16 10:59:58.844753588 -0500
+@@ -36,7 +36,9 @@
+ 
+ #define ARRAY_SIZE(a) (sizeof(a)/sizeof((a)[0]))
+ 
++#ifdef HAVE_DRI
+ extern const struct gbm_backend gbm_dri_backend;
++#endif
+ 
+ struct backend_desc {
+    const char *name;
+@@ -44,7 +46,9 @@
+ };
+ 
+ static const struct backend_desc backends[] = {
+-   { "gbm_dri.so", &gbm_dri_backend },
++#ifdef HAVE_DRI
++	{ "gbm_dri.so", &gbm_dri_backend },
++#endif
+    { "gbm_gallium_drm.so", NULL },
+ };
+ 
diff --git a/package/mesa3d/mesa3d-uclibc-locale.patch b/package/mesa3d/mesa3d-uclibc-locale.patch
deleted file mode 100644
index 99afe8d..0000000
--- a/package/mesa3d/mesa3d-uclibc-locale.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-[PATCH] Fix compilation on uClibc without locale support
-
-Based on similar patch from OE:
-
-http://git.openembedded.org/openembedded-core/commit/meta/recipes-graphics/mesa/mesa/0001-Compile-with-uclibc.patch?id=e4039eb74b20e96d4b8837cd58cf2d13d091e1ad
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- configure.ac            |    3 +++
- src/glsl/strtod.c       |    2 +-
- src/mesa/main/imports.c |    2 +-
- 3 files changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index fbaa376..454dad2 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -450,6 +450,9 @@ AC_SUBST([DLOPEN_LIBS])
- dnl See if posix_memalign is available
- AC_CHECK_FUNC([posix_memalign], [DEFINES="$DEFINES -DHAVE_POSIX_MEMALIGN"])
- 
-+dnl See if newlocale is available
-+AC_CHECK_FUNCS_ONCE(newlocale)
-+
- dnl SELinux awareness.
- AC_ARG_ENABLE([selinux],
-     [AS_HELP_STRING([--enable-selinux],
-diff --git a/src/glsl/strtod.c b/src/glsl/strtod.c
-index a876e13..9fce7e9 100644
---- a/src/glsl/strtod.c
-+++ b/src/glsl/strtod.c
-@@ -44,7 +44,7 @@ double
- double
- glsl_strtod(const char *s, char **end)
- {
--#if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__)
-+#if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__) && defined(HAVE_NEWLOCALE)
-    static locale_t loc = NULL;
-    if (!loc) {
-       loc = newlocale(LC_CTYPE_MASK, "C", NULL);
-diff --git a/src/mesa/main/imports.c b/src/mesa/main/imports.c
-index d3727ef..363bf32 100644
---- a/src/mesa/main/imports.c
-+++ b/src/mesa/main/imports.c
-@@ -757,7 +757,7 @@ float
- float
- _mesa_strtof( const char *s, char **end )
- {
--#if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__)
-+#if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__) && defined(HAVE_NEWLOCALE)
-    static locale_t loc = NULL;
-    if (!loc) {
-       loc = newlocale(LC_CTYPE_MASK, "C", NULL);
--- 
-1.7.10.4
-
diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk
index d4080d4..77fbfa7 100644
--- a/package/mesa3d/mesa3d.mk
+++ b/package/mesa3d/mesa3d.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-MESA3D_VERSION = 7.10.3
+MESA3D_VERSION = 9.1.6
 MESA3D_SOURCE = MesaLib-$(MESA3D_VERSION).tar.gz
 MESA3D_SITE = ftp://ftp.freedesktop.org/pub/mesa/older-versions/7.x/$(MESA3D_VERSION)
 MESA3D_LICENSE = MIT, SGI, Khronos
@@ -13,22 +13,7 @@ MESA3D_LICENSE_FILES = docs/license.html
 MESA3D_AUTORECONF = YES
 MESA3D_INSTALL_STAGING = YES
 
-MESA3D_CONF_OPT = \
-	--disable-egl \
-	--disable-glu \
-	--disable-glw \
-	--disable-glut \
-	--disable-gallium \
-	--with-driver=dri \
-	--with-dri-drivers=swrast \
-	--disable-static
-
 MESA3D_DEPENDENCIES = \
-	xproto_glproto \
-	xlib_libXxf86vm \
-	xlib_libXdamage \
-	xlib_libXfixes \
-	xproto_dri2proto \
 	libdrm \
 	expat \
 	host-xutil_makedepend \
@@ -37,4 +22,102 @@ MESA3D_DEPENDENCIES = \
 	host-bison \
 	host-flex
 
+MESA3D_CONF_OPT = \
+	--disable-static
+
+# Libraries
+
+ifeq ($(BR2_PACKAGE_MESA3D_GBM),y)
+MESA3D_DEPENDENCIES += udev
+MESA3D_CONF_OPT += --enable-gbm
+else
+MESA3D_CONF_OPT += --disable-gbm
+endif
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER),y)
+MESA3D_DEPENDENCIES += \
+	xproto_xf86driproto xproto_dri2proto xproto_glproto \
+	xlib_libX11 xlib_libXext xlib_libXdamage xlib_libXfixes libxcb
+MESA3D_CONF_OPT += \
+	--enable-dri \
+	--enable-xa \
+	--enable-glx
+else
+MESA3D_CONF_OPT += \
+	--disable-dri \
+	--disable-xa \
+	--disable-glx
+endif
+
+# Drivers
+
+#Gallium Drivers
+MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_I915)     += i915
+MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU)  += nouveau
+MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R300)     += r300
+MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600)     += r600
+MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI) += radeonsi
+MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA)     += svga
+MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST)   += swrast
+# DRI Drivers
+MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_SWRAST) += swrast
+MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_I965)   += i965
+MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON) += radeon
+
+ifneq ($(MESA3D_GALLIUM_DRIVERS),)
+MESA3D_CONF_OPT += \
+	--with-gallium-drivers=$(subst $(space),$(comma),$(MESA3D_GALLIUM_DRIVERS-y))
+else
+MESA3D_CONF_OPT += --without-gallium-drivers
+endif
+
+ifneq ($(MESA3D_DRI_DRIVERS),)
+MESA3D_CONF_OPT += \
+	--with-dri-drivers=$(subst $(space),$(comma),$(MESA3D_DRI_DRIVERS-y))
+else
+MESA3D_CONF_OPT += --without-dri-drivers
+endif
+
+# APIs
+
+ifeq ($(BR2_PACKAGE_MESA3D_EGL),y)
+MESA3D_EGL_PLATFORMS = drm
+ifeq ($(BR2_PACKAGE_WAYLAND),y)
+MESA3D_DEPENDENCIES += wayland
+MESA3D_EGL_PLATFORMS += wayland
+endif
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER),y)
+MESA3D_EGL_PLATFORMS += x11
+endif
+MESA3D_CONF_OPT += \
+	--enable-egl \
+	--with-egl-platforms=$(foreach subst $(space),$(comma),$(MESA3D_EGL_PLATFORMS))
+else
+MESA3D_CONF_OPT += --disable-egl
+endif
+
+ifeq ($(BR2_PACKAGE_MESA3D_OPENGL),y)
+MESA3D_CONF_OPT += --enable-opengl
+else
+MESA3D_CONF_OPT += --disable-opengl
+endif
+
+ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_ES),y)
+MESA3D_CONF_OPT += --enable-gles1 --enable-gles2
+else
+MESA3D_CONF_OPT += --disable-gles1 --disable-gles2
+endif
+
+ifeq ($(BR2_PACKAGE_MESA3D_OPENVG),y)
+MESA3D_CONF_OPT += --enable-openvg --enable-gallium-egl
+else
+MESA3D_CONF_OPT += --disable-openvg --disable-gallium-egl
+endif
+
+ifeq ($(BR2_PACKAGE_MESA3D_OPENCL),y)
+MESA3D_CONF_OPT += --enable-opencl
+else
+MESA3D_CONF_OPT += --disable-opencl
+endif
+
 $(eval $(autotools-package))
diff --git a/package/opengl/Config.in b/package/opengl/Config.in
index 1636807..c705446 100644
--- a/package/opengl/Config.in
+++ b/package/opengl/Config.in
@@ -1,3 +1,6 @@
+config BR2_PACKAGE_HAS_OPENGL
+	bool
+
 config BR2_PACKAGE_HAS_OPENGL_EGL
 	bool
 
diff --git a/package/opengl/libegl/libegl.mk b/package/opengl/libegl/libegl.mk
index c194b02..2d52fe3 100644
--- a/package/opengl/libegl/libegl.mk
+++ b/package/opengl/libegl/libegl.mk
@@ -22,6 +22,10 @@ ifeq ($(BR2_PACKAGE_GPU_VIV_BIN_MX6Q),y)
 LIBEGL_DEPENDENCIES += gpu-viv-bin-mx6q
 endif
 
+ifeq ($(BR2_PACKAGE_MESA3D_EGL),y)
+LIBEGL_DEPENDENCIES += mesa3d
+endif
+
 ifeq ($(LIBEGL_DEPENDENCIES),)
 define LIBEGL_CONFIGURE_CMDS
 	echo "No libEGL implementation selected. Configuration error."
diff --git a/package/opengl/libgl/libgl.mk b/package/opengl/libgl/libgl.mk
new file mode 100644
index 0000000..4b0d7f2
--- /dev/null
+++ b/package/opengl/libgl/libgl.mk
@@ -0,0 +1,20 @@
+################################################################################
+#
+# libgl
+#
+################################################################################
+
+LIBGL_SOURCE =
+
+ifeq ($(BR2_PACKAGE_MESA_OPENGL),y)
+LIBGL_DEPENDENCIES += mesa3d
+endif
+
+ifeq ($(LIBGL_DEPENDENCIES),)
+define LIBOPENGL_CONFIGURE_CMDS
+	echo "No libOpenGL 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
index ec157ac..8e5cef1 100644
--- a/package/opengl/libgles/libgles.mk
+++ b/package/opengl/libgles/libgles.mk
@@ -22,6 +22,10 @@ ifeq ($(BR2_PACKAGE_GPU_VIV_BIN_MX6Q),y)
 LIBGLES_DEPENDENCIES += gpu-viv-bin-mx6q
 endif
 
+ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_ES),y)
+LIBGLES_DEPENDENCIES += mesa3d
+endif
+
 ifeq ($(LIBGLES_DEPENDENCIES),)
 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 3296f63..e897423 100644
--- a/package/opengl/libopenvg/libopenvg.mk
+++ b/package/opengl/libopenvg/libopenvg.mk
@@ -10,6 +10,10 @@ ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
 LIBOPENVG_DEPENDENCIES += rpi-userland
 endif
 
+ifeq ($(BR2_PACKAGE_MESA3D_OPENVG),y)
+LIBOPENVG_DEPENDENCIES += mesa3d
+endif
+
 ifeq ($(LIBOPENVG_DEPENDENCIES),)
 define LIBOPENVG_CONFIGURE_CMDS
 	echo "No libOpenVG implementation selected. Configuration error."
diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
index 4089aab..f5a4db6 100644
--- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
+++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
@@ -99,7 +99,7 @@ else # modular
 XSERVER_XORG_SERVER_CONF_OPT += --disable-kdrive --disable-xfbdev
 endif
 
-ifeq ($(BR2_PACKAGE_MESA3D),y)
+ifeq ($(BR2_PACKAGE_MESA3D_DRIVER),y)
 XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
 else
 XSERVER_XORG_SERVER_CONF_OPT += --disable-dri
@@ -172,7 +172,7 @@ ifneq ($(BR2_PACKAGE_XLIB_LIBDMX),y)
 XSERVER_XORG_SERVER_CONF_OPT += --disable-dmx
 endif
 
-ifeq ($(BR2_PACKAGE_MESA3D),y)
+ifeq ($(BR2_PACKAGE_MESA3D_DRIVER),y)
 XSERVER_XORG_SERVER_CONF_OPT += --enable-glx
 else
 XSERVER_XORG_SERVER_CONF_OPT += --disable-glx
-- 
1.8.1.2

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

* [Buildroot] [PATCH v2 5/7] libpng12: new package
  2013-09-06  4:25 [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates Spenser Gilliland
                   ` (3 preceding siblings ...)
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 4/7] mesa3d: modularize and bump to version 9.1.6 Spenser Gilliland
@ 2013-09-06  4:25 ` Spenser Gilliland
  2013-09-08 17:04   ` Thomas Petazzoni
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 6/7] glmark2: " Spenser Gilliland
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 7/7] mesa3d-demos: " Spenser Gilliland
  6 siblings, 1 reply; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-06  4:25 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/Config.in            |  1 +
 package/libpng12/Config.in   |  9 +++++++++
 package/libpng12/libpng12.mk | 18 ++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 100644 package/libpng12/Config.in
 create mode 100644 package/libpng12/libpng12.mk

diff --git a/package/Config.in b/package/Config.in
index 0111771..3a8bd6d 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -482,6 +482,7 @@ source "package/libglade/Config.in"
 source "package/gdk-pixbuf/Config.in"
 source "package/libgtk2/Config.in"
 source "package/libpng/Config.in"
+source "package/libpng12/Config.in"
 source "package/libqrencode/Config.in"
 source "package/libraw/Config.in"
 source "package/librsvg/Config.in"
diff --git a/package/libpng12/Config.in b/package/libpng12/Config.in
new file mode 100644
index 0000000..e246ebc
--- /dev/null
+++ b/package/libpng12/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_LIBPNG12
+	bool "libpng"
+	select BR2_PACKAGE_ZLIB
+	help
+	  Library for handling PNG (Portable Network Graphics)
+	  images. This installs the 1.2.x series.  Different versions of
+	  libpng have different APIs.
+
+	  http://www.libpng.org/
diff --git a/package/libpng12/libpng12.mk b/package/libpng12/libpng12.mk
new file mode 100644
index 0000000..39094f2
--- /dev/null
+++ b/package/libpng12/libpng12.mk
@@ -0,0 +1,18 @@
+################################################################################
+#
+# libpng12
+#
+################################################################################
+
+LIBPNG12_VERSION = 1.2.50
+LIBPNG12_SERIES = 12
+LIBPNG12_SOURCE = libpng-$(LIBPNG12_VERSION).tar.bz2
+LIBPNG12_SITE = http://downloads.sourceforge.net/project/libpng/libpng$(LIBPNG12_SERIES)/$(LIBPNG12_VERSION)
+LIBPNG12_LICENSE = libpng license
+LIBPNG12_LICENSE_FILES = LICENSE
+LIBPNG12_INSTALL_STAGING = YES
+LIBPNG12_DEPENDENCIES = host-pkgconf zlib
+LIBPNG12_CONFIG_SCRIPTS = libpng$(LIBPNG12_SERIES)-config libpng-config
+
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))
-- 
1.8.1.2

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

* [Buildroot] [PATCH v2 6/7] glmark2: new package
  2013-09-06  4:25 [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates Spenser Gilliland
                   ` (4 preceding siblings ...)
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 5/7] libpng12: new package Spenser Gilliland
@ 2013-09-06  4:25 ` Spenser Gilliland
  2013-09-08 18:38   ` Thomas Petazzoni
  2013-09-11  5:47   ` Arnout Vandecappelle
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 7/7] mesa3d-demos: " Spenser Gilliland
  6 siblings, 2 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-06  4:25 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/Config.in                                  |   1 +
 package/glmark2/Config.in                          |  16 ++++
 package/glmark2/glmark2-add-mali-support.patch     | 102 +++++++++++++++++++++
 package/glmark2/glmark2-fix-add-GLchar.patch       |  17 ++++
 .../glmark2-gl-to-glesv2-on-drm-flavor.patch       |  25 +++++
 package/glmark2/glmark2.mk                         |  69 ++++++++++++++
 6 files changed, 230 insertions(+)
 create mode 100644 package/glmark2/Config.in
 create mode 100644 package/glmark2/glmark2-add-mali-support.patch
 create mode 100644 package/glmark2/glmark2-fix-add-GLchar.patch
 create mode 100644 package/glmark2/glmark2-gl-to-glesv2-on-drm-flavor.patch
 create mode 100644 package/glmark2/glmark2.mk

diff --git a/package/Config.in b/package/Config.in
index 3a8bd6d..27bd70a 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -25,6 +25,7 @@ source "package/dmalloc/Config.in"
 source "package/dropwatch/Config.in"
 source "package/duma/Config.in"
 source "package/gdb/Config.in"
+source "package/glmark2/Config.in"
 source "package/iozone/Config.in"
 source "package/kexec/Config.in"
 source "package/latencytop/Config.in"
diff --git a/package/glmark2/Config.in b/package/glmark2/Config.in
new file mode 100644
index 0000000..6dd7833
--- /dev/null
+++ b/package/glmark2/Config.in
@@ -0,0 +1,16 @@
+config BR2_PACKAGE_GLMARK2
+	bool "glmark2"
+	depends on BR2_PACKAGE_MESA3D
+	depends on BR2_PACKAGE_MESA3D_GBM # depends on udev cannot select
+	depends on BR2_LARGEFILE
+	depends on BR2_PACKAGE_HAS_OPENGL || \
+		(BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES)
+	select BR2_PACKAGE_JPEG
+	select BR2_PACKAGE_LIBPNG12
+	help
+	  glmark2 is a benchmark for OpenGL (ES) 2.0. It uses only the subset of the
+	  OpenGL 2.0 API that is compatible with OpenGL ES 2.0.
+
+comment "glmark2 requires an OpenGL implementation and mesa3D to be enabled"
+	depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES \
+		|| !BR2_PACKAGE_XORG7
diff --git a/package/glmark2/glmark2-add-mali-support.patch b/package/glmark2/glmark2-add-mali-support.patch
new file mode 100644
index 0000000..c37c88c
--- /dev/null
+++ b/package/glmark2/glmark2-add-mali-support.patch
@@ -0,0 +1,102 @@
+Mali uses a slightly different windowing structure than most
+implementations add support through this patch.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: glmark2-279/src/gl-state-egl.cpp
+===================================================================
+--- glmark2-279.orig/src/gl-state-egl.cpp	2013-08-21 14:49:38.953803965 -0500
++++ glmark2-279/src/gl-state-egl.cpp	2013-08-21 14:59:42.389814979 -0500
+@@ -414,9 +414,12 @@
+ {
+     if (egl_display_)
+         return true;
+-
++#ifdef HAS_MALI
++    egl_display_ = eglGetDisplay(EGL_DEFAULT_DISPLAY);
++#else
+     egl_display_ = eglGetDisplay(native_display_);
+-    if (!egl_display_) {
++#endif
++    if (egl_display_ == EGL_NO_DISPLAY) {
+         Log::error("eglGetDisplay() failed with error: 0x%x\n", eglGetError());
+         return false;
+     }
+Index: glmark2-279/src/native-state-fbdev.cpp
+===================================================================
+--- glmark2-279.orig/src/native-state-fbdev.cpp	2013-08-19 17:36:32.000000000 -0500
++++ glmark2-279/src/native-state-fbdev.cpp	2013-08-21 14:59:58.629815276 -0500
+@@ -31,7 +31,9 @@
+ #include <unistd.h>
+ #include <sys/ioctl.h>
+ #include <linux/fb.h>
+-
++#if HAS_MALI
++#include <EGL/egl.h>
++#endif
+ #ifdef ANDROID
+ #define FBDEV_DEV "/dev/graphics/fb"
+ #else
+@@ -79,7 +81,13 @@
+ NativeStateFBDEV::window(WindowProperties& properties)
+ {
+     properties = winprops;
++#ifdef HAS_MALI
++    native_window.height = winprops.height;
++    native_window.width = winprops.width;
++    return reinterpret_cast<void*>(&native_window);
++#else
+     return NULL;
++#endif
+ }
+ 
+ void
+Index: glmark2-279/src/native-state-fbdev.h
+===================================================================
+--- glmark2-279.orig/src/native-state-fbdev.h	2013-08-19 17:36:32.000000000 -0500
++++ glmark2-279/src/native-state-fbdev.h	2013-08-21 15:00:14.345815563 -0500
+@@ -30,6 +30,10 @@
+ #include <csignal>
+ #include <cstring>
+ 
++#ifdef HAS_MALI
++#include <EGL/egl.h>
++#endif
++
+ class NativeStateFBDEV : public NativeState
+ {
+ public:
+@@ -50,7 +54,9 @@
+     static volatile std::sig_atomic_t should_quit_;
+     int fd;
+     WindowProperties winprops;
+-
++#ifdef HAS_MALI
++    struct mali_native_window native_window;
++#endif
+     bool init();
+     void cleanup();
+ };
+Index: glmark2-279/wscript
+===================================================================
+--- glmark2-279.orig/wscript	2013-08-19 17:36:32.000000000 -0500
++++ glmark2-279/wscript	2013-08-21 15:00:24.245815743 -0500
+@@ -46,7 +46,8 @@
+                    dest = 'flavors',
+                    help = "a list of flavors to build (%s, all)" % FLAVORS_STR)
+     opt.parser.set_default('flavors', [])
+-
++    opt.add_option('--for-mali', action='store_true', dest = 'mali',
++                   default = False, help='enable ARM Mali GPU support')
+     opt.add_option('--no-debug', action='store_false', dest = 'debug',
+                    default = True, help='disable compiler debug information')
+     opt.add_option('--no-opt', action='store_false', dest = 'opt',
+@@ -132,6 +133,8 @@
+         ctx.env.prepend_value('CXXFLAGS', '-O2')
+     if Options.options.debug:
+         ctx.env.prepend_value('CXXFLAGS', '-g')
++    if Options.options.mali:
++        ctx.env.append_unique('DEFINES','HAS_MALI=1')
+ 
+     ctx.env.HAVE_EXTRAS = False
+     if Options.options.extras_path is not None:
diff --git a/package/glmark2/glmark2-fix-add-GLchar.patch b/package/glmark2/glmark2-fix-add-GLchar.patch
new file mode 100644
index 0000000..15653de
--- /dev/null
+++ b/package/glmark2/glmark2-fix-add-GLchar.patch
@@ -0,0 +1,17 @@
+Bug fix in program.cc.  There is no such type as GLchar.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: glmark2-2012.12/src/libmatrix/program.cc
+===================================================================
+--- glmark2-2012.12.orig/src/libmatrix/program.cc	2012-12-18 13:45:45.000000000 -0600
++++ glmark2-2012.12/src/libmatrix/program.cc	2013-08-13 20:08:27.005724911 -0500
+@@ -17,6 +17,8 @@
+ #include "gl-if.h"
+ #include "program.h"
+ 
++typedef char GLchar;
++
+ using std::string;
+ using LibMatrix::mat4;
+ using LibMatrix::mat3;
diff --git a/package/glmark2/glmark2-gl-to-glesv2-on-drm-flavor.patch b/package/glmark2/glmark2-gl-to-glesv2-on-drm-flavor.patch
new file mode 100644
index 0000000..5f838cc
--- /dev/null
+++ b/package/glmark2/glmark2-gl-to-glesv2-on-drm-flavor.patch
@@ -0,0 +1,25 @@
+Bug in build script requires full opengl when only opengl es is actually
+required.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: glmark2-279/src/wscript_build
+===================================================================
+--- glmark2-279.orig/src/wscript_build	2013-08-19 17:36:32.000000000 -0500
++++ glmark2-279/src/wscript_build	2013-08-20 10:31:39.364629078 -0500
+@@ -23,11 +23,12 @@
+   'x11-gl' : ['x11', 'gl', 'matrix-gl'],
+   'x11-glesv2' : ['x11', 'egl', 'glesv2', 'matrix-glesv2'],
+   'drm-gl' : ['drm', 'gbm', 'egl', 'gl', 'matrix-gl'],
+-  'drm-glesv2' : ['drm', 'gbm', 'egl', 'glesv2', 'matrix-gl'],
++  'drm-glesv2' : ['drm', 'gbm', 'egl', 'glesv2', 'matrix-glesv2'],
+   'mir-gl' : ['mirclient', 'egl', 'gl', 'matrix-gl'],
+-  'mir-glesv2' : ['mirclient', 'egl', 'glesv2', 'matrix-gl'],
++  'mir-glesv2' : ['mirclient', 'egl', 'glesv2', 'matrix-glesv2'],
+   'wayland-gl' : ['wayland-client', 'wayland-egl', 'egl', 'gl', 'matrix-gl'],
+-  'wayland-glesv2' : ['wayland-client', 'wayland-egl', 'egl', 'glesv2', 'matrix-gl'],
++  'wayland-glesv2' : ['wayland-client', 'wayland-egl', 'egl', 'glesv2',
++  'matrix-glesv2'],
+   'fbdev-glesv2' : ['egl', 'glesv2', 'matrix-glesv2']
+ }
+ flavor_defines = {
diff --git a/package/glmark2/glmark2.mk b/package/glmark2/glmark2.mk
new file mode 100644
index 0000000..b36eaf9
--- /dev/null
+++ b/package/glmark2/glmark2.mk
@@ -0,0 +1,69 @@
+################################################################################
+#
+# glmark2
+#
+################################################################################
+
+GLMARK2_VERSION = 279
+GLMARK2_SITE = http://bazaar.launchpad.net/~laanwj/glmark2/fbdev
+GLMARK2_SITE_METHOD = bzr
+GLMARK2_SOURCE = glmark2-$(GLMARK2_VERSION).tar.gz
+GLMARK2_LICENSE = GPLv3+ SGIv1
+GLMARK2_LICENSE_FILES = COPYING COPYING.SGI
+
+GLMARK2_DEPENDENCIES = jpeg libpng12 mesa3d host-python host-pkgconf
+
+GLMARK2_CONF_OPTS = --prefix=/usr/
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
+GLMARK2_DEPENDENCIES += libegl libgles
+GLMARK2_FLAVORS += x11-glesv2
+endif
+
+ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER)$(BR2_PACKAGE_HAS_OPENGL),yy)
+GLMARK2_DEPENDENCIES += libgl
+GLMARK2_FLAVORS += x11-gl
+endif
+
+ifeq ($(BR2_PACKAGE_HAS_OPENGL_EGL)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
+GLMARK2_DEPENDENCIES += libdrm libegl libgles
+GLMARK2_FLAVORS += drm-glesv2 fbdev-glesv2
+endif
+
+ifeq ($(BR2_PACKAGE_HAS_OPENGL_EGL)$(BR2_PACKAGE_HAS_OPENGL),yy)
+GLMARK2_DEPENDENCIES += libdrm libgl
+GLMARK2_FLAVORS += drm-gl
+endif
+
+ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
+GLMARK2_DEPENDENCIES += wayland libegl libgles
+GLMARK2_FLAVORS += wayland-glesv2
+endif
+
+ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_HAS_OPENGL),yy)
+GLMARK2_DEPENDENCIES += wayland libgl
+GLMARK2_FLAVORS += wayland-gl
+endif
+
+ifeq ($(BR2_PACKAGE_SUNXI_MALI),y)
+GLMARK2_CONF_OPTS += --for-mali
+endif
+
+GLMARK2_CONF_OPTS += \
+	--with-flavors=$(subst $(space),$(comma),$(GLMARK2_FLAVORS))
+
+define GLMARK2_CONFIGURE_CMDS
+	cd $(@D) && \
+		$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) ./waf configure \
+		$(GLMARK2_CONF_OPTS)
+endef
+
+define GLMARK2_BUILD_CMDS
+	cd $(@D) && $(TARGET_MAKE_ENV) ./waf
+endef
+
+define GLMARK2_INSTALL_TARGET_CMDS
+	cd $(@D) && $(TARGET_MAKE_ENV) ./waf install --destdir=$(TARGET_DIR)
+endef
+
+$(eval $(generic-package))
-- 
1.8.1.2

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

* [Buildroot] [PATCH v2 7/7] mesa3d-demos: new package
  2013-09-06  4:25 [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates Spenser Gilliland
                   ` (5 preceding siblings ...)
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 6/7] glmark2: " Spenser Gilliland
@ 2013-09-06  4:25 ` Spenser Gilliland
  2013-09-11  5:58   ` Arnout Vandecappelle
  6 siblings, 1 reply; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-06  4:25 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/Config.in                                  |   1 +
 package/mesa3d-demos/Config.in                     |   8 +
 .../mesa3d-demos/mesa3d-demos-optional-gl.patch    | 348 +++++++++++++++++++++
 package/mesa3d-demos/mesa3d-demos.mk               |  63 ++++
 4 files changed, 420 insertions(+)
 create mode 100644 package/mesa3d-demos/Config.in
 create mode 100644 package/mesa3d-demos/mesa3d-demos-optional-gl.patch
 create mode 100644 package/mesa3d-demos/mesa3d-demos.mk

diff --git a/package/Config.in b/package/Config.in
index 27bd70a..e8ceb5a 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -39,6 +39,7 @@ source "package/lttng-modules/Config.in"
 source "package/lttng-tools/Config.in"
 source "package/ltrace/Config.in"
 source "package/memstat/Config.in"
+source "package/mesa3d-demos/Config.in"
 source "package/netperf/Config.in"
 source "package/oprofile/Config.in"
 source "package/pax-utils/Config.in"
diff --git a/package/mesa3d-demos/Config.in b/package/mesa3d-demos/Config.in
new file mode 100644
index 0000000..24c29e0
--- /dev/null
+++ b/package/mesa3d-demos/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_MESA3D_DEMOS
+	bool "mesa3d-demos"
+	depends on BR2_PACKAGE_HAS_OPENGL || BR2_PACKAGE_HAS_OPENGL_ES \
+		|| BR2_PACKAGE_HAS_OPENGL_EGL || BR2_PACKAGE_HAS_OPENVG
+	help
+	  OpenGL demos from the Mesa 3D project.
+
+	  http://mesa3d.org
diff --git a/package/mesa3d-demos/mesa3d-demos-optional-gl.patch b/package/mesa3d-demos/mesa3d-demos-optional-gl.patch
new file mode 100644
index 0000000..9345d29
--- /dev/null
+++ b/package/mesa3d-demos/mesa3d-demos-optional-gl.patch
@@ -0,0 +1,348 @@
+This patch makes the egl stuff work with other opengles providers and makes
+it possible to build the demos without opengl (only opengles.)
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: mesa3d-demos-8.1.0/configure.ac
+===================================================================
+--- mesa3d-demos-8.1.0.orig/configure.ac	2013-02-24 04:49:47.000000000 -0600
++++ mesa3d-demos-8.1.0/configure.ac	2013-09-05 10:01:19.137886856 -0500
+@@ -51,6 +51,14 @@
+   ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])])
+ PKG_PROG_PKG_CONFIG()
+ 
++AC_ARG_ENABLE([gl],
++    [AS_HELP_STRING([--enable-gl],
++        [enable GL library @<:@default=no@:>@])],
++    [gl_enabled="$enableval"],
++    [gl_enabled=auto])
++
++if test "x$gl_enabled" != "xno"; then
++
+ dnl Get the pkg-config definitions for libGL.  We include a fallback
+ dnl path for GL implementation that don't provide a .pc file
+ PKG_CHECK_MODULES(GL, [gl], [], [
+@@ -103,6 +111,8 @@
+ DEMO_CFLAGS="$DEMO_CFLAGS $GLU_CFLAGS"
+ DEMO_LIBS="$DEMO_LIBS $GLU_LIBS"
+ 
++fi
++
+ AC_ARG_ENABLE([egl],
+     [AS_HELP_STRING([--enable-egl],
+         [enable EGL library @<:@default=no@:>@])],
+@@ -202,7 +212,6 @@
+         [enable support for wayland @<:@default=no@:>@])],
+     [wayland_enabled="$enableval"],
+     [wayland_enabled=no])
+-
+ if test "x$wayland_enabled" != "xno"; then
+     PKG_CHECK_MODULES(WAYLAND, [wayland-client wayland-egl], [wayland_enabled=yes], [wayland_enabled=no])
+ fi
+@@ -287,7 +296,7 @@
+ AC_SUBST([WAYLAND_CFLAGS])
+ AC_SUBST([WAYLAND_LIBS])
+ 
+-
++AM_CONDITIONAL(HAVE_GL, test "x$gl_enabled" = "xyes")
+ AM_CONDITIONAL(HAVE_EGL, test "x$egl_enabled" = "xyes")
+ AM_CONDITIONAL(HAVE_GLESV1, test "x$glesv1_enabled" = "xyes")
+ AM_CONDITIONAL(HAVE_GLESV2, test "x$glesv2_enabled" = "xyes")
+Index: mesa3d-demos-8.1.0/src/egl/eglut/eglut.c
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/eglut/eglut.c	2010-12-26 15:14:50.000000000 -0600
++++ mesa3d-demos-8.1.0/src/egl/eglut/eglut.c	2013-09-05 09:53:25.769878216 -0500
+@@ -76,8 +76,9 @@
+ static void
+ _eglutDestroyWindow(struct eglut_window *win)
+ {
+-   if (_eglut->surface_type != EGL_PBUFFER_BIT &&
+-       _eglut->surface_type != EGL_SCREEN_BIT_MESA)
++
++   if (_eglut->surface_type == EGL_WINDOW_BIT ||
++       _eglut->surface_type == EGL_PIXMAP_BIT)
+       eglDestroySurface(_eglut->dpy, win->surface);
+ 
+    _eglutNativeFiniWindow(win);
+@@ -175,7 +176,9 @@
+             win->config, win->native.u.pixmap, NULL);
+       break;
+    case EGL_PBUFFER_BIT:
++#ifdef EGL_MESA_screen_surface
+    case EGL_SCREEN_BIT_MESA:
++#endif
+       win->surface = win->native.u.surface;
+       break;
+    default:
+@@ -289,8 +292,10 @@
+    if (window->index != win)
+       return;
+ 
++#ifdef EGL_MESA_screen_surface
+    /* XXX it causes some bug in st/egl KMS backend */
+    if ( _eglut->surface_type != EGL_SCREEN_BIT_MESA)
++#endif
+       eglMakeCurrent(_eglut->dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
+ 
+    _eglutDestroyWindow(_eglut->current);
+Index: mesa3d-demos-8.1.0/src/egl/eglut/eglut_screen.c
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/eglut/eglut_screen.c	2012-12-15 01:17:06.000000000 -0600
++++ mesa3d-demos-8.1.0/src/egl/eglut/eglut_screen.c	2013-09-05 09:54:27.505879343 -0500
+@@ -35,26 +35,33 @@
+ 
+ #define MAX_MODES 100
+ 
++#ifdef EGL_MESA_screen_surface
+ static EGLScreenMESA kms_screen;
+ static EGLModeMESA kms_mode;
+ static EGLint kms_width, kms_height;
++#endif
+ 
+ void
+ _eglutNativeInitDisplay(void)
+ {
++#ifdef EGL_MESA_screen_surface
+    _eglut->native_dpy = EGL_DEFAULT_DISPLAY;
+    _eglut->surface_type = EGL_SCREEN_BIT_MESA;
++#endif
+ }
+ 
+ void
+ _eglutNativeFiniDisplay(void)
+ {
++#ifdef EGL_MESA_screen_surface
+    kms_screen = 0;
+    kms_mode = 0;
+    kms_width = 0;
+    kms_height = 0;
++#endif
+ }
+ 
++#ifdef EGL_MESA_screen_surface
+ static void
+ init_kms(void)
+ {
+@@ -94,19 +101,23 @@
+    kms_width = width;
+    kms_height = height;
+ }
++#endif
+ 
+ void
+ _eglutNativeInitWindow(struct eglut_window *win, const char *title,
+                        int x, int y, int w, int h)
+ {
++#ifdef EGL_MESA_screen_surface
+    EGLint surf_attribs[16];
+    EGLint i;
++#endif
+    const char *exts;
+ 
+    exts = eglQueryString(_eglut->dpy, EGL_EXTENSIONS);
+    if (!exts || !strstr(exts, "EGL_MESA_screen_surface"))
+       _eglutFatal("EGL_MESA_screen_surface is not supported\n");
+ 
++#ifdef EGL_MESA_screen_surface
+    init_kms();
+ 
+    i = 0;
+@@ -128,14 +139,17 @@
+ 
+    win->native.width = kms_width;
+    win->native.height = kms_height;
++#endif
+ }
+ 
+ void
+ _eglutNativeFiniWindow(struct eglut_window *win)
+ {
++#ifdef EGL_MESA_screen_surface
+    eglShowScreenSurfaceMESA(_eglut->dpy,
+          kms_screen, EGL_NO_SURFACE, 0);
+    eglDestroySurface(_eglut->dpy, win->native.u.surface);
++#endif
+ }
+ 
+ void
+Index: mesa3d-demos-8.1.0/src/egl/opengl/Makefile.am
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/opengl/Makefile.am	2012-12-15 01:17:06.000000000 -0600
++++ mesa3d-demos-8.1.0/src/egl/opengl/Makefile.am	2013-09-05 09:55:09.601880111 -0500
+@@ -50,6 +50,7 @@
+ endif
+ 
+ if HAVE_EGL
++if HAVE_GL
+ noinst_PROGRAMS = \
+ 	demo1 \
+ 	demo2 \
+@@ -61,6 +62,7 @@
+ 	$(EGL_DRM_DEMOS) \
+ 	$(EGL_X11_DEMOS)
+ endif
++endif
+ 
+ egltri_screen_SOURCES = egltri.c
+ eglgears_screen_SOURCES = eglgears.c
+Index: mesa3d-demos-8.1.0/src/egl/opengl/demo1.c
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/opengl/demo1.c	2010-12-26 15:14:50.000000000 -0600
++++ mesa3d-demos-8.1.0/src/egl/opengl/demo1.c	2013-09-05 09:57:06.985882254 -0500
+@@ -18,6 +18,7 @@
+ static void
+ TestScreens(EGLDisplay dpy)
+ {
++#ifdef EGL_MESA_screen_surface
+ #define MAX 8
+    EGLScreenMESA screens[MAX];
+    EGLint numScreens;
+@@ -28,6 +29,7 @@
+    for (i = 0; i < numScreens; i++) {
+       printf(" Screen %d handle: %d\n", i, (int) screens[i]);
+    }
++#endif
+ }
+ 
+ /**
+Index: mesa3d-demos-8.1.0/src/egl/opengl/demo2.c
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/opengl/demo2.c	2012-12-15 01:17:06.000000000 -0600
++++ mesa3d-demos-8.1.0/src/egl/opengl/demo2.c	2013-09-05 09:57:32.805882725 -0500
+@@ -16,6 +16,7 @@
+ 
+ /*#define FRONTBUFFER*/
+ 
++#ifdef EGL_MESA_screen_surface
+ static void _subset_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2,
+                           GLfloat r, GLfloat g, GLfloat b)
+ {
+@@ -95,12 +96,13 @@
+       printf(" Screen %d handle: %d\n", i, (int) screens[i]);
+    }
+ }
+-
++#endif
+ 
+ int
+ main(int argc, char *argv[])
+ {
+    int maj, min;
++#ifdef EGL_MESA_screen_surface
+    EGLContext ctx;
+    EGLSurface pbuffer, screen_surf;
+    EGLConfig configs[10];
+@@ -115,6 +117,7 @@
+    EGLModeMESA mode;
+    EGLScreenMESA screen;
+    EGLint count;
++#endif
+ 
+    EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
+    assert(d);
+@@ -132,6 +135,7 @@
+       exit(1);
+    }
+ 
++#ifdef EGL_MESA_screen_surface
+    eglGetConfigs(d, configs, 10, &numConfigs);
+    printf("Got %d EGL configs:\n", numConfigs);
+    for (i = 0; i < numConfigs; i++) {
+@@ -211,6 +215,7 @@
+    eglDestroySurface(d, pbuffer);
+    eglDestroyContext(d, ctx);
+    eglTerminate(d);
++#endif
+ 
+    return 0;
+ }
+Index: mesa3d-demos-8.1.0/src/egl/opengl/demo3.c
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/opengl/demo3.c	2012-12-15 01:17:06.000000000 -0600
++++ mesa3d-demos-8.1.0/src/egl/opengl/demo3.c	2013-09-05 09:58:08.961883385 -0500
+@@ -46,7 +46,7 @@
+    0x3e, 0x00, 0x00, 0xf8, 0x0c, 0x00, 
+ };
+ 
+-
++#ifdef EGL_MESA_screen_surface
+ static void Init(void)
+ {
+ 
+@@ -551,11 +551,13 @@
+       fclose(f);
+    }
+ }
++#endif
+ 
+ int
+ main(int argc, char *argv[])
+ {
+    int maj, min;
++#ifdef EGL_MESA_screen_surface
+    EGLContext ctx;
+    EGLSurface screen_surf;
+    EGLConfig configs[10];
+@@ -566,6 +568,7 @@
+    const GLubyte *bitmap;
+    EGLint screenAttribs[32];
+    EGLint i;
++#endif
+ 
+    EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
+    assert(d);
+@@ -583,6 +586,7 @@
+       exit(1);
+    }
+ 
++#ifdef EGL_MESA_screen_surface
+    eglGetConfigs(d, configs, 10, &numConfigs);
+    eglGetScreensMESA(d, &screen, 1, &count);
+    eglGetModesMESA(d, screen, &mode, 1, &count);
+@@ -642,6 +646,7 @@
+    eglDestroySurface(d, screen_surf);
+    eglDestroyContext(d, ctx);
+    eglTerminate(d);
++#endif
+ 
+    return 0;
+ }
+Index: mesa3d-demos-8.1.0/src/egl/opengles2/Makefile.am
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/opengles2/Makefile.am	2012-12-15 01:17:06.000000000 -0600
++++ mesa3d-demos-8.1.0/src/egl/opengles2/Makefile.am	2013-09-05 09:58:48.937884115 -0500
+@@ -35,9 +35,10 @@
+ 
+ if HAVE_EGL
+ if HAVE_GLESV2
+-bin_PROGRAMS = \
++bin_PROGRAMS = es2gears_screen
++if HAVE_X11
++bin_PROGRAMS += \
+ 	es2_info \
+-	es2gears_screen \
+ 	es2gears_x11 \
+ 	es2tri
+ if HAVE_WAYLAND
+@@ -45,6 +46,7 @@
+ endif
+ endif
+ endif
++endif
+ 
+ es2_info_LDADD = $(X11_LIBS)
+ es2tri_LDADD = $(X11_LIBS)
+Index: mesa3d-demos-8.1.0/src/util/Makefile.am
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/util/Makefile.am	2012-12-15 01:17:06.000000000 -0600
++++ mesa3d-demos-8.1.0/src/util/Makefile.am	2013-09-05 10:00:21.957885813 -0500
+@@ -27,7 +27,9 @@
+ AM_LDFLAGS = \
+ 	$(DEMO_LIBS)
+ 
++if HAVE_GL
+ noinst_LTLIBRARIES = libutil.la
++endif
+ 
+ if HAVE_GLUT
+ AM_CFLAGS += \
diff --git a/package/mesa3d-demos/mesa3d-demos.mk b/package/mesa3d-demos/mesa3d-demos.mk
new file mode 100644
index 0000000..2cb7cd8
--- /dev/null
+++ b/package/mesa3d-demos/mesa3d-demos.mk
@@ -0,0 +1,63 @@
+################################################################################
+#
+# mesa3d-demos
+#
+################################################################################
+
+MESA3D_DEMOS_VERSION = 8.1.0
+MESA3D_DEMOS_SOURCE = mesa-demos-$(MESA3D_DEMOS_VERSION).tar.bz2
+MESA3D_DEMOS_SITE = ftp://ftp.freedesktop.org/pub/mesa/demos/$(MESA3D_DEMOS_VERSION)
+MESA3D_DEMOS_INSTALL_STAGING = YES
+MESA3D_DEMOS_AUTORECONF = YES
+MESA3D_DEMOS_DEPENDENCIES = host-pkgconf
+
+ifeq ($(BR2_PACKAGE_HAS_OPENGL),y)
+MESA3D_DEMOS_DEPENDENCIES += libgl
+MESA3D_DEMOS_CONF_OPT += --enable-gl
+else
+MESA3D_DEMOS_CONF_OPT += --disable-gl
+endif
+
+ifeq ($(BR2_PACKAGE_HAS_OPENGL_EGL),y)
+MESA3D_DEMOS_DEPENDENCIES += libegl
+MESA3D_DEMOS_CONF_OPT += --enable-egl
+else
+MESA3D_DEMOS_CONF_OPT += --disable-egl
+endif
+
+ifeq ($(BR2_PACKAGE_HAS_OPENGL_ES),y)
+MESA3D_DEMOS_DEPENDENCIES += libgles
+MESA3D_DEMOS_CONF_OPT += --enable-gles1 --enable-gles2
+else
+MESA3D_DEMOS_CONF_OPT += --disable-gles1 --disable-gles2
+endif
+
+ifeq ($(BR2_PACKAGE_HAS_OPENVG),y)
+MESA3D_DEMOS_DEPENDENCIES += libopenvg
+MESA3D_DEMOS_CONF_OPT += --enable-vg
+else
+MESA3D_DEMOS_CONF_OPT += --disable-vg
+endif
+
+ifeq ($(BR2_PACKAGE_MESA3D_GBM),y)
+MESA3D_DEMOS_DEPENDENCIES += mesa3d
+MESA3D_DEMOS_CONF_OPT += --enable-gbm
+else
+MESA3D_DEMOS_CONF_OPT += --disable-gbm
+endif
+
+ifeq ($(BR2_PACKAGE_FREETYPE),y)
+MESA3D_DEMOS_DEPENDENCIES += freetype
+MESA3D_DEMOS_CONF_OPT += --enable-freetype2
+else
+MESA3D_DEMOS_CONF_OPT += --disable-freetype2
+endif
+
+ifeq ($(BR2_PACKAGE_WAYLAND),y)
+MESA3D_DEMOS_DEPENDENCIES += wayland
+MESA3D_DEMOS_CONF_OPT += --enable-wayland
+else
+MESA3D_DEMOS_CONF_OPT += --disable-wayland
+endif
+
+$(eval $(autotools-package))
-- 
1.8.1.2

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

* [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support Spenser Gilliland
@ 2013-09-08 16:51   ` Thomas Petazzoni
  2013-09-20  8:41   ` Peter Korsgaard
  1 sibling, 0 replies; 28+ messages in thread
From: Thomas Petazzoni @ 2013-09-08 16:51 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

On Thu,  5 Sep 2013 23:25:15 -0500, Spenser Gilliland wrote:
> 
> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
> ---
>  package/libdrm/Config.in | 68 ++++++++++++++++++++++++++++++++++++++++--------
>  package/libdrm/libdrm.mk | 53 ++++++++++++++++++++++++++++++-------
>  2 files changed, 100 insertions(+), 21 deletions(-)

I continue to believe your commit logs could be a little bit more
verbose, but other than that:

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

Also, the xlib_libpthread-stubs package could probably be moved outside
of the BR2_PACKAGE_XORG7 condition, but this can be done later on.

Finally, a question that remains is on what platforms did you test
this? I.e which DRM driver did you enable to get Mesa3D providing the
relevant libraries needed to run the glmark2 benchmark on your boards?

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] 28+ messages in thread

* [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo Spenser Gilliland
@ 2013-09-08 16:59   ` Thomas Petazzoni
  2013-09-12  4:41     ` Spenser Gilliland
  2013-09-20 13:54   ` Peter Korsgaard
  1 sibling, 1 reply; 28+ messages in thread
From: Thomas Petazzoni @ 2013-09-08 16:59 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

It'd be great if your patches were split in a slightly more
fine-grained fashion. I.e this patch should have been three patches,
for the three different things you mention in the patch title.

On Thu,  5 Sep 2013 23:25:16 -0500, Spenser Gilliland wrote:
>  SUNXI_CEDARX_INSTALL_STAGING = YES
> @@ -14,7 +14,12 @@ SUNXI_CEDARX_CONFIGURE_OPTS = \
>  
>  ifeq ($(BR2_ARM_EABIHF),y)
>  SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armhf
> -# libavheap.so is only available on EABIHF
> +SUNXI_CEDARX_SAMPLE_LOC = $(SUNXI_CEDARX_BIN_DIR)/sample/ve
> +else
> +SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armel2
> +SUNXI_CEDARX_SAMPLE_LOC = $(SUNXI_CEDARX_BIN_DIR)/sample/output/ve
> +endif

I was confused by this for a while, but now I understand: since you've
bumped the version, the libavheap.so library is now available for
non-EABIhf toolchains.

BTW, silly from the cedarx people that the sample binary is not in the
same location between EABIhf and EABI.

Also, what is the difference between the linux-armel2 and linux-armel
directories in the CedarX stuff?

So, essentially, patch looks good to me.

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

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] 28+ messages in thread

* [Buildroot] [PATCH v2 3/7] mesa3d: pull out from x11
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 3/7] mesa3d: pull out from x11 Spenser Gilliland
@ 2013-09-08 17:02   ` Thomas Petazzoni
  2013-09-12  2:57     ` Spenser Gilliland
  0 siblings, 1 reply; 28+ messages in thread
From: Thomas Petazzoni @ 2013-09-08 17:02 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

On Thu,  5 Sep 2013 23:25:17 -0500, Spenser Gilliland wrote:
> 
> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
> ---

In your patch 4/7, mesa3d still has a 'depends on BR2_PACKAGE_XORG7',
so to me, it makes little sense to move it out of the package/x11r7/
directory.

I believe we first need to make the libdrm package selectable without
BR2_PACKAGE_XORG7 (which as explained in my review of patch 1/7,
requires moving the pthread-stubs package outside of the
BR2_PACKAGE_XORG7 condition), then we can make mesa3d selectable
without BR2_PACKAGE_XORG7.

Bottom-line: I believe it's too early to move mesa3d outside of
package/x11r7/. Let's keep it in there for now, merge your current
patches, and work on that as a followup step.

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] 28+ messages in thread

* [Buildroot] [PATCH v2 5/7] libpng12: new package
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 5/7] libpng12: new package Spenser Gilliland
@ 2013-09-08 17:04   ` Thomas Petazzoni
  2013-09-11  5:33     ` Arnout Vandecappelle
  0 siblings, 1 reply; 28+ messages in thread
From: Thomas Petazzoni @ 2013-09-08 17:04 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

On Thu,  5 Sep 2013 23:25:19 -0500, Spenser Gilliland wrote:

> +config BR2_PACKAGE_LIBPNG12
> +	bool "libpng"

Maybe:

	bool "libpng12"

> +	select BR2_PACKAGE_ZLIB
> +	help
> +	  Library for handling PNG (Portable Network Graphics)
> +	  images. This installs the 1.2.x series.  Different versions of
> +	  libpng have different APIs.
> +
> +	  http://www.libpng.org/
> diff --git a/package/libpng12/libpng12.mk b/package/libpng12/libpng12.mk
> new file mode 100644
> index 0000000..39094f2
> --- /dev/null
> +++ b/package/libpng12/libpng12.mk
> @@ -0,0 +1,18 @@
> +################################################################################
> +#
> +# libpng12
> +#
> +################################################################################
> +
> +LIBPNG12_VERSION = 1.2.50
> +LIBPNG12_SERIES = 12
> +LIBPNG12_SOURCE = libpng-$(LIBPNG12_VERSION).tar.bz2
> +LIBPNG12_SITE = http://downloads.sourceforge.net/project/libpng/libpng$(LIBPNG12_SERIES)/$(LIBPNG12_VERSION)
> +LIBPNG12_LICENSE = libpng license
> +LIBPNG12_LICENSE_FILES = LICENSE
> +LIBPNG12_INSTALL_STAGING = YES
> +LIBPNG12_DEPENDENCIES = host-pkgconf zlib
> +LIBPNG12_CONFIG_SCRIPTS = libpng$(LIBPNG12_SERIES)-config libpng-config

This last one annoys me a bit: if both libpng and libpng12 install
libpng-config, it means that another package that runs libpng-config to
find out where libpng is and how to link against it will either be
linked against the modern libpng or the older libpng12 depending on
which one was installed.

Since libpng12 is only installed for compatibility reasons with some
packages, I would therefore suggest that we do not install
libpng-config in libpng12.mk (and ensure that nothing installed by
libpng12 can conflict with the real libpng installation).

Thoughts?

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] 28+ messages in thread

* [Buildroot] [PATCH v2 4/7] mesa3d: modularize and bump to version 9.1.6
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 4/7] mesa3d: modularize and bump to version 9.1.6 Spenser Gilliland
@ 2013-09-08 18:30   ` Thomas Petazzoni
  2013-09-12  2:58     ` Spenser Gilliland
  0 siblings, 1 reply; 28+ messages in thread
From: Thomas Petazzoni @ 2013-09-08 18:30 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

On Thu,  5 Sep 2013 23:25:18 -0500, Spenser Gilliland wrote:
> 
> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
> ---
>  package/mesa3d/Config.in                           | 177 ++++++++++++++++++++-
>  package/mesa3d/mesa3d-cross-glsl-compiler.patch    |  41 +++++
>  package/mesa3d/mesa3d-gbm-without-dri.patch        |  30 ++++
>  package/mesa3d/mesa3d-uclibc-locale.patch          |  56 -------
>  package/mesa3d/mesa3d.mk                           | 115 +++++++++++--
>  package/opengl/Config.in                           |   3 +
>  package/opengl/libegl/libegl.mk                    |   4 +
>  package/opengl/libgl/libgl.mk                      |  20 +++
>  package/opengl/libgles/libgles.mk                  |   4 +
>  package/opengl/libopenvg/libopenvg.mk              |   4 +
>  .../xserver_xorg-server/xserver_xorg-server.mk     |   4 +-
>  11 files changed, 378 insertions(+), 80 deletions(-)
>  create mode 100644 package/mesa3d/mesa3d-cross-glsl-compiler.patch
>  create mode 100644 package/mesa3d/mesa3d-gbm-without-dri.patch
>  delete mode 100644 package/mesa3d/mesa3d-uclibc-locale.patch
>  create mode 100644 package/opengl/libgl/libgl.mk

I'm far from being able to understand all the internal details of
Mesa3D, what GBM is and so on, but from a Buildroot packaging
perspective, it looks good to me, so:

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

However, see my comments on PATCH 3/7 saying that maybe moving mesa3d
outside of package/x11r7/ isn't really a good idea for the moment.

Another comment below.

>  	depends on BR2_INSTALL_LIBSTDCPP
> +	depends on BR2_LARGEFILE

This would require a comment saying that mesa3d is not available due to
toolchain missing C++ and largefile support. This comment is missing
today for C++ support, but it'd be good to add it. Can be done as a
followup patch, though.

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] 28+ messages in thread

* [Buildroot] [PATCH v2 6/7] glmark2: new package
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 6/7] glmark2: " Spenser Gilliland
@ 2013-09-08 18:38   ` Thomas Petazzoni
  2013-09-12  3:12     ` Spenser Gilliland
  2013-09-11  5:47   ` Arnout Vandecappelle
  1 sibling, 1 reply; 28+ messages in thread
From: Thomas Petazzoni @ 2013-09-08 18:38 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

On Thu,  5 Sep 2013 23:25:20 -0500, Spenser Gilliland wrote:

> diff --git a/package/glmark2/Config.in b/package/glmark2/Config.in
> new file mode 100644
> index 0000000..6dd7833
> --- /dev/null
> +++ b/package/glmark2/Config.in
> @@ -0,0 +1,16 @@
> +config BR2_PACKAGE_GLMARK2
> +	bool "glmark2"
> +	depends on BR2_PACKAGE_MESA3D
> +	depends on BR2_PACKAGE_MESA3D_GBM # depends on udev cannot select

Amazing that we need udev to do an OpenGL benchmark these days. But
indeed, the GBM code in Mesa3d needs the libudev library.

> +	depends on BR2_LARGEFILE
> +	depends on BR2_PACKAGE_HAS_OPENGL || \
> +		(BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES)
> +	select BR2_PACKAGE_JPEG
> +	select BR2_PACKAGE_LIBPNG12
> +	help
> +	  glmark2 is a benchmark for OpenGL (ES) 2.0. It uses only the subset of the
> +	  OpenGL 2.0 API that is compatible with OpenGL ES 2.0.
> +
> +comment "glmark2 requires an OpenGL implementation and mesa3D to be enabled"
> +	depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES \
> +		|| !BR2_PACKAGE_XORG7

We probably need more comments in here: about largefile, and about Mesa
GBM. But maybe mentioning the need for OpenGL isn't really needed: an
user willing to use glmark2 will most likely be aware that OpenGL
support is needed.

So:

comment "glmark2 requires Mesa3D GBM support, and largefile support in toolchain"
	depends on (BR2_PACKAGE_HAS_OPENGL || BR2_PACKAGE_HAS_OPENGL_ES) && (!BR2_LARGEFILE || !BR2_MESA3D_GBM)

(to be verified).

> diff --git a/package/glmark2/glmark2-add-mali-support.patch b/package/glmark2/glmark2-add-mali-support.patch
> new file mode 100644
> index 0000000..c37c88c
> --- /dev/null
> +++ b/package/glmark2/glmark2-add-mali-support.patch
> @@ -0,0 +1,102 @@
> +Mali uses a slightly different windowing structure than most
> +implementations add support through this patch.
> +
> +Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>

Have you tried submitting those patches upstream?

> diff --git a/package/glmark2/glmark2.mk b/package/glmark2/glmark2.mk
> new file mode 100644
> index 0000000..b36eaf9
> --- /dev/null
> +++ b/package/glmark2/glmark2.mk
> @@ -0,0 +1,69 @@
> +################################################################################
> +#
> +# glmark2
> +#
> +################################################################################
> +
> +GLMARK2_VERSION = 279
> +GLMARK2_SITE = http://bazaar.launchpad.net/~laanwj/glmark2/fbdev

So you're not using the main branch of glmark2, but this separate fbdev
branch. Correct? I suppose what it adds is the ability to use glmark2
on non-X.org platforms. Do you have an idea on whether this branch is
likely to be merged in the trunk of glmark2?

> +GLMARK2_SITE_METHOD = bzr
> +GLMARK2_SOURCE = glmark2-$(GLMARK2_VERSION).tar.gz
> +GLMARK2_LICENSE = GPLv3+ SGIv1
> +GLMARK2_LICENSE_FILES = COPYING COPYING.SGI
> +
> +GLMARK2_DEPENDENCIES = jpeg libpng12 mesa3d host-python host-pkgconf

I've seen the libpng12 issue being discussed in
https://bugs.launchpad.net/glmark2/+bug/1166506. Some users apparently
tested successfully with libpng 1.5.

Also, do we really need host-python? Python is part of the mandatory
dependencies of Buildroot, so if Python is only needed to get waf
running, then host-python is not needed.

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] 28+ messages in thread

* [Buildroot] [PATCH v2 5/7] libpng12: new package
  2013-09-08 17:04   ` Thomas Petazzoni
@ 2013-09-11  5:33     ` Arnout Vandecappelle
  2013-09-12  3:20       ` Spenser Gilliland
  0 siblings, 1 reply; 28+ messages in thread
From: Arnout Vandecappelle @ 2013-09-11  5:33 UTC (permalink / raw)
  To: buildroot

On 08/09/13 19:04, Thomas Petazzoni wrote:
> Dear Spenser Gilliland,
>
> On Thu,  5 Sep 2013 23:25:19 -0500, Spenser Gilliland wrote:
>
>> +config BR2_PACKAGE_LIBPNG12
>> +	bool "libpng"
>
> Maybe:
>
> 	bool "libpng12"
>
>> +	select BR2_PACKAGE_ZLIB
>> +	help
>> +	  Library for handling PNG (Portable Network Graphics)
>> +	  images. This installs the 1.2.x series.  Different versions of
>> +	  libpng have different APIs.
>> +
>> +	  http://www.libpng.org/
>> diff --git a/package/libpng12/libpng12.mk b/package/libpng12/libpng12.mk
>> new file mode 100644
>> index 0000000..39094f2
>> --- /dev/null
>> +++ b/package/libpng12/libpng12.mk
>> @@ -0,0 +1,18 @@
>> +################################################################################
>> +#
>> +# libpng12
>> +#
>> +################################################################################
>> +
>> +LIBPNG12_VERSION = 1.2.50
>> +LIBPNG12_SERIES = 12

  Since the 12 is hardcoded in the package name, it is pretty silly to 
have this as a variable. It's there for consistency with libpng itself, 
but I don't think that that is required.

>> +LIBPNG12_SOURCE = libpng-$(LIBPNG12_VERSION).tar.bz2
>> +LIBPNG12_SITE = http://downloads.sourceforge.net/project/libpng/libpng$(LIBPNG12_SERIES)/$(LIBPNG12_VERSION)
>> +LIBPNG12_LICENSE = libpng license
>> +LIBPNG12_LICENSE_FILES = LICENSE
>> +LIBPNG12_INSTALL_STAGING = YES
>> +LIBPNG12_DEPENDENCIES = host-pkgconf zlib
>> +LIBPNG12_CONFIG_SCRIPTS = libpng$(LIBPNG12_SERIES)-config libpng-config
>
> This last one annoys me a bit: if both libpng and libpng12 install
> libpng-config, it means that another package that runs libpng-config to
> find out where libpng is and how to link against it will either be
> linked against the modern libpng or the older libpng12 depending on
> which one was installed.
>
> Since libpng12 is only installed for compatibility reasons with some
> packages, I would therefore suggest that we do not install
> libpng-config in libpng12.mk (and ensure that nothing installed by
> libpng12 can conflict with the real libpng installation).

  Sounds correct to me. It is making things more complex, of course, 
because you need something like:

LIBPNG_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBPNG12),libpng12)

in libpng.mk.

  Or else you have to override the install commands, or patch the Makefile.


  Regards,
  Arnout


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

* [Buildroot] [PATCH v2 6/7] glmark2: new package
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 6/7] glmark2: " Spenser Gilliland
  2013-09-08 18:38   ` Thomas Petazzoni
@ 2013-09-11  5:47   ` Arnout Vandecappelle
  2013-09-12  3:17     ` Spenser Gilliland
  1 sibling, 1 reply; 28+ messages in thread
From: Arnout Vandecappelle @ 2013-09-11  5:47 UTC (permalink / raw)
  To: buildroot

On 06/09/13 06:25, Spenser Gilliland wrote:
>
> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
> ---
>   package/Config.in                                  |   1 +
>   package/glmark2/Config.in                          |  16 ++++
>   package/glmark2/glmark2-add-mali-support.patch     | 102 +++++++++++++++++++++
>   package/glmark2/glmark2-fix-add-GLchar.patch       |  17 ++++
>   .../glmark2-gl-to-glesv2-on-drm-flavor.patch       |  25 +++++
>   package/glmark2/glmark2.mk                         |  69 ++++++++++++++
>   6 files changed, 230 insertions(+)
>   create mode 100644 package/glmark2/Config.in
>   create mode 100644 package/glmark2/glmark2-add-mali-support.patch
>   create mode 100644 package/glmark2/glmark2-fix-add-GLchar.patch
>   create mode 100644 package/glmark2/glmark2-gl-to-glesv2-on-drm-flavor.patch
>   create mode 100644 package/glmark2/glmark2.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 3a8bd6d..27bd70a 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -25,6 +25,7 @@ source "package/dmalloc/Config.in"
>   source "package/dropwatch/Config.in"
>   source "package/duma/Config.in"
>   source "package/gdb/Config.in"
> +source "package/glmark2/Config.in"
>   source "package/iozone/Config.in"
>   source "package/kexec/Config.in"
>   source "package/latencytop/Config.in"
> diff --git a/package/glmark2/Config.in b/package/glmark2/Config.in
> new file mode 100644
> index 0000000..6dd7833
> --- /dev/null
> +++ b/package/glmark2/Config.in
> @@ -0,0 +1,16 @@
> +config BR2_PACKAGE_GLMARK2
> +	bool "glmark2"
> +	depends on BR2_PACKAGE_MESA3D

  I don't see why this should be a depends rather than a select.

> +	depends on BR2_PACKAGE_MESA3D_GBM # depends on udev cannot select

  I would make this

	depends on BR2_PACKAGE_UDEV
	select BR2_PACKAGE_MESA3D_GBM

and in the comment refer to udev instead of mesa3d.

> +	depends on BR2_LARGEFILE
> +	depends on BR2_PACKAGE_HAS_OPENGL || \
> +		(BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES)
> +	select BR2_PACKAGE_JPEG
> +	select BR2_PACKAGE_LIBPNG12
> +	help
> +	  glmark2 is a benchmark for OpenGL (ES) 2.0. It uses only the subset of the

  Isn't this line too long?

> +	  OpenGL 2.0 API that is compatible with OpenGL ES 2.0.
> +
> +comment "glmark2 requires an OpenGL implementation and mesa3D to be enabled"
> +	depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES \
> +		|| !BR2_PACKAGE_XORG7
[snip]
> diff --git a/package/glmark2/glmark2.mk b/package/glmark2/glmark2.mk
> new file mode 100644
> index 0000000..b36eaf9
> --- /dev/null
> +++ b/package/glmark2/glmark2.mk
> @@ -0,0 +1,69 @@
> +################################################################################
> +#
> +# glmark2
> +#
> +################################################################################
> +
> +GLMARK2_VERSION = 279
> +GLMARK2_SITE = http://bazaar.launchpad.net/~laanwj/glmark2/fbdev
> +GLMARK2_SITE_METHOD = bzr
> +GLMARK2_SOURCE = glmark2-$(GLMARK2_VERSION).tar.gz

  This is the default, and anyway irrelevant for VCS-extracted packages.

> +GLMARK2_LICENSE = GPLv3+ SGIv1
> +GLMARK2_LICENSE_FILES = COPYING COPYING.SGI
> +
> +GLMARK2_DEPENDENCIES = jpeg libpng12 mesa3d host-python host-pkgconf
> +
> +GLMARK2_CONF_OPTS = --prefix=/usr/
> +
> +ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
> +GLMARK2_DEPENDENCIES += libegl libgles
> +GLMARK2_FLAVORS += x11-glesv2
> +endif
> +
> +ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER)$(BR2_PACKAGE_HAS_OPENGL),yy)
> +GLMARK2_DEPENDENCIES += libgl
> +GLMARK2_FLAVORS += x11-gl
> +endif
> +
> +ifeq ($(BR2_PACKAGE_HAS_OPENGL_EGL)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
> +GLMARK2_DEPENDENCIES += libdrm libegl libgles

  If you have this dependency here, you also should have the 
corresponding select in Config.in:

	select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_HAS_OPENGL_EGL

(condition is simplified because in the opengl case libdrm is also needed).

  Oh, but libdrm is already a dependency of mesa3d. Then this dependency 
is in fact not needed.


  Regards,
  Arnout

> +GLMARK2_FLAVORS += drm-glesv2 fbdev-glesv2
> +endif
> +
> +ifeq ($(BR2_PACKAGE_HAS_OPENGL_EGL)$(BR2_PACKAGE_HAS_OPENGL),yy)
> +GLMARK2_DEPENDENCIES += libdrm libgl
> +GLMARK2_FLAVORS += drm-gl
> +endif
> +
> +ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
> +GLMARK2_DEPENDENCIES += wayland libegl libgles
> +GLMARK2_FLAVORS += wayland-glesv2
> +endif
> +
> +ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_HAS_OPENGL),yy)
> +GLMARK2_DEPENDENCIES += wayland libgl
> +GLMARK2_FLAVORS += wayland-gl
> +endif
> +
> +ifeq ($(BR2_PACKAGE_SUNXI_MALI),y)
> +GLMARK2_CONF_OPTS += --for-mali
> +endif
> +
> +GLMARK2_CONF_OPTS += \
> +	--with-flavors=$(subst $(space),$(comma),$(GLMARK2_FLAVORS))
> +
> +define GLMARK2_CONFIGURE_CMDS
> +	cd $(@D) && \
> +		$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) ./waf configure \
> +		$(GLMARK2_CONF_OPTS)
> +endef
> +
> +define GLMARK2_BUILD_CMDS
> +	cd $(@D) && $(TARGET_MAKE_ENV) ./waf
> +endef
> +
> +define GLMARK2_INSTALL_TARGET_CMDS
> +	cd $(@D) && $(TARGET_MAKE_ENV) ./waf install --destdir=$(TARGET_DIR)
> +endef
> +
> +$(eval $(generic-package))
>


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

* [Buildroot] [PATCH v2 7/7] mesa3d-demos: new package
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 7/7] mesa3d-demos: " Spenser Gilliland
@ 2013-09-11  5:58   ` Arnout Vandecappelle
  2013-09-12  3:21     ` Spenser Gilliland
  0 siblings, 1 reply; 28+ messages in thread
From: Arnout Vandecappelle @ 2013-09-11  5:58 UTC (permalink / raw)
  To: buildroot

On 06/09/13 06:25, Spenser Gilliland wrote:
>
> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
> ---
>   package/Config.in                                  |   1 +
>   package/mesa3d-demos/Config.in                     |   8 +
>   .../mesa3d-demos/mesa3d-demos-optional-gl.patch    | 348 +++++++++++++++++++++
>   package/mesa3d-demos/mesa3d-demos.mk               |  63 ++++
>   4 files changed, 420 insertions(+)
>   create mode 100644 package/mesa3d-demos/Config.in
>   create mode 100644 package/mesa3d-demos/mesa3d-demos-optional-gl.patch
>   create mode 100644 package/mesa3d-demos/mesa3d-demos.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 27bd70a..e8ceb5a 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -39,6 +39,7 @@ source "package/lttng-modules/Config.in"
>   source "package/lttng-tools/Config.in"
>   source "package/ltrace/Config.in"
>   source "package/memstat/Config.in"
> +source "package/mesa3d-demos/Config.in"

  I don't think that the Debug tools menu is the right place for this - 
at least, we have nothing similar there at the moment. How about putting 
it in the Graphical libraries and applications menu?

>   source "package/netperf/Config.in"
>   source "package/oprofile/Config.in"
>   source "package/pax-utils/Config.in"
> diff --git a/package/mesa3d-demos/Config.in b/package/mesa3d-demos/Config.in
> new file mode 100644
> index 0000000..24c29e0
> --- /dev/null
> +++ b/package/mesa3d-demos/Config.in
> @@ -0,0 +1,8 @@
> +config BR2_PACKAGE_MESA3D_DEMOS
> +	bool "mesa3d-demos"
> +	depends on BR2_PACKAGE_HAS_OPENGL || BR2_PACKAGE_HAS_OPENGL_ES \
> +		|| BR2_PACKAGE_HAS_OPENGL_EGL || BR2_PACKAGE_HAS_OPENVG
> +	help
> +	  OpenGL demos from the Mesa 3D project.
> +
> +	  http://mesa3d.org
> diff --git a/package/mesa3d-demos/mesa3d-demos-optional-gl.patch b/package/mesa3d-demos/mesa3d-demos-optional-gl.patch
> new file mode 100644
> index 0000000..9345d29
> --- /dev/null
> +++ b/package/mesa3d-demos/mesa3d-demos-optional-gl.patch
> @@ -0,0 +1,348 @@
> +This patch makes the egl stuff work with other opengles providers and makes
> +it possible to build the demos without opengl (only opengles.)

  Can you upstream this? Probably needs to be split into two patches in 
that case.

> +
> +Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
> +---
> +Index: mesa3d-demos-8.1.0/configure.ac
> +===================================================================
> +--- mesa3d-demos-8.1.0.orig/configure.ac	2013-02-24 04:49:47.000000000 -0600
> ++++ mesa3d-demos-8.1.0/configure.ac	2013-09-05 10:01:19.137886856 -0500
> +@@ -51,6 +51,14 @@
> +   ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])])
> + PKG_PROG_PKG_CONFIG()
> +
> ++AC_ARG_ENABLE([gl],
> ++    [AS_HELP_STRING([--enable-gl],
> ++        [enable GL library @<:@default=no@:>@])],
> ++    [gl_enabled="$enableval"],
> ++    [gl_enabled=auto])
> ++
> ++if test "x$gl_enabled" != "xno"; then
> ++
> + dnl Get the pkg-config definitions for libGL.  We include a fallback
> + dnl path for GL implementation that don't provide a .pc file
> + PKG_CHECK_MODULES(GL, [gl], [], [
> +@@ -103,6 +111,8 @@
> + DEMO_CFLAGS="$DEMO_CFLAGS $GLU_CFLAGS"
> + DEMO_LIBS="$DEMO_LIBS $GLU_LIBS"
> +
> ++fi
> ++
> + AC_ARG_ENABLE([egl],
> +     [AS_HELP_STRING([--enable-egl],
> +         [enable EGL library @<:@default=no@:>@])],
> +@@ -202,7 +212,6 @@
> +         [enable support for wayland @<:@default=no@:>@])],
> +     [wayland_enabled="$enableval"],
> +     [wayland_enabled=no])
> +-

  Why remove this line?


  Regards,
  Arnout

> + if test "x$wayland_enabled" != "xno"; then
> +     PKG_CHECK_MODULES(WAYLAND, [wayland-client wayland-egl], [wayland_enabled=yes], [wayland_enabled=no])
> + fi
> +@@ -287,7 +296,7 @@
[snip]



-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

* [Buildroot] [PATCH v2 3/7] mesa3d: pull out from x11
  2013-09-08 17:02   ` Thomas Petazzoni
@ 2013-09-12  2:57     ` Spenser Gilliland
  2013-09-12  7:23       ` Thomas Petazzoni
  0 siblings, 1 reply; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-12  2:57 UTC (permalink / raw)
  To: buildroot

Thomas,

> In your patch 4/7, mesa3d still has a 'depends on BR2_PACKAGE_XORG7',
> so to me, it makes little sense to move it out of the package/x11r7/
> directory.
>
> I believe we first need to make the libdrm package selectable without
> BR2_PACKAGE_XORG7 (which as explained in my review of patch 1/7,
> requires moving the pthread-stubs package outside of the
> BR2_PACKAGE_XORG7 condition), then we can make mesa3d selectable
> without BR2_PACKAGE_XORG7.
>
> Bottom-line: I believe it's too early to move mesa3d outside of
> package/x11r7/. Let's keep it in there for now, merge your current
> patches, and work on that as a followup step.
>

I'll add the move of pthread stubs (and any other required X libs) to
this patch set.

Thanks,
Spenser

-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v2 4/7] mesa3d: modularize and bump to version 9.1.6
  2013-09-08 18:30   ` Thomas Petazzoni
@ 2013-09-12  2:58     ` Spenser Gilliland
  0 siblings, 0 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-12  2:58 UTC (permalink / raw)
  To: buildroot

Thomas,

On Sun, Sep 8, 2013 at 1:30 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Spenser Gilliland,
>
> On Thu,  5 Sep 2013 23:25:18 -0500, Spenser Gilliland wrote:
>>
>> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
>> ---
>>  package/mesa3d/Config.in                           | 177 ++++++++++++++++++++-
>>  package/mesa3d/mesa3d-cross-glsl-compiler.patch    |  41 +++++
>>  package/mesa3d/mesa3d-gbm-without-dri.patch        |  30 ++++
>>  package/mesa3d/mesa3d-uclibc-locale.patch          |  56 -------
>>  package/mesa3d/mesa3d.mk                           | 115 +++++++++++--
>>  package/opengl/Config.in                           |   3 +
>>  package/opengl/libegl/libegl.mk                    |   4 +
>>  package/opengl/libgl/libgl.mk                      |  20 +++
>>  package/opengl/libgles/libgles.mk                  |   4 +
>>  package/opengl/libopenvg/libopenvg.mk              |   4 +
>>  .../xserver_xorg-server/xserver_xorg-server.mk     |   4 +-
>>  11 files changed, 378 insertions(+), 80 deletions(-)
>>  create mode 100644 package/mesa3d/mesa3d-cross-glsl-compiler.patch
>>  create mode 100644 package/mesa3d/mesa3d-gbm-without-dri.patch
>>  delete mode 100644 package/mesa3d/mesa3d-uclibc-locale.patch
>>  create mode 100644 package/opengl/libgl/libgl.mk
>
> I'm far from being able to understand all the internal details of
> Mesa3D, what GBM is and so on, but from a Buildroot packaging
> perspective, it looks good to me, so:
>
> Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>
> However, see my comments on PATCH 3/7 saying that maybe moving mesa3d
> outside of package/x11r7/ isn't really a good idea for the moment.
>
> Another comment below.
>
>>       depends on BR2_INSTALL_LIBSTDCPP
>> +     depends on BR2_LARGEFILE
>
> This would require a comment saying that mesa3d is not available due to
> toolchain missing C++ and largefile support. This comment is missing
> today for C++ support, but it'd be good to add it. Can be done as a
> followup patch, though.

Will fix.

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

-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v2 6/7] glmark2: new package
  2013-09-08 18:38   ` Thomas Petazzoni
@ 2013-09-12  3:12     ` Spenser Gilliland
  0 siblings, 0 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-12  3:12 UTC (permalink / raw)
  To: buildroot

Thomas,

On Sun, Sep 8, 2013 at 1:38 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Spenser Gilliland,
>
> On Thu,  5 Sep 2013 23:25:20 -0500, Spenser Gilliland wrote:
>
>> diff --git a/package/glmark2/Config.in b/package/glmark2/Config.in
>> new file mode 100644
>> index 0000000..6dd7833
>> --- /dev/null
>> +++ b/package/glmark2/Config.in
>> @@ -0,0 +1,16 @@
>> +config BR2_PACKAGE_GLMARK2
>> +     bool "glmark2"
>> +     depends on BR2_PACKAGE_MESA3D
>> +     depends on BR2_PACKAGE_MESA3D_GBM # depends on udev cannot select
>
> Amazing that we need udev to do an OpenGL benchmark these days. But
> indeed, the GBM code in Mesa3d needs the libudev library.

Yes, quite crazy.  GBM is Graphics Buffer Manager, I'm not completely
sure why it depends on udev but it does.

>> +     depends on BR2_LARGEFILE
>> +     depends on BR2_PACKAGE_HAS_OPENGL || \
>> +             (BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES)
>> +     select BR2_PACKAGE_JPEG
>> +     select BR2_PACKAGE_LIBPNG12
>> +     help
>> +       glmark2 is a benchmark for OpenGL (ES) 2.0. It uses only the subset of the
>> +       OpenGL 2.0 API that is compatible with OpenGL ES 2.0.
>> +
>> +comment "glmark2 requires an OpenGL implementation and mesa3D to be enabled"
>> +     depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES \
>> +             || !BR2_PACKAGE_XORG7
>
> We probably need more comments in here: about largefile, and about Mesa
> GBM. But maybe mentioning the need for OpenGL isn't really needed: an
> user willing to use glmark2 will most likely be aware that OpenGL
> support is needed.
>
> So:
>
> comment "glmark2 requires Mesa3D GBM support, and largefile support in toolchain"
>         depends on (BR2_PACKAGE_HAS_OPENGL || BR2_PACKAGE_HAS_OPENGL_ES) && (!BR2_LARGEFILE || !BR2_MESA3D_GBM)
>
> (to be verified).

Will fix.

>> diff --git a/package/glmark2/glmark2-add-mali-support.patch b/package/glmark2/glmark2-add-mali-support.patch
>> new file mode 100644
>> index 0000000..c37c88c
>> --- /dev/null
>> +++ b/package/glmark2/glmark2-add-mali-support.patch
>> @@ -0,0 +1,102 @@
>> +Mali uses a slightly different windowing structure than most
>> +implementations add support through this patch.
>> +
>> +Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
>
> Have you tried submitting those patches upstream?

Yes. see https://code.launchpad.net/~spenser-gilliland/glmark2/mali-fbdev/

>> diff --git a/package/glmark2/glmark2.mk b/package/glmark2/glmark2.mk
>> new file mode 100644
>> index 0000000..b36eaf9
>> --- /dev/null
>> +++ b/package/glmark2/glmark2.mk
>> @@ -0,0 +1,69 @@
>> +################################################################################
>> +#
>> +# glmark2
>> +#
>> +################################################################################
>> +
>> +GLMARK2_VERSION = 279
>> +GLMARK2_SITE = http://bazaar.launchpad.net/~laanwj/glmark2/fbdev
>
> So you're not using the main branch of glmark2, but this separate fbdev
> branch. Correct? I suppose what it adds is the ability to use glmark2
> on non-X.org platforms. Do you have an idea on whether this branch is
> likely to be merged in the trunk of glmark2?

It's marked for merge but I'm having trouble getting in touch with the
developers.  I'll try again tomorrow and see if anyone from dri-devel
can help.

>> +GLMARK2_SITE_METHOD = bzr
>> +GLMARK2_SOURCE = glmark2-$(GLMARK2_VERSION).tar.gz
>> +GLMARK2_LICENSE = GPLv3+ SGIv1
>> +GLMARK2_LICENSE_FILES = COPYING COPYING.SGI
>> +
>> +GLMARK2_DEPENDENCIES = jpeg libpng12 mesa3d host-python host-pkgconf
>
> I've seen the libpng12 issue being discussed in
> https://bugs.launchpad.net/glmark2/+bug/1166506. Some users apparently
> tested successfully with libpng 1.5.

I'll check this out but I'd prefer to do this in a separate patch.
Unforutantly, libpng likes to break the API between releases;
therefore, bumping the libpng package would require building all the
reverse dependencies of libpng to ensure compatibility.

> Also, do we really need host-python? Python is part of the mandatory
> dependencies of Buildroot, so if Python is only needed to get waf
> running, then host-python is not needed.

Yes, host-python is for waf.  I will remove the dependency.

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

Thanks,
Spenser

-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v2 6/7] glmark2: new package
  2013-09-11  5:47   ` Arnout Vandecappelle
@ 2013-09-12  3:17     ` Spenser Gilliland
  2013-09-30 20:39       ` Arnout Vandecappelle
  0 siblings, 1 reply; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-12  3:17 UTC (permalink / raw)
  To: buildroot

Arnout,

On Wed, Sep 11, 2013 at 12:47 AM, Arnout Vandecappelle <arnout@mind.be> wrote:
> On 06/09/13 06:25, Spenser Gilliland wrote:
>>
>>
>> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
>> ---
>>   package/Config.in                                  |   1 +
>>   package/glmark2/Config.in                          |  16 ++++
>>   package/glmark2/glmark2-add-mali-support.patch     | 102
>> +++++++++++++++++++++
>>   package/glmark2/glmark2-fix-add-GLchar.patch       |  17 ++++
>>   .../glmark2-gl-to-glesv2-on-drm-flavor.patch       |  25 +++++
>>   package/glmark2/glmark2.mk                         |  69 ++++++++++++++
>>   6 files changed, 230 insertions(+)
>>   create mode 100644 package/glmark2/Config.in
>>   create mode 100644 package/glmark2/glmark2-add-mali-support.patch
>>   create mode 100644 package/glmark2/glmark2-fix-add-GLchar.patch
>>   create mode 100644
>> package/glmark2/glmark2-gl-to-glesv2-on-drm-flavor.patch
>>   create mode 100644 package/glmark2/glmark2.mk
>>
>> diff --git a/package/Config.in b/package/Config.in
>> index 3a8bd6d..27bd70a 100644
>> --- a/package/Config.in
>> +++ b/package/Config.in
>> @@ -25,6 +25,7 @@ source "package/dmalloc/Config.in"
>>   source "package/dropwatch/Config.in"
>>   source "package/duma/Config.in"
>>   source "package/gdb/Config.in"
>> +source "package/glmark2/Config.in"
>>   source "package/iozone/Config.in"
>>   source "package/kexec/Config.in"
>>   source "package/latencytop/Config.in"
>> diff --git a/package/glmark2/Config.in b/package/glmark2/Config.in
>> new file mode 100644
>> index 0000000..6dd7833
>> --- /dev/null
>> +++ b/package/glmark2/Config.in
>> @@ -0,0 +1,16 @@
>> +config BR2_PACKAGE_GLMARK2
>> +       bool "glmark2"
>> +       depends on BR2_PACKAGE_MESA3D
>
>
>  I don't see why this should be a depends rather than a select.
>
>
>> +       depends on BR2_PACKAGE_MESA3D_GBM # depends on udev cannot select
>
>
>  I would make this
>
>         depends on BR2_PACKAGE_UDEV
>         select BR2_PACKAGE_MESA3D_GBM
>
> and in the comment refer to udev instead of mesa3d.

Will fix.

>
>> +       depends on BR2_LARGEFILE
>> +       depends on BR2_PACKAGE_HAS_OPENGL || \
>> +               (BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES)
>> +       select BR2_PACKAGE_JPEG
>> +       select BR2_PACKAGE_LIBPNG12
>> +       help
>> +         glmark2 is a benchmark for OpenGL (ES) 2.0. It uses only the
>> subset of the
>
>
>  Isn't this line too long?

it's 79 chars with my tab indention at 3 spaces.

>
>> +         OpenGL 2.0 API that is compatible with OpenGL ES 2.0.
>> +
>> +comment "glmark2 requires an OpenGL implementation and mesa3D to be
>> enabled"
>> +       depends on !BR2_PACKAGE_HAS_OPENGL_EGL ||
>> !BR2_PACKAGE_HAS_OPENGL_ES \
>> +               || !BR2_PACKAGE_XORG7
>
> [snip]
>
>> diff --git a/package/glmark2/glmark2.mk b/package/glmark2/glmark2.mk
>> new file mode 100644
>> index 0000000..b36eaf9
>> --- /dev/null
>> +++ b/package/glmark2/glmark2.mk
>> @@ -0,0 +1,69 @@
>>
>> +################################################################################
>> +#
>> +# glmark2
>> +#
>>
>> +################################################################################
>> +
>> +GLMARK2_VERSION = 279
>> +GLMARK2_SITE = http://bazaar.launchpad.net/~laanwj/glmark2/fbdev
>> +GLMARK2_SITE_METHOD = bzr
>> +GLMARK2_SOURCE = glmark2-$(GLMARK2_VERSION).tar.gz
>
>
>  This is the default, and anyway irrelevant for VCS-extracted packages.

Will fix.

>
>> +GLMARK2_LICENSE = GPLv3+ SGIv1
>> +GLMARK2_LICENSE_FILES = COPYING COPYING.SGI
>> +
>> +GLMARK2_DEPENDENCIES = jpeg libpng12 mesa3d host-python host-pkgconf
>> +
>> +GLMARK2_CONF_OPTS = --prefix=/usr/
>> +
>> +ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
>> +GLMARK2_DEPENDENCIES += libegl libgles
>> +GLMARK2_FLAVORS += x11-glesv2
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER)$(BR2_PACKAGE_HAS_OPENGL),yy)
>> +GLMARK2_DEPENDENCIES += libgl
>> +GLMARK2_FLAVORS += x11-gl
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_HAS_OPENGL_EGL)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
>> +GLMARK2_DEPENDENCIES += libdrm libegl libgles
>
>
>  If you have this dependency here, you also should have the corresponding
> select in Config.in:
>
>         select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_HAS_OPENGL_EGL
>
> (condition is simplified because in the opengl case libdrm is also needed).
>
>  Oh, but libdrm is already a dependency of mesa3d. Then this dependency is
> in fact not needed.
>
>
>  Regards,
>  Arnout
>
>
>> +GLMARK2_FLAVORS += drm-glesv2 fbdev-glesv2
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_HAS_OPENGL_EGL)$(BR2_PACKAGE_HAS_OPENGL),yy)
>> +GLMARK2_DEPENDENCIES += libdrm libgl
>> +GLMARK2_FLAVORS += drm-gl
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_HAS_OPENGL_ES),yy)
>> +GLMARK2_DEPENDENCIES += wayland libegl libgles
>> +GLMARK2_FLAVORS += wayland-glesv2
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_HAS_OPENGL),yy)
>> +GLMARK2_DEPENDENCIES += wayland libgl
>> +GLMARK2_FLAVORS += wayland-gl
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_SUNXI_MALI),y)
>> +GLMARK2_CONF_OPTS += --for-mali
>> +endif
>> +
>> +GLMARK2_CONF_OPTS += \
>> +       --with-flavors=$(subst $(space),$(comma),$(GLMARK2_FLAVORS))
>> +
>> +define GLMARK2_CONFIGURE_CMDS
>> +       cd $(@D) && \
>> +               $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) ./waf
>> configure \
>> +               $(GLMARK2_CONF_OPTS)
>> +endef
>> +
>> +define GLMARK2_BUILD_CMDS
>> +       cd $(@D) && $(TARGET_MAKE_ENV) ./waf
>> +endef
>> +
>> +define GLMARK2_INSTALL_TARGET_CMDS
>> +       cd $(@D) && $(TARGET_MAKE_ENV) ./waf install
>> --destdir=$(TARGET_DIR)
>> +endef
>> +
>> +$(eval $(generic-package))
>>
>
>
> --
> Arnout Vandecappelle                          arnout at mind be
> Senior Embedded Software Architect            +32-16-286500
> Essensium/Mind                                http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F



-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v2 5/7] libpng12: new package
  2013-09-11  5:33     ` Arnout Vandecappelle
@ 2013-09-12  3:20       ` Spenser Gilliland
  0 siblings, 0 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-12  3:20 UTC (permalink / raw)
  To: buildroot

Thomas, Arnout,

On Wed, Sep 11, 2013 at 12:33 AM, Arnout Vandecappelle <arnout@mind.be> wrote:
> On 08/09/13 19:04, Thomas Petazzoni wrote:
>>
>> Dear Spenser Gilliland,
>>
>> On Thu,  5 Sep 2013 23:25:19 -0500, Spenser Gilliland wrote:
>>
>>> +config BR2_PACKAGE_LIBPNG12
>>> +       bool "libpng"
>>
>>
>> Maybe:
>>
>>         bool "libpng12"
>>
>>> +       select BR2_PACKAGE_ZLIB
>>> +       help
>>> +         Library for handling PNG (Portable Network Graphics)
>>> +         images. This installs the 1.2.x series.  Different versions of
>>> +         libpng have different APIs.
>>> +
>>> +         http://www.libpng.org/
>>> diff --git a/package/libpng12/libpng12.mk b/package/libpng12/libpng12.mk
>>> new file mode 100644
>>> index 0000000..39094f2
>>> --- /dev/null
>>> +++ b/package/libpng12/libpng12.mk
>>> @@ -0,0 +1,18 @@
>>>
>>> +################################################################################
>>> +#
>>> +# libpng12
>>> +#
>>>
>>> +################################################################################
>>> +
>>> +LIBPNG12_VERSION = 1.2.50
>>> +LIBPNG12_SERIES = 12
>
>
>  Since the 12 is hardcoded in the package name, it is pretty silly to have
> this as a variable. It's there for consistency with libpng itself, but I
> don't think that that is required.
>
>
>>> +LIBPNG12_SOURCE = libpng-$(LIBPNG12_VERSION).tar.bz2
>>> +LIBPNG12_SITE =
>>> http://downloads.sourceforge.net/project/libpng/libpng$(LIBPNG12_SERIES)/$(LIBPNG12_VERSION)
>>> +LIBPNG12_LICENSE = libpng license
>>> +LIBPNG12_LICENSE_FILES = LICENSE
>>> +LIBPNG12_INSTALL_STAGING = YES
>>> +LIBPNG12_DEPENDENCIES = host-pkgconf zlib
>>> +LIBPNG12_CONFIG_SCRIPTS = libpng$(LIBPNG12_SERIES)-config libpng-config
>>
>>
>> This last one annoys me a bit: if both libpng and libpng12 install
>> libpng-config, it means that another package that runs libpng-config to
>> find out where libpng is and how to link against it will either be
>> linked against the modern libpng or the older libpng12 depending on
>> which one was installed.
>>
>> Since libpng12 is only installed for compatibility reasons with some
>> packages, I would therefore suggest that we do not install
>> libpng-config in libpng12.mk (and ensure that nothing installed by
>> libpng12 can conflict with the real libpng installation).
>
>
>  Sounds correct to me. It is making things more complex, of course, because
> you need something like:
>
> LIBPNG_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBPNG12),libpng12)
>
> in libpng.mk.
>
>  Or else you have to override the install commands, or patch the Makefile.

Will fix using method above. (also the glaring omission in kconfig
option name is fixed)

>
>  Regards,
>  Arnout
>
>
> --
> Arnout Vandecappelle                          arnout at mind be
> Senior Embedded Software Architect            +32-16-286500
> Essensium/Mind                                http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F



-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v2 7/7] mesa3d-demos: new package
  2013-09-11  5:58   ` Arnout Vandecappelle
@ 2013-09-12  3:21     ` Spenser Gilliland
  0 siblings, 0 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-12  3:21 UTC (permalink / raw)
  To: buildroot

Arnout,

On Wed, Sep 11, 2013 at 12:58 AM, Arnout Vandecappelle <arnout@mind.be> wrote:
> On 06/09/13 06:25, Spenser Gilliland wrote:
>>
>>
>> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
>> ---
>>   package/Config.in                                  |   1 +
>>   package/mesa3d-demos/Config.in                     |   8 +
>>   .../mesa3d-demos/mesa3d-demos-optional-gl.patch    | 348
>> +++++++++++++++++++++
>>   package/mesa3d-demos/mesa3d-demos.mk               |  63 ++++
>>   4 files changed, 420 insertions(+)
>>   create mode 100644 package/mesa3d-demos/Config.in
>>   create mode 100644 package/mesa3d-demos/mesa3d-demos-optional-gl.patch
>>   create mode 100644 package/mesa3d-demos/mesa3d-demos.mk
>>
>> diff --git a/package/Config.in b/package/Config.in
>> index 27bd70a..e8ceb5a 100644
>> --- a/package/Config.in
>> +++ b/package/Config.in
>> @@ -39,6 +39,7 @@ source "package/lttng-modules/Config.in"
>>   source "package/lttng-tools/Config.in"
>>   source "package/ltrace/Config.in"
>>   source "package/memstat/Config.in"
>> +source "package/mesa3d-demos/Config.in"
>
>
>  I don't think that the Debug tools menu is the right place for this - at
> least, we have nothing similar there at the moment. How about putting it in
> the Graphical libraries and applications menu?

Will fix.

>
>>   source "package/netperf/Config.in"
>>   source "package/oprofile/Config.in"
>>   source "package/pax-utils/Config.in"
>> diff --git a/package/mesa3d-demos/Config.in
>> b/package/mesa3d-demos/Config.in
>> new file mode 100644
>> index 0000000..24c29e0
>> --- /dev/null
>> +++ b/package/mesa3d-demos/Config.in
>> @@ -0,0 +1,8 @@
>> +config BR2_PACKAGE_MESA3D_DEMOS
>> +       bool "mesa3d-demos"
>> +       depends on BR2_PACKAGE_HAS_OPENGL || BR2_PACKAGE_HAS_OPENGL_ES \
>> +               || BR2_PACKAGE_HAS_OPENGL_EGL || BR2_PACKAGE_HAS_OPENVG
>> +       help
>> +         OpenGL demos from the Mesa 3D project.
>> +
>> +         http://mesa3d.org
>> diff --git a/package/mesa3d-demos/mesa3d-demos-optional-gl.patch
>> b/package/mesa3d-demos/mesa3d-demos-optional-gl.patch
>> new file mode 100644
>> index 0000000..9345d29
>> --- /dev/null
>> +++ b/package/mesa3d-demos/mesa3d-demos-optional-gl.patch
>> @@ -0,0 +1,348 @@
>> +This patch makes the egl stuff work with other opengles providers and
>> makes
>> +it possible to build the demos without opengl (only opengles.)
>
>
>  Can you upstream this? Probably needs to be split into two patches in that
> case.

Will do.

>
>> +
>> +Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
>> +---
>> +Index: mesa3d-demos-8.1.0/configure.ac
>> +===================================================================
>> +--- mesa3d-demos-8.1.0.orig/configure.ac       2013-02-24
>> 04:49:47.000000000 -0600
>> ++++ mesa3d-demos-8.1.0/configure.ac    2013-09-05 10:01:19.137886856
>> -0500
>> +@@ -51,6 +51,14 @@
>> +   ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])])
>> + PKG_PROG_PKG_CONFIG()
>> +
>> ++AC_ARG_ENABLE([gl],
>> ++    [AS_HELP_STRING([--enable-gl],
>> ++        [enable GL library @<:@default=no@:>@])],
>> ++    [gl_enabled="$enableval"],
>> ++    [gl_enabled=auto])
>> ++
>> ++if test "x$gl_enabled" != "xno"; then
>> ++
>> + dnl Get the pkg-config definitions for libGL.  We include a fallback
>> + dnl path for GL implementation that don't provide a .pc file
>> + PKG_CHECK_MODULES(GL, [gl], [], [
>> +@@ -103,6 +111,8 @@
>> + DEMO_CFLAGS="$DEMO_CFLAGS $GLU_CFLAGS"
>> + DEMO_LIBS="$DEMO_LIBS $GLU_LIBS"
>> +
>> ++fi
>> ++
>> + AC_ARG_ENABLE([egl],
>> +     [AS_HELP_STRING([--enable-egl],
>> +         [enable EGL library @<:@default=no@:>@])],
>> +@@ -202,7 +212,6 @@
>> +         [enable support for wayland @<:@default=no@:>@])],
>> +     [wayland_enabled="$enableval"],
>> +     [wayland_enabled=no])
>> +-
>
>
>  Why remove this line?

Will fix.

>
>  Regards,
>  Arnout
>
>
>> + if test "x$wayland_enabled" != "xno"; then
>> +     PKG_CHECK_MODULES(WAYLAND, [wayland-client wayland-egl],
>> [wayland_enabled=yes], [wayland_enabled=no])
>> + fi
>> +@@ -287,7 +296,7 @@
>
> [snip]
>
>
>
> --
> Arnout Vandecappelle                          arnout at mind be
> Senior Embedded Software Architect            +32-16-286500
> Essensium/Mind                                http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

Thanks,
Spenser


-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo
  2013-09-08 16:59   ` Thomas Petazzoni
@ 2013-09-12  4:41     ` Spenser Gilliland
  0 siblings, 0 replies; 28+ messages in thread
From: Spenser Gilliland @ 2013-09-12  4:41 UTC (permalink / raw)
  To: buildroot

Thomas,

On Sun, Sep 8, 2013 at 11:59 AM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Spenser Gilliland,
>
> It'd be great if your patches were split in a slightly more
> fine-grained fashion. I.e this patch should have been three patches,
> for the three different things you mention in the patch title.
>
> On Thu,  5 Sep 2013 23:25:16 -0500, Spenser Gilliland wrote:
>>  SUNXI_CEDARX_INSTALL_STAGING = YES
>> @@ -14,7 +14,12 @@ SUNXI_CEDARX_CONFIGURE_OPTS = \
>>
>>  ifeq ($(BR2_ARM_EABIHF),y)
>>  SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armhf
>> -# libavheap.so is only available on EABIHF
>> +SUNXI_CEDARX_SAMPLE_LOC = $(SUNXI_CEDARX_BIN_DIR)/sample/ve
>> +else
>> +SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armel2
>> +SUNXI_CEDARX_SAMPLE_LOC = $(SUNXI_CEDARX_BIN_DIR)/sample/output/ve
>> +endif
>
> I was confused by this for a while, but now I understand: since you've
> bumped the version, the libavheap.so library is now available for
> non-EABIhf toolchains.
>
> BTW, silly from the cedarx people that the sample binary is not in the
> same location between EABIhf and EABI.
>
> Also, what is the difference between the linux-armel2 and linux-armel
> directories in the CedarX stuff?

The major difference is the one you described above.  Armel2 has
libavheap while armel does not.

> So, essentially, patch looks good to me.
>
> Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Great.

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

Thanks,
Spenser

-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v2 3/7] mesa3d: pull out from x11
  2013-09-12  2:57     ` Spenser Gilliland
@ 2013-09-12  7:23       ` Thomas Petazzoni
  0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni @ 2013-09-12  7:23 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

On Wed, 11 Sep 2013 21:57:21 -0500, Spenser Gilliland wrote:

> > Bottom-line: I believe it's too early to move mesa3d outside of
> > package/x11r7/. Let's keep it in there for now, merge your current
> > patches, and work on that as a followup step.
> 
> I'll add the move of pthread stubs (and any other required X libs) to
> this patch set.

Great, 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] 28+ messages in thread

* [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support Spenser Gilliland
  2013-09-08 16:51   ` Thomas Petazzoni
@ 2013-09-20  8:41   ` Peter Korsgaard
  1 sibling, 0 replies; 28+ messages in thread
From: Peter Korsgaard @ 2013-09-20  8:41 UTC (permalink / raw)
  To: buildroot

>>>>> "Spenser" == Spenser Gilliland <spenser@gillilanding.com> writes:

 Spenser> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
 Spenser> ---
 Spenser>  package/libdrm/Config.in | 68 ++++++++++++++++++++++++++++++++++++++++--------
 Spenser>  package/libdrm/libdrm.mk | 53 ++++++++++++++++++++++++++++++-------
 Spenser>  2 files changed, 100 insertions(+), 21 deletions(-)

 Spenser> diff --git a/package/libdrm/Config.in b/package/libdrm/Config.in
 Spenser> index 8bf676b..533e985 100644
 Spenser> --- a/package/libdrm/Config.in
 Spenser> +++ b/package/libdrm/Config.in
 Spenser> @@ -1,22 +1,68 @@
 Spenser>  config BR2_PACKAGE_LIBDRM
 Spenser>  	bool "libdrm"
 Spenser> +	select BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
 Spenser>  	depends on BR2_PACKAGE_XORG7
 Spenser>  	depends on BR2_LARGEFILE
 Spenser> -	select BR2_PACKAGE_XPROTO_GLPROTO
 Spenser> -	select BR2_PACKAGE_XPROTO_XF86VIDMODEPROTO
 Spenser> -	select BR2_PACKAGE_XLIB_LIBXXF86VM
 Spenser> -	select BR2_PACKAGE_XLIB_LIBXMU
 Spenser> -	select BR2_PACKAGE_XLIB_LIBPCIACCESS
 Spenser> -	select BR2_PACKAGE_XPROTO_DRI2PROTO
 Spenser> -	select BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
 Spenser> -	# libatomic_ops is only available on a subset of the supported
 Spenser> -	# architectures, and we make the assumption that the intel
 Spenser> -	# driver can only be used on x86 and x86_64 machines.
 Spenser> -	select BR2_PACKAGE_LIBATOMIC_OPS if (BR2_PACKAGE_XDRIVER_XF86_VIDEO_INTEL && (BR2_i386 || BR2_x86_64))
 Spenser>  	help
 Spenser>  	  Direct Rendering Manager
 
 Spenser>  	  http://dri.freedesktop.org/libdrm/
 
 Spenser> +if BR2_PACKAGE_LIBDRM
 Spenser> +
 Spenser> +menu "DRM Drivers"
 Spenser> +
 Spenser> +config BR2_PACKAGE_LIBDRM_INTEL
 Spenser> +	bool "intel"
 Spenser> +	select BR2_PACKAGE_LIBATOMIC_OPS
 Spenser> +	select BR2_PACKAGE_XLIB_LIBPCIACCESS
 Spenser> +	depends on BR2_i386 || BR2_x86_64
 Spenser> +	help
 Spenser> +	  installs intel graphics driver
 Spenser> +
 Spenser> +config BR2_PACKAGE_LIBDRM_RADEON
 Spenser> +	bool "radeon"
 Spenser> +	select BR2_PACKAGE_LIBATOMIC_OPS
 Spenser> +	select BR2_PACKAGE_XLIB_LIBPCIACCESS
 Spenser> +	depends on BR2_i386 || BR2_x86_64
 Spenser> +	help
 Spenser> +	  install AMD/ATI graphics driver
 Spenser> +
 Spenser> +config BR2_PACKAGE_LIBDRM_NOUVEAU
 Spenser> +	bool "nouveau"
 Spenser> +	select BR2_PACKAGE_XLIB_LIBPCIACCESS
 Spenser> +	depends on BR2_i386 || BR2_x86_64
 Spenser> +	help
 Spenser> +	  install Nvidia graphics driver
 Spenser> +
 Spenser> +config BR2_PACKAGE_LIBDRM_VMWGFX
 Spenser> +	bool "vmwgfx"
 Spenser> +	select BR2_PACKAGE_XLIB_LIBPCIACCESS
 Spenser> +	depends on BR2_i386 || BR2_x86_64
 Spenser> +	help
 Spenser> +	  installs Vmware graphics driver
 Spenser> +
 Spenser> +config BR2_PACKAGE_LIBDRM_OMAP
 Spenser> +	bool "omap (experimental)"
 Spenser> +	depends on BR2_arm
 Spenser> +	help
 Spenser> +	  install the TI OMAP driver using an experimental API.
 Spenser> +
 Spenser> +config BR2_PACKAGE_LIBDRM_EXYNOS
 Spenser> +	bool "exynos (experimental)"
 Spenser> +	depends on BR2_arm
 Spenser> +	help
 Spenser> +	  installs Samsung Exynos driver using an experimental API.
 Spenser> +
 Spenser> +config BR2_PACKAGE_LIBDRM_FREEDRENO
 Spenser> +	bool "freedreno (experimental)"
 Spenser> +	depends on BR2_arm
 Spenser> +	help
 Spenser> +	  install Qualcomm Snapdragon driver using an experimental API.
 Spenser> +
 Spenser> +endmenu
 Spenser> +
 Spenser> +endif
 Spenser> +
 Spenser>  comment "libdrm requires a toolchain with LARGEFILE support"
 Spenser>  	depends on BR2_PACKAGE_XORG7 && !BR2_LARGEFILE
 Spenser> diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk
 Spenser> index d3d2b2d..697cd2f 100644
 Spenser> --- a/package/libdrm/libdrm.mk
 Spenser> +++ b/package/libdrm/libdrm.mk
 Spenser> @@ -4,7 +4,7 @@
 Spenser>  #
 Spenser>  ################################################################################
 
 Spenser> -LIBDRM_VERSION = 2.4.38
 Spenser> +LIBDRM_VERSION = 2.4.46
 Spenser>  LIBDRM_SOURCE = libdrm-$(LIBDRM_VERSION).tar.bz2
 Spenser>  LIBDRM_SITE = http://dri.freedesktop.org/libdrm/
 Spenser>  LIBDRM_LICENSE = MIT
 Spenser> @@ -12,26 +12,59 @@ LIBDRM_LICENSE = MIT
 Spenser>  LIBDRM_INSTALL_STAGING = YES
 
 Spenser>  LIBDRM_DEPENDENCIES = \
 Spenser> -	xproto_glproto \
 Spenser> -	xproto_xf86vidmodeproto \
 Spenser> -	xlib_libXxf86vm \
 Spenser> -	xlib_libXmu \
 Spenser> -	xlib_libpciaccess \
 Spenser> -	xproto_dri2proto \
 Spenser>  	xlib_libpthread-stubs \
 Spenser>  	host-pkgconf
 
 Spenser> -ifeq ($(BR2_PACKAGE_XDRIVER_XF86_VIDEO_INTEL),y)
 Spenser> +LIBDRM_CONF_OPT = \
 Spenser> +	--disable-cairo-tests \
 Spenser> +	--disable-manpages
 Spenser> +
 Spenser> +ifeq ($(BR2_PACKAGE_LIBDRM_INTEL),y)

You need to select LIBDRM_INTEL from XDRIVER_XF86_VIDEO_INTEL then to
ensure it is enabled.

 Spenser>  LIBDRM_CONF_OPT += --enable-intel
 Spenser> -LIBDRM_DEPENDENCIES += libatomic_ops
 Spenser> +LIBDRM_DEPENDENCIES += libatomic_ops xlib_libpciaccess
 Spenser>  else
 Spenser>  LIBDRM_CONF_OPT += --disable-intel
 Spenser>  endif
 
 Spenser> -ifneq ($(BR2_PACKAGE_XDRIVER_XF86_VIDEO_ATI),y)
 Spenser> +ifeq ($(BR2_PACKAGE_LIBDRM_RADEON),y)

Same here for ATI.

 Spenser> +LIBDRM_CONF_OPT += --enable-radeon
 Spenser> +LIBDRM_DEPENDENCIES += xlib_libpciaccess
 Spenser> +else
 Spenser>  LIBDRM_CONF_OPT += --disable-radeon
 Spenser>  endif
 
 Spenser> +ifeq ($(BR2_PACKAGE_LIBDRM_NOUVEAU),y)
 Spenser> +LIBDRM_CONF_OPT += --enable-nouveau
 Spenser> +LIBDRM_DEPENDENCIES += xlib_libpciaccess
 Spenser> +else
 Spenser> +LIBDRM_CONF_OPT += --disable-nouveau
 Spenser> +endif
 Spenser> +
 Spenser> +ifeq ($(BR2_PACKAGE_LIBDRM_VMWGFX),y)
 Spenser> +LIBDRM_CONF_OPT += --enable-vmwgfx
 Spenser> +LIBDRM_DEPENDENCIES += xlib_libpciaccess
 Spenser> +else
 Spenser> +LIBDRM_CONF_OPT += --enable-vmwgfx
 Spenser> +endif

Conceptually we should also select this from the vmware driver, but it
apparently only use it if mesa-xatracker is enabled (which we don't
have).

Committed with that fixed, thanks.

-- 
Bye, Peter Korsgaard

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

* [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo
  2013-09-06  4:25 ` [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo Spenser Gilliland
  2013-09-08 16:59   ` Thomas Petazzoni
@ 2013-09-20 13:54   ` Peter Korsgaard
  1 sibling, 0 replies; 28+ messages in thread
From: Peter Korsgaard @ 2013-09-20 13:54 UTC (permalink / raw)
  To: buildroot

>>>>> "Spenser" == Spenser Gilliland <spenser@gillilanding.com> writes:

 Spenser> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
 Spenser> ---
 Spenser>  package/sunxi-cedarx/Config.in       | 10 ++++++++++
 Spenser>  package/sunxi-cedarx/sunxi-cedarx.mk | 26 ++++++++++++++++++++++----
 Spenser>  2 files changed, 32 insertions(+), 4 deletions(-)

 Spenser> diff --git a/package/sunxi-cedarx/Config.in b/package/sunxi-cedarx/Config.in
 Spenser> index b280db0..aa520b5 100644
 Spenser> --- a/package/sunxi-cedarx/Config.in
 Spenser> +++ b/package/sunxi-cedarx/Config.in
 Spenser> @@ -10,5 +10,15 @@ config BR2_PACKAGE_SUNXI_CEDARX
 Spenser>  	  http://github.com/linux-sunxi/cedarx-libs
 Spenser>  	  http://linux-sunxi.org/CedarX
 
 Spenser> +if BR2_PACKAGE_SUNXI_CEDARX
 Spenser> +
 Spenser> +config BR2_PACKAGE_SUNXI_CEDARX_DEMO
 Spenser> +	bool "install enc_dec_test demo"
 Spenser> +	help
 Spenser> +	  Install a test program which verifies the functionality of the CedarX
 Spenser> +	  libraries
 Spenser> +
 Spenser> +endif

Thanks, but it doesn't seem to build here:

make[1]: Entering directory `/home/peko/source/buildroot/output/build/sunxi-cedarx-74c3e9052/libcedarv/linux-armel2/sample'
arm-none-linux-gnueabi-gcc -Wall -O0 -g -I. -I./render -I./vdecoder/fbm -I./vdecoder/vbv -I./vdecoder/libvecore -I./vdecoder/libcedarv -I./vdecoder/adapter -I./vdecoder/adapter/cdxalloc -I./file_parser/pmp -I./include -I./file_parser/mov/inc -DFILE_PARSER -o main.o -c main.c
arm-none-linux-gnueabi-gcc -Wall -O0 -g -I. -I./render -I./vdecoder/fbm -I./vdecoder/vbv -I./vdecoder/libvecore -I./vdecoder/libcedarv -I./vdecoder/adapter -I./vdecoder/adapter/cdxalloc -I./file_parser/pmp -I./include -I./file_parser/mov/inc -DFILE_PARSER -o render/render.o -c render/render.c
arm-none-linux-gnueabi-gcc -Wall -O0 -g -I. -I./render -I./vdecoder/fbm -I./vdecoder/vbv -I./vdecoder/libvecore -I./vdecoder/libcedarv -I./vdecoder/adapter -I./vdecoder/adapter/cdxalloc -I./file_parser/pmp -I./include -I./file_parser/mov/inc -DFILE_PARSER -o file_parser/pmp/pmp.o -c file_parser/pmp/pmp.c
arm-none-linux-gnueabi-gcc -Wall -O0 -g -I. -I./render -I./vdecoder/fbm -I./vdecoder/vbv -I./vdecoder/libvecore -I./vdecoder/libcedarv -I./vdecoder/adapter -I./vdecoder/adapter/cdxalloc -I./file_parser/pmp -I./include -I./file_parser/mov/inc -DFILE_PARSER -o file_parser/pmp/pmp_ctrl.o -c file_parser/pmp/pmp_ctrl.c
In file included from file_parser/pmp/pmp.c:30:0:
file_parser/pmp/pmp.h:33:23: fatal error: libcedarv.h: No such file or directory
compilation terminated.
make[1]: *** [file_parser/pmp/pmp.o] Error 1
make[1]: *** Waiting for unfinished jobs....
main.c:5:46: fatal error: libcedarv.h: No such file or directory
compilation terminated.

-- 
Bye, Peter Korsgaard

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

* [Buildroot] [PATCH v2 6/7] glmark2: new package
  2013-09-12  3:17     ` Spenser Gilliland
@ 2013-09-30 20:39       ` Arnout Vandecappelle
  0 siblings, 0 replies; 28+ messages in thread
From: Arnout Vandecappelle @ 2013-09-30 20:39 UTC (permalink / raw)
  To: buildroot

On 09/12/13 05:17, Spenser Gilliland wrote:
>>> +       depends on BR2_LARGEFILE
>>> >>+       depends on BR2_PACKAGE_HAS_OPENGL || \
>>> >>+               (BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES)
>>> >>+       select BR2_PACKAGE_JPEG
>>> >>+       select BR2_PACKAGE_LIBPNG12
>>> >>+       help
>>> >>+         glmark2 is a benchmark for OpenGL (ES) 2.0. It uses only the
>>> >>subset of the
>> >
>> >
>> >  Isn't this line too long?
> it's 79 chars with my tab indention at 3 spaces.

  The text itself should be only 72 characters IIRC, otherwise it doesn't 
fit a 80-character terminal.

  Regards,
  Arnout


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

end of thread, other threads:[~2013-09-30 20:39 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-06  4:25 [Buildroot] [PATCH v2 0/7] glmark2 and Mesa updates Spenser Gilliland
2013-09-06  4:25 ` [Buildroot] [PATCH v2 1/7] libdrm: bump and add experimental ARM framebuffer support Spenser Gilliland
2013-09-08 16:51   ` Thomas Petazzoni
2013-09-20  8:41   ` Peter Korsgaard
2013-09-06  4:25 ` [Buildroot] [PATCH v2 2/7] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo Spenser Gilliland
2013-09-08 16:59   ` Thomas Petazzoni
2013-09-12  4:41     ` Spenser Gilliland
2013-09-20 13:54   ` Peter Korsgaard
2013-09-06  4:25 ` [Buildroot] [PATCH v2 3/7] mesa3d: pull out from x11 Spenser Gilliland
2013-09-08 17:02   ` Thomas Petazzoni
2013-09-12  2:57     ` Spenser Gilliland
2013-09-12  7:23       ` Thomas Petazzoni
2013-09-06  4:25 ` [Buildroot] [PATCH v2 4/7] mesa3d: modularize and bump to version 9.1.6 Spenser Gilliland
2013-09-08 18:30   ` Thomas Petazzoni
2013-09-12  2:58     ` Spenser Gilliland
2013-09-06  4:25 ` [Buildroot] [PATCH v2 5/7] libpng12: new package Spenser Gilliland
2013-09-08 17:04   ` Thomas Petazzoni
2013-09-11  5:33     ` Arnout Vandecappelle
2013-09-12  3:20       ` Spenser Gilliland
2013-09-06  4:25 ` [Buildroot] [PATCH v2 6/7] glmark2: " Spenser Gilliland
2013-09-08 18:38   ` Thomas Petazzoni
2013-09-12  3:12     ` Spenser Gilliland
2013-09-11  5:47   ` Arnout Vandecappelle
2013-09-12  3:17     ` Spenser Gilliland
2013-09-30 20:39       ` Arnout Vandecappelle
2013-09-06  4:25 ` [Buildroot] [PATCH v2 7/7] mesa3d-demos: " Spenser Gilliland
2013-09-11  5:58   ` Arnout Vandecappelle
2013-09-12  3:21     ` Spenser Gilliland

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox