blob: 221101d0b7ef569333fc07317d603ed0c951008a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
--- ghc/rts/Linker.c.orig Tue Dec 16 17:58:26 2003
+++ ghc/rts/Linker.c Tue Jan 13 16:47:50 2004
@@ -10,6 +10,12 @@
#if 0
#include "PosixSource.h"
#endif
+
+// Linux needs _GNU_SOURCE to get RTLD_DEFAULT from <dlfcn.h>.
+#ifdef __linux__
+#define _GNU_SOURCE
+#endif
+
#include "Rts.h"
#include "RtsFlags.h"
#include "HsFFI.h"
@@ -694,7 +700,11 @@
# endif
# if defined(OBJFORMAT_ELF) || defined(OBJFORMAT_MACHO)
+# if defined(RTLD_DEFAULT)
+ dl_prog_handle = RTLD_DEFAULT;
+# else
dl_prog_handle = dlopen(NULL, RTLD_LAZY);
+# endif // RTLD_DEFAULT
# endif
}
|