$NetBSD: patch-src_drm-shim_drm__shim.c,v 1.1 2022/03/13 15:52:50 tnn Exp $

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

--- src/drm-shim/drm_shim.c.orig	2021-07-14 20:04:46.724922400 +0000
+++ src/drm-shim/drm_shim.c
@@ -162,7 +162,11 @@ drm_shim_override_file(const char *conte
    override->contents = strdup(contents);
 }
 
+#if defined(HAVE_NOATEXIT)
+static void __attribute__((__destructor__))
+#else
 static void
+#endif
 destroy_shim(void)
 {
    _mesa_set_destroy(opendir_set, NULL);
@@ -227,7 +231,9 @@ init_shim(void)
 
    drm_shim_device_init();
 
+#if !defined(HAVE_NOATEXIT)
    atexit(destroy_shim);
+#endif
 }
 
 /* Override libdrm's reading of various sysfs files for device enumeration. */