From 26311c107866ff0a547ff4923ade81c720d7d6f6 Mon Sep 17 00:00:00 2001 From: Jonathan Pryor Date: Mon, 19 Apr 2010 18:49:27 +0000 Subject: [PATCH] * include/private/gcconfig.h: Android platforms are built atop Linux, don't use glibc, and uses `environ` instead of `__environ`. * configure.in: Use AC_CHECK_LIB() to check for pthread instead of just blindly linking to -lpthread, as Android includes pthread support within libc and doesn't provide a separate libpthread. svn path=/trunk/mono/; revision=155747 --- libgc/ChangeLog | 8 ++++++++ libgc/configure.in | 2 +- libgc/include/private/gcconfig.h | 3 +++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/libgc/ChangeLog b/libgc/ChangeLog index b6235a28389..1b0db0230be 100644 --- a/libgc/ChangeLog +++ b/libgc/ChangeLog @@ -1,3 +1,11 @@ +2010-04-19 Jonathan Pryor + + * include/private/gcconfig.h: Android platforms are built atop Linux, + don't use glibc, and uses `environ` instead of `__environ`. + * configure.in: Use AC_CHECK_LIB() to check for pthread instead of + just blindly linking to -lpthread, as Android includes pthread + support within libc and doesn't provide a separate libpthread. + 2010-03-09 Zoltan Varga * include/private/gc_locks.h: Fix amd64 build with newer gcc's. diff --git a/libgc/configure.in b/libgc/configure.in index 2749d08b13b..2f7e173189b 100644 --- a/libgc/configure.in +++ b/libgc/configure.in @@ -84,7 +84,7 @@ case "$THREADS" in ;; posix | pthreads) THREADS=posix - THREADDLLIBS=-lpthread + AC_CHECK_LIB(pthread, pthread_self, THREADDLLIBS="-lpthread",,) case "$host" in x86-*-linux* | ia64-*-linux* | i386-*-linux* | i486-*-linux* | i586-*-linux* | i686-*-linux* | x86_64-*-linux* | alpha*-*-linux* | s390*-*-linux* | sparc*-*-linux* | powerpc-*-linux*) AC_DEFINE(GC_LINUX_THREADS) diff --git a/libgc/include/private/gcconfig.h b/libgc/include/private/gcconfig.h index 860195c857f..3d12de89232 100644 --- a/libgc/include/private/gcconfig.h +++ b/libgc/include/private/gcconfig.h @@ -710,6 +710,9 @@ # if defined(__GLIBC__)&& __GLIBC__>=2 # define SEARCH_FOR_DATA_START # else /* !GLIBC2 */ +# if defined(PLATFORM_ANDROID) +# define __environ environ +# endif extern char **__environ; # define DATASTART ((ptr_t)(&__environ)) /* hideous kludge: __environ is the first */ -- 2.11.4.GIT