Skip to contentSkip to conversation

package/x11r7/libepoxy: Fix OpenGL / EGL dependencies

PATCH Superseded Bernd Kuhls 3 participants 5 messages May 6, 2015 – Jul 28, 2015

v2 of 5 Superseded Latest is v5 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 package/x11r7/libepoxy: Fix OpenGL / EGL dependencies

Fixes
http://autobuild.buildroot.net/results/596/596f44a26aad45c027f0f4f97d63e97a1f4fd001

---
v2: Add missing select lines to Config.in (Thomas)

 package/x11r7/libepoxy/Config.in   |   10 ++++++++--
 package/x11r7/libepoxy/libepoxy.mk |   12 +++++++++++-
 2 files changed, 19 insertions(+), 3 deletions(-)
package/x11r7/libepoxy/Config.in +8 -2
index c4f5794..1b1ca3f 100644
@@ -1,7 +1,13 @@
 config BR2_PACKAGE_LIBEPOXY
 	bool "epoxy"
-	depends on BR2_PACKAGE_MESA3D
+	depends on BR2_PACKAGE_HAS_LIBEGL
+	select BR2_PACKAGE_XLIB_LIBX11
+	select BR2_PACKAGE_XUTIL_UTIL_MACROS
 	help
-	  Epoxy is a library for handling OpenGL function pointer management for you.
+	  Epoxy is a library for handling OpenGL function pointer
+	  management for you.
 
 	  https://github.com/anholt/libepoxy
+
+comment "epoxy needs an OpenGL EGL backend"
+	depends on !BR2_PACKAGE_HAS_LIBEGL
package/x11r7/libepoxy/libepoxy.mk +11 -1
index d908893..fc1ede4 100644
@@ -8,8 +8,18 @@ LIBEPOXY_VERSION = v1.2
 LIBEPOXY_SITE = $(call github,anholt,libepoxy,$(LIBEPOXY_VERSION))
 LIBEPOXY_INSTALL_STAGING = YES
 LIBEPOXY_AUTORECONF = YES
-LIBEPOXY_DEPENDENCIES = mesa3d
+LIBEPOXY_DEPENDENCIES = \
+	$(if $(BR2_PACKAGE_HAS_LIBEGL),libegl) \
+	$(if $(BR2_PACKAGE_HAS_LIBGL),libgl)
 LIBEPOXY_LICENSE = MIT
 LIBEPOXY_LICENSE_FILES = COPYING
 
+ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
+LIBEPOXY_CONF_ENV = \
+	CFLAGS="$(TARGET_CFLAGS) \
+		-I$(STAGING_DIR)/usr/include/IL \
+		-I$(STAGING_DIR)/usr/include/interface/vcos/pthreads \
+		-I$(STAGING_DIR)/usr/include/interface/vmcs_host/linux"
+endif
+
 $(eval $(autotools-package))
Signature · 1 line
1.7.10.4
#1 lore raw

PATCH v2 1/1 package/x11r7/libepoxy: Fix OpenGL / EGL dependencies

Dear Bernd Kuhls,

package/x11r7/libepoxy/Config.in line 5

Quoted 11 lines · Bernd Kuhls
package/x11r7/libepoxy/Config.in +3 -1
index c4f5794..1b1ca3f 100644
@@ -1,7 +1,13 @@
 config BR2_PACKAGE_LIBEPOXY
 	bool "epoxy"
-	depends on BR2_PACKAGE_MESA3D
+	depends on BR2_PACKAGE_HAS_LIBEGL
+	select BR2_PACKAGE_XLIB_LIBX11
+	select BR2_PACKAGE_XUTIL_UTIL_MACROS

This doesn't make a lot of sense to me. Either you use EGL and you don't X, or you have X and you don't EGL.

Can you explain a bit more what's going on here?

Thanks,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#2 lore raw

PATCH v2 1/1 package/x11r7/libepoxy: Fix OpenGL / EGL dependencies

Bernd,

If you have some time, can you get back to me about the below questions, so that we can move forward with this patch?

Thanks,

Thomas

Quoted 24 lines · Thomas Petazzoni

Dear Bernd Kuhls,

package/x11r7/libepoxy/Config.in line 5

Quoted 11 lines · Bernd Kuhls
package/x11r7/libepoxy/Config.in +3 -1
index c4f5794..1b1ca3f 100644
@@ -1,7 +1,13 @@
 config BR2_PACKAGE_LIBEPOXY
 	bool "epoxy"
-	depends on BR2_PACKAGE_MESA3D
+	depends on BR2_PACKAGE_HAS_LIBEGL
+	select BR2_PACKAGE_XLIB_LIBX11
+	select BR2_PACKAGE_XUTIL_UTIL_MACROS

This doesn't make a lot of sense to me. Either you use EGL and you don't X, or you have X and you don't EGL.

Can you explain a bit more what's going on here?

Thanks,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#3 lore raw

PATCH v2 1/1 package/x11r7/libepoxy: Fix OpenGL / EGL dependencies

In reply to Thomas Petazzoni

Hello Thomas,

Quoted 5 lines · On Friday 10 July 2015 11:19:52 Thomas Petazzoni wrote:

Dear Bernd Kuhls,

Review

Quoted 1 line · Bernd Kuhls
(quoted diff) +0 -0

b/package/x11r7/libepoxy/Config.in

Quoted 5 lines
Quoted 5 lines

index c4f5794..1b1ca3f 100644

package/x11r7/libepoxy/Config.in +0 -0
@@ -1,7 +1,13 @@
 config BR2_PACKAGE_LIBEPOXY
Quoted 8 lines

package/x11r7/libepoxy/Config.in line 5

Quoted 5 lines
package/x11r7/libepoxy/Config.in +3 -1
 	bool "epoxy"
-	depends on BR2_PACKAGE_MESA3D
+	depends on BR2_PACKAGE_HAS_LIBEGL
+	select BR2_PACKAGE_XLIB_LIBX11
+	select BR2_PACKAGE_XUTIL_UTIL_MACROS

This doesn't make a lot of sense to me. Either you use EGL and you don't X, or you have X and you don't EGL.

As far as I understand, EGL is counterpart of GLX for GLESv2. As soon as you want to use GLEsv2, you need EGL. Therefore, EGL is not mutually exclusive with Xorg.

Here is an example program that work with Xorg and use EGL:
http://exoticorn.de/simplegl.tgz

Signature · 3 lines
J?r?me Pouiller, Sysmic
Embedded Linux specialist
http://www.sysmic.fr
#4 lore raw

PATCH v2 1/1 package/x11r7/libepoxy: Fix OpenGL / EGL dependencies

Dear J?r?me Pouiller,

Quoted 8 lines · J?r?me Pouiller
Quoted 2 lines

This doesn't make a lot of sense to me. Either you use EGL and you don't X, or you have X and you don't EGL.

As far as I understand, EGL is counterpart of GLX for GLESv2. As soon as you want to use GLEsv2, you need EGL. Therefore, EGL is not mutually exclusive with Xorg.

Here is an example program that work with Xorg and use EGL:
http://exoticorn.de/simplegl.tgz

Ah, okay. Then I indeed misunderstood this. I'll look again at Bernd's patch then. Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com