All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates
@ 2013-09-26 23:21 Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 01/11] udev: explicitly include pthreads Spenser Gilliland
                   ` (11 more replies)
  0 siblings, 12 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot

this patch series adds glmark2 and mesa3d-demos along with supporting updates
for mesa3d and libdrm.  Additionally, a udev bug fix for EABIhf toolchains is
included.

v2->v3:
  - Updates based on reviews.

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

Spenser Gilliland (11):
  udev: explicitly include pthreads
  sunxi-mali: add explicit pthread/dl/rt dependencies
  libpthread-stubs: move out of x11r7
  libdrm: remove x11 dependency.
  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
  libpng: ensure libpng12 is installed before libpng
  glmark2: new package
  mesa3d-demos: new package

 package/Config.in                                  |    5 +
 package/glmark2/Config.in                          |   17 ++
 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                         |   70 ++++++
 package/libdrm/Config.in                           |    3 +-
 package/libdrm/libdrm.mk                           |    5 +-
 package/libpng/libpng.mk                           |    4 +
 package/libpng12/Config.in                         |    9 +
 package/libpng12/libpng12.mk                       |   18 ++
 .../Config.in                                      |    2 +-
 package/libpthread-stubs/xlib_libpthread-stubs.mk  |   17 ++
 package/mesa3d-demos/Config.in                     |    8 +
 .../mesa3d-demos/mesa3d-demos-non-mesa-impl.patch  |  244 ++++++++++++++++++++
 .../mesa3d-demos/mesa3d-demos-optional-gl.patch    |   75 ++++++
 package/mesa3d-demos/mesa3d-demos-x11-fix.patch    |   30 +++
 package/mesa3d-demos/mesa3d-demos.mk               |   63 +++++
 package/mesa3d/Config.in                           |  182 +++++++++++++++
 package/mesa3d/mesa3d-cross-glsl-compiler.patch    |   41 ++++
 package/mesa3d/mesa3d-gbm-without-dri.patch        |   30 +++
 package/mesa3d/mesa3d.mk                           |  126 ++++++++++
 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               |   27 ++-
 package/sunxi-mali/egl.pc                          |    2 +-
 package/sunxi-mali/glesv2.pc                       |    2 +-
 package/udev/udev.mk                               |    2 +-
 package/x11r7/Config.in                            |    2 -
 package/x11r7/libxcb/Config.in                     |    2 +-
 package/x11r7/mesa3d/Config.in                     |   15 --
 package/x11r7/mesa3d/mesa3d-uclibc-locale.patch    |   56 -----
 package/x11r7/mesa3d/mesa3d.mk                     |   40 ----
 .../xlib_libpthread-stubs/xlib_libpthread-stubs.mk |   16 --
 .../xserver_xorg-server/xserver_xorg-server.mk     |    4 +-
 39 files changed, 1163 insertions(+), 143 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
 rename package/{x11r7/xlib_libpthread-stubs => libpthread-stubs}/Config.in (81%)
 create mode 100644 package/libpthread-stubs/xlib_libpthread-stubs.mk
 create mode 100644 package/mesa3d-demos/Config.in
 create mode 100644 package/mesa3d-demos/mesa3d-demos-non-mesa-impl.patch
 create mode 100644 package/mesa3d-demos/mesa3d-demos-optional-gl.patch
 create mode 100644 package/mesa3d-demos/mesa3d-demos-x11-fix.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
 delete mode 100644 package/x11r7/xlib_libpthread-stubs/xlib_libpthread-stubs.mk

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

* [Buildroot] [PATCH v3 01/11] udev: explicitly include pthreads
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-10-03 20:41   ` Peter Korsgaard
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 02/11] sunxi-mali: add explicit pthread/dl/rt dependencies Spenser Gilliland
                   ` (10 subsequent siblings)
  11 siblings, 1 reply; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot

This fixes builds with Linaro hard float toolchains.

Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/udev/udev.mk |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/package/udev/udev.mk b/package/udev/udev.mk
index db86850..b512ec5 100644
--- a/package/udev/udev.mk
+++ b/package/udev/udev.mk
@@ -12,7 +12,7 @@ UDEV_LICENSE_FILES = COPYING
 UDEV_INSTALL_STAGING = YES
 
 # mq_getattr is in librt
-UDEV_CONF_ENV += LIBS=-lrt
+UDEV_CONF_ENV += LIBS="-lrt -lpthread"
 
 UDEV_CONF_OPT =			\
 	--sbindir=/sbin		\
-- 
1.7.1

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

* [Buildroot] [PATCH v3 02/11] sunxi-mali: add explicit pthread/dl/rt dependencies
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 01/11] udev: explicitly include pthreads Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7 Spenser Gilliland
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot

fixes hard float with Linaro toolchain.

Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/sunxi-mali/egl.pc    |    2 +-
 package/sunxi-mali/glesv2.pc |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/sunxi-mali/egl.pc b/package/sunxi-mali/egl.pc
index 56e3990..b0375dc 100644
--- a/package/sunxi-mali/egl.pc
+++ b/package/sunxi-mali/egl.pc
@@ -7,6 +7,6 @@ Name: egl
 Description: ARM Mali implementation of EGL
 Version: 1.4
 Requires:
-Libs: -L${libdir} -lEGL -lGLESv2 -lUMP
+Libs: -L${libdir} -lEGL -lGLESv2 -lUMP -lrt -lpthread
 Cflags: -I{includedir}/EGL/ -I${includedir}
 
diff --git a/package/sunxi-mali/glesv2.pc b/package/sunxi-mali/glesv2.pc
index 9273678..b34bf72 100644
--- a/package/sunxi-mali/glesv2.pc
+++ b/package/sunxi-mali/glesv2.pc
@@ -7,6 +7,6 @@ Name: glesv2
 Description: ARM Mali implementation of OpenGL ESv2
 Version: 2.0
 Requires:
-Libs: -L${libdir} -lGLESv2 -lGLESv1_CM -lUMP
+Libs: -L${libdir} -lGLESv2 -lGLESv1_CM -lUMP -ldl -lrt -lpthread
 Cflags: -I${includedir}/GLES2
 
-- 
1.7.1

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

* [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 01/11] udev: explicitly include pthreads Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 02/11] sunxi-mali: add explicit pthread/dl/rt dependencies Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-10-01 19:01   ` Thomas Petazzoni
  2014-01-08 19:03   ` Bernd Kuhls
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency Spenser Gilliland
                   ` (8 subsequent siblings)
  11 siblings, 2 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/Config.in                                  |    1 +
 package/libdrm/libdrm.mk                           |    2 +-
 .../Config.in                                      |    2 +-
 package/libpthread-stubs/xlib_libpthread-stubs.mk  |   17 +++++++++++++++++
 package/x11r7/Config.in                            |    1 -
 package/x11r7/libxcb/Config.in                     |    2 +-
 .../xlib_libpthread-stubs/xlib_libpthread-stubs.mk |   16 ----------------
 7 files changed, 21 insertions(+), 20 deletions(-)
 rename package/{x11r7/xlib_libpthread-stubs => libpthread-stubs}/Config.in (81%)
 create mode 100644 package/libpthread-stubs/xlib_libpthread-stubs.mk
 delete mode 100644 package/x11r7/xlib_libpthread-stubs/xlib_libpthread-stubs.mk

diff --git a/package/Config.in b/package/Config.in
index 1dd60d1..ca825f5 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -668,6 +668,7 @@ source "package/libglib2/Config.in"
 source "package/libical/Config.in"
 source "package/libnspr/Config.in"
 source "package/libpfm4/Config.in"
+source "package/libpthread-stubs/Config.in"
 source "package/libpthsem/Config.in"
 source "package/libsigc/Config.in"
 source "package/libsigsegv/Config.in"
diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk
index 697cd2f..da3a87c 100644
--- a/package/libdrm/libdrm.mk
+++ b/package/libdrm/libdrm.mk
@@ -12,7 +12,7 @@ LIBDRM_LICENSE = MIT
 LIBDRM_INSTALL_STAGING = YES
 
 LIBDRM_DEPENDENCIES = \
-	xlib_libpthread-stubs \
+	libpthread-stubs \
 	host-pkgconf
 
 LIBDRM_CONF_OPT = \
diff --git a/package/x11r7/xlib_libpthread-stubs/Config.in b/package/libpthread-stubs/Config.in
similarity index 81%
rename from package/x11r7/xlib_libpthread-stubs/Config.in
rename to package/libpthread-stubs/Config.in
index fb53585..f81d851 100644
--- a/package/x11r7/xlib_libpthread-stubs/Config.in
+++ b/package/libpthread-stubs/Config.in
@@ -1,4 +1,4 @@
-config BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
+config BR2_PACKAGE_LIBPTHREAD_STUBS
 	bool "libpthread-stubs"
 	help
 	  This library provides weak aliases for pthread functions not
diff --git a/package/libpthread-stubs/xlib_libpthread-stubs.mk b/package/libpthread-stubs/xlib_libpthread-stubs.mk
new file mode 100644
index 0000000..c165183
--- /dev/null
+++ b/package/libpthread-stubs/xlib_libpthread-stubs.mk
@@ -0,0 +1,17 @@
+################################################################################
+#
+# libpthread-stubs
+#
+################################################################################
+
+LIBPTHREAD_STUBS_VERSION = 0.3
+LIBPTHREAD_STUBS_SOURCE = libpthread-stubs-$(LIBPTHREAD_STUBS_VERSION).tar.bz2
+LIBPTHREAD_STUBS_SITE = http://xcb.freedesktop.org/dist/
+LIBPTHREAD_STUBS_LICENSE = MIT
+LIBPTHREAD_STUBS_LICENSE_FILES = COPYING
+
+LIBPTHREAD_STUBS_INSTALL_STAGING = YES
+
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))
+
diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in
index 205079c..16cd4b4 100644
--- a/package/x11r7/Config.in
+++ b/package/x11r7/Config.in
@@ -51,7 +51,6 @@ if BR2_PACKAGE_XORG7
 		source package/x11r7/xlib_libxkbfile/Config.in
 		source package/x11r7/xlib_xtrans/Config.in
 		source package/x11r7/xlib_libpciaccess/Config.in
-		source package/x11r7/xlib_libpthread-stubs/Config.in
 	endmenu
 	menu "X11R7 Applications"
 		source package/x11r7/xapp_appres/Config.in
diff --git a/package/x11r7/libxcb/Config.in b/package/x11r7/libxcb/Config.in
index 1e1afb4..32569f7 100644
--- a/package/x11r7/libxcb/Config.in
+++ b/package/x11r7/libxcb/Config.in
@@ -1,6 +1,6 @@
 config BR2_PACKAGE_LIBXCB
 	bool "libxcb"
-	select BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
+	select BR2_PACKAGE_LIBPTHREAD_STUBS
 	select BR2_PACKAGE_XCB_PROTO
 	select BR2_PACKAGE_XLIB_LIBXDMCP
 	select BR2_PACKAGE_XLIB_LIBXAU
diff --git a/package/x11r7/xlib_libpthread-stubs/xlib_libpthread-stubs.mk b/package/x11r7/xlib_libpthread-stubs/xlib_libpthread-stubs.mk
deleted file mode 100644
index 5ea02e9..0000000
--- a/package/x11r7/xlib_libpthread-stubs/xlib_libpthread-stubs.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-################################################################################
-#
-# xlib_libpthread-stubs
-#
-################################################################################
-
-XLIB_LIBPTHREAD_STUBS_VERSION = 0.3
-XLIB_LIBPTHREAD_STUBS_SOURCE = libpthread-stubs-$(XLIB_LIBPTHREAD_STUBS_VERSION).tar.bz2
-XLIB_LIBPTHREAD_STUBS_SITE = http://xcb.freedesktop.org/dist/
-XLIB_LIBPTHREAD_STUBS_LICENSE = MIT
-XLIB_LIBPTHREAD_STUBS_LICENSE_FILES = COPYING
-
-XLIB_LIBPTHREAD_STUBS_INSTALL_STAGING = YES
-
-$(eval $(autotools-package))
-$(eval $(host-autotools-package))
-- 
1.7.1

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

* [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency.
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (2 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7 Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-10-01 19:02   ` Thomas Petazzoni
  2014-01-08 19:04   ` Bernd Kuhls
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 05/11] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo Spenser Gilliland
                   ` (7 subsequent siblings)
  11 siblings, 2 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot


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

diff --git a/package/libdrm/Config.in b/package/libdrm/Config.in
index 533e985..d67a6c2 100644
--- a/package/libdrm/Config.in
+++ b/package/libdrm/Config.in
@@ -1,7 +1,6 @@
 config BR2_PACKAGE_LIBDRM
 	bool "libdrm"
-	select BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
-	depends on BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_LIBPTHREAD_STUBS
 	depends on BR2_LARGEFILE
 	help
 	  Direct Rendering Manager
diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk
index da3a87c..f9438cd 100644
--- a/package/libdrm/libdrm.mk
+++ b/package/libdrm/libdrm.mk
@@ -19,6 +19,9 @@ LIBDRM_CONF_OPT = \
 	--disable-cairo-tests \
 	--disable-manpages
 
+LIBDRM_CONF_ENV = \
+	LIBS="-lrt -lpthread"
+
 ifeq ($(BR2_PACKAGE_LIBDRM_INTEL),y)
 LIBDRM_CONF_OPT += --enable-intel
 LIBDRM_DEPENDENCIES += libatomic_ops xlib_libpciaccess
-- 
1.7.1

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

* [Buildroot] [PATCH v3 05/11] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (3 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 06/11] mesa3d: pull out from x11 Spenser Gilliland
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 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 |   27 +++++++++++++++++++++++----
 2 files changed, 33 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..5e68d7d 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,31 @@ 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 $(SUNXI_CEDARX_CONFIGURE_OPTS)
+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 +72,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.7.1

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

* [Buildroot] [PATCH v3 06/11] mesa3d: pull out from x11
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (4 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 05/11] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 07/11] mesa3d: modularize and bump to version 9.1.6 Spenser Gilliland
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/Config.in                                  |    1 +
 package/{x11r7 => }/mesa3d/Config.in               |    0
 .../{x11r7 => }/mesa3d/mesa3d-uclibc-locale.patch  |    0
 package/{x11r7 => }/mesa3d/mesa3d.mk               |    0
 package/x11r7/Config.in                            |    1 -
 5 files changed, 1 insertions(+), 1 deletions(-)
 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 ca825f5..408bc24 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -301,6 +301,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 16cd4b4..53c1893 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.7.1

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

* [Buildroot] [PATCH v3 07/11] mesa3d: modularize and bump to version 9.1.6
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (5 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 06/11] mesa3d: pull out from x11 Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 08/11] libpng12: new package Spenser Gilliland
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/mesa3d/Config.in                           |  179 +++++++++++++++++++-
 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                           |  120 +++++++++++--
 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, 384 insertions(+), 81 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..a9770f3 100644
--- a/package/mesa3d/Config.in
+++ b/package/mesa3d/Config.in
@@ -1,15 +1,182 @@
 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
 	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
+
+comment "mesa3d depends on a toolchain with C++ and largefile support"
+	depends on !BR2_LARGEFILE || !BR2_INSTALL_LIBSTDCPP
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..7b207b2 100644
--- a/package/mesa3d/mesa3d.mk
+++ b/package/mesa3d/mesa3d.mk
@@ -4,31 +4,16 @@
 #
 ################################################################################
 
-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_SITE = ftp://ftp.freedesktop.org/pub/mesa/$(MESA3D_VERSION)
 MESA3D_LICENSE = MIT, SGI, Khronos
 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,105 @@ MESA3D_DEPENDENCIES = \
 	host-bison \
 	host-flex
 
+MESA3D_CONF_OPT = \
+	--disable-static
+
+MESA3D_CONF_ENV = \
+	LIBS="-lrt -lpthread"
+
+# 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.7.1

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

* [Buildroot] [PATCH v3 08/11] libpng12: new package
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (6 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 07/11] mesa3d: modularize and bump to version 9.1.6 Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 09/11] libpng: ensure libpng12 is installed before libpng Spenser Gilliland
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 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(+), 0 deletions(-)
 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 408bc24..075bdc6 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -509,6 +509,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..8e36483
--- /dev/null
+++ b/package/libpng12/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_LIBPNG12
+	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
+
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))
-- 
1.7.1

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

* [Buildroot] [PATCH v3 09/11] libpng: ensure libpng12 is installed before libpng
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (7 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 08/11] libpng12: new package Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 10/11] glmark2: new package Spenser Gilliland
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot

This ensures that libpng (which is a newer version) is used when a specific
version of libpng (i.e. libpng12) is not selected.

Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/libpng/libpng.mk |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/package/libpng/libpng.mk b/package/libpng/libpng.mk
index f5bf956..033587e 100644
--- a/package/libpng/libpng.mk
+++ b/package/libpng/libpng.mk
@@ -14,5 +14,9 @@ LIBPNG_INSTALL_STAGING = YES
 LIBPNG_DEPENDENCIES = host-pkgconf zlib
 LIBPNG_CONFIG_SCRIPTS = libpng$(LIBPNG_SERIES)-config libpng-config
 
+# Ensure this libpng is the last installed in the case of multiple libpng
+# installs.
+LIBPNG_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBPNG12),libpng12)
+
 $(eval $(autotools-package))
 $(eval $(host-autotools-package))
-- 
1.7.1

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

* [Buildroot] [PATCH v3 10/11] glmark2: new package
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (8 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 09/11] libpng: ensure libpng12 is installed before libpng Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 11/11] mesa3d-demos: " Spenser Gilliland
  2014-01-05 16:17 ` [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Bernd Kuhls
  11 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
---
 package/Config.in                                  |    1 +
 package/glmark2/Config.in                          |   17 ++++
 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                         |   70 +++++++++++++
 6 files changed, 232 insertions(+), 0 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

diff --git a/package/Config.in b/package/Config.in
index 075bdc6..cf79ea0 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -48,6 +48,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..7349690
--- /dev/null
+++ b/package/glmark2/Config.in
@@ -0,0 +1,17 @@
+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 Mesa3D GBM support and largefile support in toolchain"
+	depends on (BR2_PACKAGE_HAS_OPENGL || \
+		(BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES)) && \
+		(!BR2_LARGEFILE || !BR2_PACKAGE_MESA3D_GBM)
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..d96db0d
--- /dev/null
+++ b/package/glmark2/glmark2.mk
@@ -0,0 +1,70 @@
+################################################################################
+#
+# glmark2
+#
+################################################################################
+
+GLMARK2_VERSION = 279
+GLMARK2_SITE = http://bazaar.launchpad.net/~laanwj/glmark2/fbdev
+GLMARK2_SITE_METHOD = bzr
+GLMARK2_LICENSE = GPLv3+ SGIv1
+GLMARK2_LICENSE_FILES = COPYING COPYING.SGI
+
+GLMARK2_DEPENDENCIES = jpeg libpng12 mesa3d host-pkgconf
+
+GLMARK2_CONF_OPTS = --prefix=/usr/
+
+GLMARK2_CONF_ENV = LDFLAGS="-lrt -lpthread"
+
+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) $(GLMARK2_CONF_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.7.1

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

* [Buildroot] [PATCH v3 11/11] mesa3d-demos: new package
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (9 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 10/11] glmark2: new package Spenser Gilliland
@ 2013-09-26 23:21 ` Spenser Gilliland
  2014-01-05 16:17 ` [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Bernd Kuhls
  11 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-09-26 23:21 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-non-mesa-impl.patch  |  244 ++++++++++++++++++++
 .../mesa3d-demos/mesa3d-demos-optional-gl.patch    |   75 ++++++
 package/mesa3d-demos/mesa3d-demos-x11-fix.patch    |   30 +++
 package/mesa3d-demos/mesa3d-demos.mk               |   63 +++++
 6 files changed, 421 insertions(+), 0 deletions(-)
 create mode 100644 package/mesa3d-demos/Config.in
 create mode 100644 package/mesa3d-demos/mesa3d-demos-non-mesa-impl.patch
 create mode 100644 package/mesa3d-demos/mesa3d-demos-optional-gl.patch
 create mode 100644 package/mesa3d-demos/mesa3d-demos-x11-fix.patch
 create mode 100644 package/mesa3d-demos/mesa3d-demos.mk

diff --git a/package/Config.in b/package/Config.in
index cf79ea0..e14265b 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -140,6 +140,7 @@ endmenu
 menu "Graphic libraries and applications (graphic/text)"
 
 comment "Graphic applications"
+source "package/mesa3d-demos/Config.in"
 source "package/gnuplot/Config.in"
 source "package/jhead/Config.in"
 source "package/rrdtool/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-non-mesa-impl.patch b/package/mesa3d-demos/mesa3d-demos-non-mesa-impl.patch
new file mode 100644
index 0000000..d370929
--- /dev/null
+++ b/package/mesa3d-demos/mesa3d-demos-non-mesa-impl.patch
@@ -0,0 +1,244 @@
+This makes it possible to build the demos against opengl
+implementations other than Mesa 
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: mesa3d-demos-8.1.0/src/egl/eglut/eglut.c
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/eglut/eglut.c
++++ mesa3d-demos-8.1.0/src/egl/eglut/eglut.c
+@@ -76,8 +76,9 @@ _eglutNow(void)
+ 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 @@ _eglutCreateWindow(const char *title, in
+             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 @@ eglutDestroyWindow(int win)
+    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
++++ mesa3d-demos-8.1.0/src/egl/eglut/eglut_screen.c
+@@ -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 @@ init_kms(void)
+    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 @@ _eglutNativeInitWindow(struct eglut_wind
+ 
+    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/demo1.c
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/opengl/demo1.c
++++ mesa3d-demos-8.1.0/src/egl/opengl/demo1.c
+@@ -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 @@ TestScreens(EGLDisplay dpy)
+    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
++++ mesa3d-demos-8.1.0/src/egl/opengl/demo2.c
+@@ -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 @@ TestScreens(EGLDisplay dpy)
+       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 @@ main(int argc, char *argv[])
+    EGLModeMESA mode;
+    EGLScreenMESA screen;
+    EGLint count;
++#endif
+ 
+    EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
+    assert(d);
+@@ -132,6 +135,7 @@ main(int argc, char *argv[])
+       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 @@ main(int argc, char *argv[])
+    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
++++ mesa3d-demos-8.1.0/src/egl/opengl/demo3.c
+@@ -46,7 +46,7 @@ GLubyte OpenGL_bits[] = {
+    0x3e, 0x00, 0x00, 0xf8, 0x0c, 0x00, 
+ };
+ 
+-
++#ifdef EGL_MESA_screen_surface
+ static void Init(void)
+ {
+ 
+@@ -551,11 +551,13 @@ write_ppm(const char *filename, const GL
+       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 @@ main(int argc, char *argv[])
+    const GLubyte *bitmap;
+    EGLint screenAttribs[32];
+    EGLint i;
++#endif
+ 
+    EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
+    assert(d);
+@@ -583,6 +586,7 @@ main(int argc, char *argv[])
+       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 @@ main(int argc, char *argv[])
+    eglDestroySurface(d, screen_surf);
+    eglDestroyContext(d, ctx);
+    eglTerminate(d);
++#endif
+ 
+    return 0;
+ }
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..b198531
--- /dev/null
+++ b/package/mesa3d-demos/mesa3d-demos-optional-gl.patch
@@ -0,0 +1,75 @@
+This patches makes opengl an optional component.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: mesa3d-demos-8.1.0/configure.ac
+===================================================================
+--- mesa3d-demos-8.1.0.orig/configure.ac
++++ mesa3d-demos-8.1.0/configure.ac
+@@ -51,6 +51,14 @@ m4_ifndef([PKG_PROG_PKG_CONFIG],
+   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 @@ PKG_CHECK_MODULES(GLU, [glu], [],
+ 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@:>@])],
+@@ -287,7 +297,7 @@ AC_SUBST([MESA_GLAPI])
+ 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/opengl/Makefile.am
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/opengl/Makefile.am
++++ mesa3d-demos-8.1.0/src/egl/opengl/Makefile.am
+@@ -50,6 +50,7 @@ endif
+ endif
+ 
+ if HAVE_EGL
++if HAVE_GL
+ noinst_PROGRAMS = \
+ 	demo1 \
+ 	demo2 \
+@@ -61,6 +62,7 @@ noinst_PROGRAMS = \
+ 	$(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/util/Makefile.am
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/util/Makefile.am
++++ mesa3d-demos-8.1.0/src/util/Makefile.am
+@@ -27,7 +27,9 @@ AM_CFLAGS = \
+ 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-x11-fix.patch b/package/mesa3d-demos/mesa3d-demos-x11-fix.patch
new file mode 100644
index 0000000..f6b3b0c
--- /dev/null
+++ b/package/mesa3d-demos/mesa3d-demos-x11-fix.patch
@@ -0,0 +1,30 @@
+This patch ensures that programs which depend on x11 are not build if x11
+is not available.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: mesa3d-demos-8.1.0/src/egl/opengles2/Makefile.am
+===================================================================
+--- mesa3d-demos-8.1.0.orig/src/egl/opengles2/Makefile.am
++++ mesa3d-demos-8.1.0/src/egl/opengles2/Makefile.am
+@@ -35,9 +35,10 @@ AM_LDFLAGS = \
+ 
+ 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 @@ bin_PROGRAMS += es2gears_wayland
+ endif
+ endif
+ endif
++endif
+ 
+ es2_info_LDADD = $(X11_LIBS)
+ es2tri_LDADD = $(X11_LIBS)
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.7.1

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

* [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7 Spenser Gilliland
@ 2013-10-01 19:01   ` Thomas Petazzoni
  2013-10-02 14:45     ` Spenser Gilliland
  2014-01-08 19:03   ` Bernd Kuhls
  1 sibling, 1 reply; 22+ messages in thread
From: Thomas Petazzoni @ 2013-10-01 19:01 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

On Thu, 26 Sep 2013 18:21:46 -0500, Spenser Gilliland wrote:

> --- a/package/x11r7/xlib_libpthread-stubs/Config.in
> +++ b/package/libpthread-stubs/Config.in
> @@ -1,4 +1,4 @@
> -config BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
> +config BR2_PACKAGE_LIBPTHREAD_STUBS

This renaming of option should lead to additions to the
Config.in.legacy file.

I think the move makes sense since libpthread-stubs is not part of the
X.org releases (see http://www.x.org/releases/X11R7.7/src/everything/).

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency.
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency Spenser Gilliland
@ 2013-10-01 19:02   ` Thomas Petazzoni
  2013-10-02 14:44     ` Spenser Gilliland
  2014-01-08 19:04   ` Bernd Kuhls
  1 sibling, 1 reply; 22+ messages in thread
From: Thomas Petazzoni @ 2013-10-01 19:02 UTC (permalink / raw)
  To: buildroot

Dear Spenser Gilliland,

On Thu, 26 Sep 2013 18:21:47 -0500, Spenser Gilliland wrote:
> 
> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
> ---
>  package/libdrm/Config.in |    3 +--
>  package/libdrm/libdrm.mk |    3 +++
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/package/libdrm/Config.in b/package/libdrm/Config.in
> index 533e985..d67a6c2 100644
> --- a/package/libdrm/Config.in
> +++ b/package/libdrm/Config.in
> @@ -1,7 +1,6 @@
>  config BR2_PACKAGE_LIBDRM
>  	bool "libdrm"
> -	select BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
> -	depends on BR2_PACKAGE_XORG7
> +	select BR2_PACKAGE_LIBPTHREAD_STUBS
>  	depends on BR2_LARGEFILE
>  	help
>  	  Direct Rendering Manager
> diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk
> index da3a87c..f9438cd 100644
> --- a/package/libdrm/libdrm.mk
> +++ b/package/libdrm/libdrm.mk
> @@ -19,6 +19,9 @@ LIBDRM_CONF_OPT = \
>  	--disable-cairo-tests \
>  	--disable-manpages
>  
> +LIBDRM_CONF_ENV = \
> +	LIBS="-lrt -lpthread"

This hunk has nothing to do with the commit title. I am also not really
happy with those libraries being explicitly listed. I do remember the
problem that you had, and that we did not understand it completely, but
it doesn't seem right to do this.

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency.
  2013-10-01 19:02   ` Thomas Petazzoni
@ 2013-10-02 14:44     ` Spenser Gilliland
  0 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-10-02 14:44 UTC (permalink / raw)
  To: buildroot

On Tue, Oct 1, 2013 at 2:02 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Spenser Gilliland,
>
> On Thu, 26 Sep 2013 18:21:47 -0500, Spenser Gilliland wrote:
>>
>> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
>> ---
>>  package/libdrm/Config.in |    3 +--
>>  package/libdrm/libdrm.mk |    3 +++
>>  2 files changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/package/libdrm/Config.in b/package/libdrm/Config.in
>> index 533e985..d67a6c2 100644
>> --- a/package/libdrm/Config.in
>> +++ b/package/libdrm/Config.in
>> @@ -1,7 +1,6 @@
>>  config BR2_PACKAGE_LIBDRM
>>       bool "libdrm"
>> -     select BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
>> -     depends on BR2_PACKAGE_XORG7
>> +     select BR2_PACKAGE_LIBPTHREAD_STUBS
>>       depends on BR2_LARGEFILE
>>       help
>>         Direct Rendering Manager
>> diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk
>> index da3a87c..f9438cd 100644
>> --- a/package/libdrm/libdrm.mk
>> +++ b/package/libdrm/libdrm.mk
>> @@ -19,6 +19,9 @@ LIBDRM_CONF_OPT = \
>>       --disable-cairo-tests \
>>       --disable-manpages
>>
>> +LIBDRM_CONF_ENV = \
>> +     LIBS="-lrt -lpthread"
>
> This hunk has nothing to do with the commit title. I am also not really
> happy with those libraries being explicitly listed. I do remember the
> problem that you had, and that we did not understand it completely, but
> it doesn't seem right to do this.

Yes, sorry. This was something I added in my code to get it to build
reliably with the Linaro toolchain.  While it's not the prettiest
solution, I haven't found another way to make this work.

Regards,
Spenser

-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7
  2013-10-01 19:01   ` Thomas Petazzoni
@ 2013-10-02 14:45     ` Spenser Gilliland
  0 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-10-02 14:45 UTC (permalink / raw)
  To: buildroot

On Tue, Oct 1, 2013 at 2:01 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Spenser Gilliland,
>
> On Thu, 26 Sep 2013 18:21:46 -0500, Spenser Gilliland wrote:
>
>> --- a/package/x11r7/xlib_libpthread-stubs/Config.in
>> +++ b/package/libpthread-stubs/Config.in
>> @@ -1,4 +1,4 @@
>> -config BR2_PACKAGE_XLIB_LIBPTHREAD_STUBS
>> +config BR2_PACKAGE_LIBPTHREAD_STUBS
>
> This renaming of option should lead to additions to the
> Config.in.legacy file.

Will fix.

> I think the move makes sense since libpthread-stubs is not part of the
> X.org releases (see http://www.x.org/releases/X11R7.7/src/everything/).
>
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, Free Electrons
> Embedded Linux, Kernel and Android engineering
> http://free-electrons.com

Regards,
Spenser

-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v3 01/11] udev: explicitly include pthreads
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 01/11] udev: explicitly include pthreads Spenser Gilliland
@ 2013-10-03 20:41   ` Peter Korsgaard
  2013-10-08 14:55     ` Spenser Gilliland
  0 siblings, 1 reply; 22+ messages in thread
From: Peter Korsgaard @ 2013-10-03 20:41 UTC (permalink / raw)
  To: buildroot

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

 Spenser> This fixes builds with Linaro hard float toolchains.

Sorry, what toolchain exactly? I just did a test build with our default
(Linaro 2013.08) ext toolchain, and didn't have any linker issues.


 Spenser> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
 Spenser> ---
 Spenser>  package/udev/udev.mk |    2 +-
 Spenser>  1 files changed, 1 insertions(+), 1 deletions(-)

 Spenser> diff --git a/package/udev/udev.mk b/package/udev/udev.mk
 Spenser> index db86850..b512ec5 100644
 Spenser> --- a/package/udev/udev.mk
 Spenser> +++ b/package/udev/udev.mk
 Spenser> @@ -12,7 +12,7 @@ UDEV_LICENSE_FILES = COPYING
 Spenser>  UDEV_INSTALL_STAGING = YES
 
 Spenser>  # mq_getattr is in librt
 Spenser> -UDEV_CONF_ENV += LIBS=-lrt
 Spenser> +UDEV_CONF_ENV += LIBS="-lrt -lpthread"
 
 Spenser>  UDEV_CONF_OPT =			\
 Spenser>  	--sbindir=/sbin		\
 Spenser> -- 
 Spenser> 1.7.1

 Spenser> _______________________________________________
 Spenser> buildroot mailing list
 Spenser> buildroot at busybox.net
 Spenser> http://lists.busybox.net/mailman/listinfo/buildroot


-- 
Bye, Peter Korsgaard

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

* [Buildroot] [PATCH v3 01/11] udev: explicitly include pthreads
  2013-10-03 20:41   ` Peter Korsgaard
@ 2013-10-08 14:55     ` Spenser Gilliland
  0 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2013-10-08 14:55 UTC (permalink / raw)
  To: buildroot

Peter,
>
>  Spenser> This fixes builds with Linaro hard float toolchains.
>
> Sorry, what toolchain exactly? I just did a test build with our default
> (Linaro 2013.08) ext toolchain, and didn't have any linker issues.

This has been occurring with the Linaro 2013.06 toolchain.  I'll test
with the 2013.08 toolchain.  I'm not sure why the 2013.06 was chosen
by default.

Thanks,
Spenser

-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates
  2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
                   ` (10 preceding siblings ...)
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 11/11] mesa3d-demos: " Spenser Gilliland
@ 2014-01-05 16:17 ` Bernd Kuhls
  2014-01-06  0:07   ` Spenser Gilliland
  11 siblings, 1 reply; 22+ messages in thread
From: Bernd Kuhls @ 2014-01-05 16:17 UTC (permalink / raw)
  To: buildroot

Spenser Gilliland <spenser@gillilanding.com> wrote
in news:1380237714-2470-1-git-send-email-spenser at gillilanding.com: 

> this patch series adds glmark2 and mesa3d-demos along with supporting
> updates for mesa3d and libdrm.  Additionally, a udev bug fix for EABIhf
> toolchains is included.

Hi,

during the preparation of sending a patch for bumping the version of mesa3d 
to 10.0.1, based on current buildroot git, I came across your uncommitted 
patchset. I would like to ask if you still want to work on it and whether the 
buildroot maintainers are willing to accept it or not.

Depending on the answers I would like to contribute to buildroot so it will 
carry mesa3d 10.0.1.

Regards, Bernd

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

* [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates
  2014-01-05 16:17 ` [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Bernd Kuhls
@ 2014-01-06  0:07   ` Spenser Gilliland
  0 siblings, 0 replies; 22+ messages in thread
From: Spenser Gilliland @ 2014-01-06  0:07 UTC (permalink / raw)
  To: buildroot

Bernd,

> during the preparation of sending a patch for bumping the version of mesa3d
> to 10.0.1, based on current buildroot git, I came across your uncommitted
> patchset. I would like to ask if you still want to work on it and whether the
> buildroot maintainers are willing to accept it or not.

I'm still interested in moving this patch set forward but I've been
severely lacking in time.  I'd be happy for you to take a crack at it
and I'll rebase on top of your work.

> Depending on the answers I would like to contribute to buildroot so it will
> carry mesa3d 10.0.1.

Great.

> Regards, Bernd

Thanks,
Spenser


-- 
Spenser Gilliland
Computer Engineer
Doctoral Candidate

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

* [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7 Spenser Gilliland
  2013-10-01 19:01   ` Thomas Petazzoni
@ 2014-01-08 19:03   ` Bernd Kuhls
  1 sibling, 0 replies; 22+ messages in thread
From: Bernd Kuhls @ 2014-01-08 19:03 UTC (permalink / raw)
  To: buildroot

Spenser Gilliland <spenser@gillilanding.com> wrote
in news:1380237714-2470-4-git-send-email-spenser at gillilanding.com: 

> 
> Signed-off-by: Spenser Gilliland
> <spenser@gillilanding.com>

Hi,

I think this patch was superseeded by
http://patchwork.ozlabs.org/patch/304117/

Regards, Bernd

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

* [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency.
  2013-09-26 23:21 ` [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency Spenser Gilliland
  2013-10-01 19:02   ` Thomas Petazzoni
@ 2014-01-08 19:04   ` Bernd Kuhls
  1 sibling, 0 replies; 22+ messages in thread
From: Bernd Kuhls @ 2014-01-08 19:04 UTC (permalink / raw)
  To: buildroot

Spenser Gilliland <spenser@gillilanding.com> wrote
in news:1380237714-2470-5-git-send-email-spenser at gillilanding.com: 

> 
> Signed-off-by: Spenser Gilliland
> <spenser@gillilanding.com>

Hi,

I think this patch was superseded by
http://patchwork.ozlabs.org/patch/304116/

Regards, Bernd

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

end of thread, other threads:[~2014-01-08 19:04 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-26 23:21 [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 01/11] udev: explicitly include pthreads Spenser Gilliland
2013-10-03 20:41   ` Peter Korsgaard
2013-10-08 14:55     ` Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 02/11] sunxi-mali: add explicit pthread/dl/rt dependencies Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 03/11] libpthread-stubs: move out of x11r7 Spenser Gilliland
2013-10-01 19:01   ` Thomas Petazzoni
2013-10-02 14:45     ` Spenser Gilliland
2014-01-08 19:03   ` Bernd Kuhls
2013-09-26 23:21 ` [Buildroot] [PATCH v3 04/11] libdrm: remove x11 dependency Spenser Gilliland
2013-10-01 19:02   ` Thomas Petazzoni
2013-10-02 14:44     ` Spenser Gilliland
2014-01-08 19:04   ` Bernd Kuhls
2013-09-26 23:21 ` [Buildroot] [PATCH v3 05/11] sunxi-cedarx: bump to newer version, use armel2 binaries, add demo Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 06/11] mesa3d: pull out from x11 Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 07/11] mesa3d: modularize and bump to version 9.1.6 Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 08/11] libpng12: new package Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 09/11] libpng: ensure libpng12 is installed before libpng Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 10/11] glmark2: new package Spenser Gilliland
2013-09-26 23:21 ` [Buildroot] [PATCH v3 11/11] mesa3d-demos: " Spenser Gilliland
2014-01-05 16:17 ` [Buildroot] [PATCH v3 00/11] glmark2 and Mesa updates Bernd Kuhls
2014-01-06  0:07   ` Spenser Gilliland

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.