From a233df5a38a8b1180b31285f005153f5c337e145 Mon Sep 17 00:00:00 2001 From: Kurt Miller Date: Sun, 2 Jun 2013 18:24:36 +0400 Subject: [PATCH] Register dynamic libraries via dl_iterate_phdr on OpenBSD * dyn_load.c (HAVE_DL_ITERATE_PHDR): Define for OpenBSD (with release date 2005.19 or later). --- dyn_load.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/dyn_load.c b/dyn_load.c index 246195d..5e077b5 100644 --- a/dyn_load.c +++ b/dyn_load.c @@ -80,12 +80,19 @@ STATIC GC_has_static_roots_func GC_has_static_roots = 0; # define ELFSIZE ARCH_ELFSIZE #endif +#if defined(OPENBSD) +# include +# if OpenBSD >= 200519 +# define HAVE_DL_ITERATE_PHDR +# endif +#endif /* OPENBSD */ + #if defined(SCO_ELF) || defined(DGUX) || defined(HURD) \ || (defined(__ELF__) && (defined(LINUX) || defined(FREEBSD) \ || defined(NETBSD) || defined(OPENBSD))) # include # if !defined(OPENBSD) && !defined(PLATFORM_ANDROID) - /* FIXME: Why we exclude it for OpenBSD? */ + /* OpenBSD does not have elf.h file; link.h below is sufficient. */ /* Exclude Android because linker.h below includes its own version. */ # include # endif -- 2.7.4