From 48ae404b425b1247a777bb5ee01c0a3e659f419a Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 11 Apr 2022 08:34:36 -0400 Subject: [PATCH] kopper: print better error message if loader not detected MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit silently failing on release builds is annoying Reviewed-by: Yonggang Luo Reviewed-by: Daniel Stone Reviewed-by: Michel Dänzer Part-of: --- src/gallium/frontends/dri/kopper.c | 7 ++++++- src/gallium/frontends/dri/meson.build | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/gallium/frontends/dri/kopper.c b/src/gallium/frontends/dri/kopper.c index e02038075ec..6fa8e70c457 100644 --- a/src/gallium/frontends/dri/kopper.c +++ b/src/gallium/frontends/dri/kopper.c @@ -116,7 +116,12 @@ kopper_init_screen(__DRIscreen * sPriv) struct kopper_screen *kscreen; struct pipe_screen *pscreen = NULL; - assert(sPriv->kopper_loader); + if (!sPriv->kopper_loader) { + fprintf(stderr, "mesa: Kopper interface not found!\n" + " Ensure the versions of %s built with this version of Zink are\n" + " in your library path!\n", KOPPER_LIB_NAMES); + return NULL; + } kscreen = CALLOC_STRUCT(kopper_screen); if (!kscreen) return NULL; diff --git a/src/gallium/frontends/dri/meson.build b/src/gallium/frontends/dri/meson.build index 45c5acf0cbe..cb4f434c775 100644 --- a/src/gallium/frontends/dri/meson.build +++ b/src/gallium/frontends/dri/meson.build @@ -45,11 +45,16 @@ if with_dri2 files_libdri += files('dri2.c') endif +libdri_c_args = [] if with_gallium_zink + if get_option('glvnd') + libdri_c_args += '-DKOPPER_LIB_NAMES="libEGL_@0@ and libGLX_@0@"'.format(get_option('glvnd-vendor-name')) + else + libdri_c_args += '-DKOPPER_LIB_NAMES="libEGL and libGLX"' + endif files_libdri += files('kopper.c') endif -libdri_c_args = [] if with_gallium_softpipe libdri_c_args += '-DGALLIUM_SOFTPIPE' endif