*** ./dyn_load.c.orig	Tue Jul 12 20:07:42 2005
--- ./dyn_load.c	Sat Dec 10 10:11:39 2005
***************
*** 57,62 ****
--- 57,63 ----
      !defined(HPUX) && !(defined(LINUX) && defined(__ELF__)) && \
      !defined(RS6000) && !defined(SCO_ELF) && !defined(DGUX) && \
      !(defined(FREEBSD) && defined(__ELF__)) && \
+     !(defined(OPENBSD) && (defined(__ELF__) || defined(M68K))) && \
      !(defined(NETBSD) && defined(__ELF__)) && !defined(HURD) && \
      !defined(DARWIN)
   --> We only know how to find data segments of dynamic libraries for the
***************
*** 87,95 ****
  
  #if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
      (defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
      (defined(NETBSD) && defined(__ELF__)) || defined(HURD)
  #   include <stddef.h>
! #   include <elf.h>
  #   include <link.h>
  #endif
  
--- 88,97 ----
  
  #if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
      (defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
+     (defined(OPENBSD) && defined(__ELF__)) || \
      (defined(NETBSD) && defined(__ELF__)) || defined(HURD)
  #   include <stddef.h>
! //#   include <elf.h>
  #   include <link.h>
  #endif
  
***************
*** 287,292 ****
--- 289,295 ----
  
  #if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
      (defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
+     (defined(OPENBSD) && defined(__ELF__)) || \
      (defined(NETBSD) && defined(__ELF__)) || defined(HURD)
  
  
***************
*** 477,482 ****
--- 480,487 ----
  #  ifndef PF_W
  #  define PF_W         2
  #  endif
+ #elif defined(OPENBSD)
+ #  include <sys/exec_elf.h>
  #else
  #  include <elf.h>
  #endif
