diff -r 7680dbf5cb3f Modules/_ctypes/libffi/configure --- a/Modules/_ctypes/libffi/configure Sat Apr 06 09:37:53 2013 +0200 +++ b/Modules/_ctypes/libffi/configure Tue Apr 30 00:10:33 2013 -0700 @@ -14505,10 +14505,10 @@ $as_echo_n "(cached) " >&6 else - libffi_cv_as_x86_pcrel=yes + libffi_cv_as_x86_pcrel=no echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s - if $CC $CFLAGS -c conftest.s 2>&1 | grep -i warning > /dev/null; then - libffi_cv_as_x86_pcrel=no + if $CC $CFLAGS -c conftest.s > /dev/null 2>&1; then + libffi_cv_as_x86_pcrel=yes fi fi diff -r 7680dbf5cb3f Modules/_ctypes/libffi/configure.ac --- a/Modules/_ctypes/libffi/configure.ac Sat Apr 06 09:37:53 2013 +0200 +++ b/Modules/_ctypes/libffi/configure.ac Tue Apr 30 00:10:33 2013 -0700 @@ -367,10 +367,10 @@ if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64; then AC_CACHE_CHECK([assembler supports pc related relocs], libffi_cv_as_x86_pcrel, [ - libffi_cv_as_x86_pcrel=yes + libffi_cv_as_x86_pcrel=no echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s - if $CC $CFLAGS -c conftest.s 2>&1 | grep -i warning > /dev/null; then - libffi_cv_as_x86_pcrel=no + if $CC $CFLAGS -c conftest.s > /dev/null 2>&1; then + libffi_cv_as_x86_pcrel=yes fi ]) if test "x$libffi_cv_as_x86_pcrel" = xyes; then diff -r 7680dbf5cb3f Modules/_ctypes/libffi/doc/libffi.info Binary file Modules/_ctypes/libffi/doc/libffi.info has changed diff -r 7680dbf5cb3f Modules/_ctypes/libffi/src/dlmalloc.c --- a/Modules/_ctypes/libffi/src/dlmalloc.c Sat Apr 06 09:37:53 2013 +0200 +++ b/Modules/_ctypes/libffi/src/dlmalloc.c Tue Apr 30 00:10:33 2013 -0700 @@ -457,6 +457,11 @@ #define LACKS_ERRNO_H #define MALLOC_FAILURE_ACTION #define MMAP_CLEARS 0 /* WINCE and some others apparently don't clear */ +#elif !defined _GNU_SOURCE +/* mremap() on Linux requires this via sys/mman.h + * See roundup issue 10309 + */ +#define _GNU_SOURCE 1 #endif /* WIN32 */ #ifdef __OS2__