$NetBSD: patch-ab,v 1.5 2006/08/22 20:17:23 joerg Exp $

--- mzscheme/gc/dyn_load.c.orig	2004-12-19 08:38:25.000000000 +0000
+++ mzscheme/gc/dyn_load.c
@@ -57,6 +57,7 @@
     !defined(HPUX) && !(defined(LINUX) && defined(__ELF__)) && \
     !defined(RS6000) && !defined(SCO_ELF) && !defined(DGUX) && \
     !(defined(FREEBSD) && defined(__ELF__)) && \
+    !(defined(DRAGONFLY) && defined(__ELF__)) && \
     !(defined(NETBSD) && defined(__ELF__)) && !defined(HURD) && \
     !defined(DARWIN)
  --> We only know how to find data segments of dynamic libraries for the
@@ -81,8 +82,9 @@
 #endif
 
 #if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
-    (defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
-    (defined(NETBSD) && defined(__ELF__)) || defined(HURD)
+    ((defined(FREEBSD) || defined(DRAGONFLY)) && defined(__ELF__)) || \
+    (defined(NETBSD) && defined(__ELF__)) || \
+    defined(DGUX) || defined(HURD)
 #   include <stddef.h>
 #   include <elf.h>
 #   include <link.h>
@@ -273,8 +275,9 @@ void GC_register_dynamic_libraries()
 # endif /* SUNOS */
 
 #if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
-    (defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
-    (defined(NETBSD) && defined(__ELF__)) || defined(HURD)
+    ((defined(FREEBSD) || defined(DRAGONFLY)) && defined(__ELF__)) || \
+    (defined(NETBSD) && defined(__ELF__)) || \
+    defined(DGUX) || defined(HURD)
 
 
 #ifdef USE_PROC_FOR_LIBRARIES
