1*4882a593SmuzhiyunFrom bb9765a926588ebfe1eb324fbbe8fc22d419eebe Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Max Krummenacher <max.krummenacher@toradex.com> 3*4882a593SmuzhiyunDate: Thu, 25 Jun 2020 11:27:40 +0000 4*4882a593SmuzhiyunSubject: [PATCH] configure.ac: don't require eglmesaext.h 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunE.g. the Vivante EGL implementation does not provide eglmesaext.h. 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunThe commit moves the check for header file existence outside of the 9*4882a593Smuzhiyuncheck for existence of a egl packageconfig and makes the existence 10*4882a593Smuzhiyunof eglmesaext.h optional. 11*4882a593Smuzhiyun 12*4882a593Smuzhiyunfixes commit fb1acfec ("Fix building against libglvnd-provided EGL headers") 13*4882a593SmuzhiyunSigned-off-by: Max Krummenacher <max.krummenacher@toradex.com> 14*4882a593Smuzhiyun 15*4882a593SmuzhiyunUpstream-Status: Submitted [https://gitlab.gnome.org/GNOME/cogl/-/merge_requests/28] 16*4882a593SmuzhiyunSigned-off-by: Max Krummenacher <max.krummenacher@toradex.com> 17*4882a593Smuzhiyun--- 18*4882a593Smuzhiyun configure.ac | 51 ++++++++++++++++++++++++++++++++------------------- 19*4882a593Smuzhiyun 1 file changed, 32 insertions(+), 19 deletions(-) 20*4882a593Smuzhiyun 21*4882a593Smuzhiyundiff --git a/configure.ac b/configure.ac 22*4882a593Smuzhiyunindex b7ba95d..0d1d8de 100644 23*4882a593Smuzhiyun--- a/configure.ac 24*4882a593Smuzhiyun+++ b/configure.ac 25*4882a593Smuzhiyun@@ -1212,22 +1212,6 @@ AS_IF([test "x$NEED_EGL" = "xyes" && test "x$EGL_CHECKED" != "xyes"], 26*4882a593Smuzhiyun PKG_CHECK_EXISTS([egl], 27*4882a593Smuzhiyun [COGL_PKG_REQUIRES="$COGL_PKG_REQUIRES egl"], 28*4882a593Smuzhiyun [ 29*4882a593Smuzhiyun- AC_CHECK_HEADERS( 30*4882a593Smuzhiyun- [EGL/egl.h], 31*4882a593Smuzhiyun- [], 32*4882a593Smuzhiyun- [AC_MSG_ERROR([Unable to locate required EGL headers])]) 33*4882a593Smuzhiyun- AC_CHECK_HEADERS( 34*4882a593Smuzhiyun- [EGL/eglext.h], 35*4882a593Smuzhiyun- [], 36*4882a593Smuzhiyun- [AC_MSG_ERROR([Unable to locate required EGL headers])], 37*4882a593Smuzhiyun- [#include <EGL/egl.h>]) 38*4882a593Smuzhiyun- AC_CHECK_HEADERS( 39*4882a593Smuzhiyun- [EGL/eglmesaext.h], 40*4882a593Smuzhiyun- [], 41*4882a593Smuzhiyun- [AC_MSG_ERROR([Unable to locate required EGL headers])], 42*4882a593Smuzhiyun- [#include <EGL/egl.h> 43*4882a593Smuzhiyun-#include <EGL/eglext.h>]) 44*4882a593Smuzhiyun- 45*4882a593Smuzhiyun AC_CHECK_LIB(EGL, [eglInitialize], 46*4882a593Smuzhiyun [COGL_EXTRA_LDFLAGS="$COGL_EXTRA_LDFLAGS -lEGL"], 47*4882a593Smuzhiyun [AC_MSG_ERROR([Unable to locate required EGL library])]) 48*4882a593Smuzhiyun@@ -1236,9 +1220,38 @@ AS_IF([test "x$NEED_EGL" = "xyes" && test "x$EGL_CHECKED" != "xyes"], 49*4882a593Smuzhiyun ] 50*4882a593Smuzhiyun ) 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun- COGL_EGL_INCLUDES="#include <EGL/egl.h> 53*4882a593Smuzhiyun-#include <EGL/eglext.h> 54*4882a593Smuzhiyun-#include <EGL/eglmesaext.h>" 55*4882a593Smuzhiyun+dnl Test for the existence of egl headers. 56*4882a593Smuzhiyun+dnl egl*.h includes eglplatform.h which on __unix__ defaults to a X11 platform. 57*4882a593Smuzhiyun+dnl In that case AC_CHECK_HEADERS failes if X11 headers are not available. 58*4882a593Smuzhiyun+dnl Set the usual include guard define and, if the EGL implementation doesn't 59*4882a593Smuzhiyun+dnl use that guard fall back to USE_OZONE and EGL_NO_X11 platforms which don't 60*4882a593Smuzhiyun+dnl require additional headers. 61*4882a593Smuzhiyun+ AC_CHECK_HEADERS( 62*4882a593Smuzhiyun+ [EGL/egl.h], 63*4882a593Smuzhiyun+ [COGL_EGL_INCLUDES="#include <EGL/egl.h>"], 64*4882a593Smuzhiyun+ [AC_MSG_ERROR([Unable to locate required EGL headers])], 65*4882a593Smuzhiyun+ [#define __egl_h_ 66*4882a593Smuzhiyun+ #define USE_OZONE 67*4882a593Smuzhiyun+ #define EGL_NO_X11]) 68*4882a593Smuzhiyun+ AC_CHECK_HEADERS( 69*4882a593Smuzhiyun+ [EGL/eglext.h], 70*4882a593Smuzhiyun+ [COGL_EGL_INCLUDES="$COGL_EGL_INCLUDES 71*4882a593Smuzhiyun+#include <EGL/eglext.h>"], 72*4882a593Smuzhiyun+ [AC_MSG_ERROR([Unable to locate required EGL headers])], 73*4882a593Smuzhiyun+ [#define __eglext_h_ 74*4882a593Smuzhiyun+ #define USE_OZONE 75*4882a593Smuzhiyun+ #define EGL_NO_X11 76*4882a593Smuzhiyun+$COGL_EGL_INCLUDES]) 77*4882a593Smuzhiyun+ AC_CHECK_HEADERS( 78*4882a593Smuzhiyun+ [EGL/eglmesaext.h], 79*4882a593Smuzhiyun+ [COGL_EGL_INCLUDES="$COGL_EGL_INCLUDES 80*4882a593Smuzhiyun+#include <EGL/eglmesaext.h>"], 81*4882a593Smuzhiyun+ [], 82*4882a593Smuzhiyun+ [#define __eglmesaext_h_ 83*4882a593Smuzhiyun+#define USE_OZONE 84*4882a593Smuzhiyun+#define EGL_NO_X11 85*4882a593Smuzhiyun+$COGL_EGL_INCLUDES]) 86*4882a593Smuzhiyun+ 87*4882a593Smuzhiyun AC_SUBST([COGL_EGL_INCLUDES]) 88*4882a593Smuzhiyun ]) 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun-- 91*4882a593Smuzhiyun2.20.1 92*4882a593Smuzhiyun 93