$NetBSD: patch-src_mesa_main_context.c,v 1.6 2022/03/13 15:52:50 tnn Exp $

atexit() is not a good idea in shared libraries.

--- src/mesa/main/context.c.orig	2021-07-14 20:04:58.296035000 +0000
+++ src/mesa/main/context.c
@@ -324,7 +324,11 @@ _mesa_destroy_visual( struct gl_config *
  * Calls all the various one-time-fini functions in Mesa
  */
 
+#if defined(HAVE_NOATEXIT)
+static void __attribute__((__destructor__))
+#else
 static void
+#endif
 one_time_fini(void)
 {
    glsl_type_singleton_decref();
@@ -357,7 +361,9 @@ one_time_init(void)
       _mesa_ubyte_to_float_color_tab[i] = (float) i / 255.0F;
    }
 
+#if !defined(HAVE_NOATEXIT)
    atexit(one_time_fini);
+#endif
 
 #if defined(DEBUG)
    if (MESA_VERBOSE != 0) {