1*c9537f57SPatrick WilliamsFrom e16117fc92688d76a042ad2c590c77d5a987a4ac Mon Sep 17 00:00:00 2001
2*c9537f57SPatrick WilliamsFrom: Erik Faye-Lund <erik.faye-lund@collabora.com>
3*c9537f57SPatrick WilliamsDate: Fri, 24 Mar 2023 13:31:58 +0100
4*c9537f57SPatrick WilliamsSubject: [PATCH] meson: fix glx-detection without glvnd
5*c9537f57SPatrick Williams
6*c9537f57SPatrick WilliamsWhen build without GLVND, Mesa provides GLX as a part of libGL, just
7*c9537f57SPatrick Williamslike XQuartz does on MacOS. There's nothing really macOS specific about
8*c9537f57SPatrick Williamsthis fallback, so let's drop the condition.
9*c9537f57SPatrick Williams
10*c9537f57SPatrick WilliamsAnd just for good measure, let's add in dep_gl as a dependency for
11*c9537f57SPatrick Williamsthe header-check here, in case some one decides to install libGL outside
12*c9537f57SPatrick Williamsof the default include directory.
13*c9537f57SPatrick Williams
14*c9537f57SPatrick WilliamsFixes: 34300551 ("meson: explicitly check for glx dependency")
15*c9537f57SPatrick WilliamsCloses: https://gitlab.freedesktop.org/mesa/demos/-/issues/36
16*c9537f57SPatrick WilliamsReviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
17*c9537f57SPatrick Williams
18*c9537f57SPatrick WilliamsUpstream-Status: Backport
19*c9537f57SPatrick WilliamsSigned-off-by: Ross Burton <ross.burton@arm.com>
20*c9537f57SPatrick Williams---
21*c9537f57SPatrick Williams meson.build | 9 +++++----
22*c9537f57SPatrick Williams 1 file changed, 5 insertions(+), 4 deletions(-)
23*c9537f57SPatrick Williams
24*c9537f57SPatrick Williamsdiff --git a/meson.build b/meson.build
25*c9537f57SPatrick Williamsindex c1853f94..bc3278e1 100644
26*c9537f57SPatrick Williams--- a/meson.build
27*c9537f57SPatrick Williams+++ b/meson.build
28*c9537f57SPatrick Williams@@ -99,10 +99,11 @@ if not dep_glu.found() and host_machine.system() != 'darwin'
29*c9537f57SPatrick Williams endif
30*c9537f57SPatrick Williams
31*c9537f57SPatrick Williams dep_glx = dependency('glx', required: false, disabler : true)
32*c9537f57SPatrick Williams-if not dep_glx.found() and host_machine.system() == 'darwin'
33*c9537f57SPatrick Williams-  # xquartz doesn't have a glx.pc, but it does have the header. And all the
34*c9537f57SPatrick Williams-  # symbols reside in libGL, so let's just use that.
35*c9537f57SPatrick Williams-  if cc.check_header('GL/glx.h', dependencies: dep_x11)
36*c9537f57SPatrick Williams+if not dep_glx.found()
37*c9537f57SPatrick Williams+  # Both Mesa build without GLVND and XQuartz lacks a glx.pc, but does
38*c9537f57SPatrick Williams+  # provide the header. And all the symbols reside in libGL, so let's
39*c9537f57SPatrick Williams+  # just use that.
40*c9537f57SPatrick Williams+  if cc.check_header('GL/glx.h', dependencies: [dep_x11, dep_gl])
41*c9537f57SPatrick Williams     dep_glx = dep_gl
42*c9537f57SPatrick Williams   endif
43*c9537f57SPatrick Williams endif
44*c9537f57SPatrick Williams--
45*c9537f57SPatrick Williams2.43.0
46*c9537f57SPatrick Williams
47