From a023a81fef9707b1d91f195b8a9b40613620a768 Mon Sep 17 00:00:00 2001 From: Nia Alarie Date: Sun, 4 Aug 2024 13:34:07 +0200 Subject: [PATCH] Fix loading libGL on NetBSD The unversioned libGL is preferred on OpenBSD and NetBSD because both (a) always install it (b) have forks of X11 with different ABI versions. However, many Linux distributions do not ship unversioned .so symlinks unless you install -dev packages. Unfortunately also needs to be fixed in ANGLE which has the same problem. --- gfx/gl/GLContextProviderGLX.cpp | 2 +- toolkit/xre/glxtest.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gfx/gl/GLContextProviderGLX.cpp b/gfx/gl/GLContextProviderGLX.cpp index 27d07e391d..4efca41ff8 100644 --- a/gfx/gl/GLContextProviderGLX.cpp +++ b/gfx/gl/GLContextProviderGLX.cpp @@ -84,7 +84,7 @@ GLXLibrary::EnsureInitialized() // see e.g. bug 608526: it is intrinsically interesting to know whether we have dynamically linked to libGL.so.1 // because at least the NVIDIA implementation requires an executable stack, which causes mprotect calls, // which trigger glibc bug http://sourceware.org/bugzilla/show_bug.cgi?id=12225 -#ifdef __OpenBSD__ +#if defined(__OpenBSD__) || defined(__NetBSD__) libGLfilename = "libGL.so"; #else libGLfilename = "libGL.so.1"; diff --git a/toolkit/xre/glxtest.cpp b/toolkit/xre/glxtest.cpp index f6f1d4d9c9..714b039e50 100644 --- a/toolkit/xre/glxtest.cpp +++ b/toolkit/xre/glxtest.cpp @@ -161,7 +161,7 @@ void glxtest() fatal_error("The MOZ_AVOID_OPENGL_ALTOGETHER environment variable is defined"); ///// Open libGL and load needed symbols ///// -#ifdef __OpenBSD__ +#if defined(__OpenBSD__) || defined(__NetBSD__) #define LIBGL_FILENAME "libGL.so" #else #define LIBGL_FILENAME "libGL.so.1"