From 9ec9f7b4d0ef5e799ca4cc5103163e4630d184d8 Mon Sep 17 00:00:00 2001 From: Julien Olivain Date: Fri, 16 Sep 2022 22:30:59 +0200 Subject: [PATCH] demos: makes opengl an optional component This patch is a port of [1] for the new meson build system. [1]. https://git.busybox.net/buildroot/tree/package/mesa3d-demos/0001-demos-makes-opengl-an-optional-component.patch?h=2022.08 Signed-off-by: Julien Olivain --- meson.build | 19 ++++++++++++------- meson_options.txt | 1 + src/egl/meson.build | 5 ++++- src/meson.build | 4 +++- 4 files changed, 20 insertions(+), 9 deletions(-) diff --git a/meson.build b/meson.build index e1968fab..a15699d6 100644 --- a/meson.build +++ b/meson.build @@ -38,7 +38,10 @@ add_project_arguments( dep_m = cc.find_library('m', required : false) dep_winmm = cc.find_library('winmm', required : false) -dep_gl = dependency('gl') +dep_gl = dependency('gl', required : get_option('gl')) +if not dep_gl.found() + add_project_arguments('-DEGL_NO_X11=1', language: 'c') +endif dep_gles1 = dependency('glesv1_cm', required : get_option('gles1')) dep_gles2 = dependency('glesv2', required : get_option('gles2')) @@ -75,13 +78,15 @@ endif dep_threads = dependency('threads') -dep_glu = dependency('glu', required : dep_x11.found()) -if not dep_glu.found() - _glu_name = 'GLU' - if host_machine.system() == 'windows' - _glu_name = 'glu32' +if dep_gl.found() + dep_glu = dependency('glu', required : dep_x11.found()) + if not dep_glu.found() + _glu_name = 'GLU' + if host_machine.system() == 'windows' + _glu_name = 'glu32' + endif + dep_glu = cc.find_library(_glu_name, has_headers: 'GL/glu.h') endif - dep_glu = cc.find_library(_glu_name, has_headers: 'GL/glu.h') endif # GBM is needed for EGL on KMS diff --git a/meson_options.txt b/meson_options.txt index ddadd2e3..f5405698 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -1,5 +1,6 @@ option('with-glut', type : 'string') option('egl', type : 'feature') +option('gl', type : 'feature') option('gles1', type : 'feature') option('gles2', type : 'feature') option('osmesa', type : 'feature') diff --git a/src/egl/meson.build b/src/egl/meson.build index d1846921..42bf8ecd 100644 --- a/src/egl/meson.build +++ b/src/egl/meson.build @@ -19,7 +19,10 @@ # SOFTWARE. subdir('eglut') -subdir('opengl') + +if dep_gl.found() + subdir('opengl') +endif if dep_gles1.found() subdir('opengles1') diff --git a/src/meson.build b/src/meson.build index 39cac78d..7607c6de 100644 --- a/src/meson.build +++ b/src/meson.build @@ -20,7 +20,9 @@ subdir('glad') -subdir('util') +if dep_gl.found() + subdir('util') +endif if dep_glut.found() subdir('demos') -- 2.37.3