Commit 1e82e1cda43dacd8b6ab2d9ac4db33523d86f5dc

Berker Peksag 2016-03-07T18:38:10

Define _GNU_SOURCE on Linux for mremap() This was committed to CPython's libffi copy in https://bugs.python.org/issue10309 mremap() documentation says _GNU_SOURCE needs to be defined in order to use mremap(): see the synopsis section at http://linux.die.net/man/2/mremap Original commit: https://hg.python.org/cpython/rev/9986fff720a2 Original patch was written by Hallvard B Furuseth.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
diff --git a/src/dlmalloc.c b/src/dlmalloc.c
index 7e4ea83..d63dd36 100644
--- a/src/dlmalloc.c
+++ b/src/dlmalloc.c
@@ -438,6 +438,11 @@ DEFAULT_MMAP_THRESHOLD       default: 256K
 
 */
 
+#if defined __linux__ && !defined _GNU_SOURCE
+/* mremap() on Linux requires this via sys/mman.h */
+#define _GNU_SOURCE 1
+#endif
+
 #ifndef WIN32
 #ifdef _WIN32
 #define WIN32 1