Mercurial > pub > dyncall > dyncall
changeset 388:c7c180c73dc9
- haiku dynload fix
author | Tassilo Philipp |
---|---|
date | Thu, 21 Jan 2021 19:50:31 +0100 |
parents | 11483966a3ee |
children | 51c93cdb5e21 |
files | dynload/dynload_unix.c |
diffstat | 1 files changed, 3 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/dynload/dynload_unix.c Thu Jan 21 17:27:02 2021 +0100 +++ b/dynload/dynload_unix.c Thu Jan 21 19:50:31 2021 +0100 @@ -162,8 +162,9 @@ /* - OpenBSD >= 3.7 has dl_iterate_phdr(), as well as glibc >= 2.2.4 - also some libc impls (like musl) provide dlinfo(), but not RTLD_SELF (see above), however they might come with dl_iterate_phdr (which comes from ELF program header iteration), so base it on that - - skip and use dladdr()-based guessing (see below) if explicitly requested, e.g. by ./configure */ -#elif !defined(DL_DLADDR_TO_LIBPATH) && (defined(OS_OpenBSD) || defined(DL_USE_GLIBC_ITER_PHDR) || (!defined(RTLD_SELF) && defined(__ELF__))) + - skip and use dladdr()-based guessing (see below) if explicitly requested, e.g. by ./configure + - Haiku/BeOS does have the headers but no implementation of dl_iterate_phdr() (at least as of 2021) */ +#elif !defined(DL_DLADDR_TO_LIBPATH) && (defined(OS_OpenBSD) || defined(DL_USE_GLIBC_ITER_PHDR) || (!defined(RTLD_SELF) && defined(__ELF__))) && !defined(OS_BeOS) #include <sys/types.h> #include <link.h>