Cleanup: Android: Do not redefine gettid
authorCharles Briere <charlesbriere.flatzo@gmail.com>
Mon, 2 Dec 2013 02:00:49 +0000 (18:00 -0800)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 2 Dec 2013 05:52:18 +0000 (06:52 +0100)
When compiling with Android Toolchain, gettid is already defined in
<unistd.h> and therefore doesn't need to be reimplemented. This patch
checks for gettid instead of looking for Android in case other
environements behave the same way.

Signed-off-by: Charles Briere <charlesbriere.flatzo@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
configure.ac
tests/common/thread-id.h

index b25685c0f0fd869dd4174c5bd8dfd83b8c3c629c..38e39e1115a0c71983d4f57c529ae8eec1325583 100644 (file)
@@ -56,7 +56,7 @@ AC_TYPE_SIZE_T
 # Checks for library functions.
 AC_FUNC_MALLOC
 AC_FUNC_MMAP
-AC_CHECK_FUNCS([bzero gettimeofday munmap sched_getcpu strtoul sysconf])
+AC_CHECK_FUNCS([bzero gettimeofday munmap sched_getcpu strtoul sysconf gettid])
 
 # Find arch type
 AS_CASE([$host_cpu],
index 72613333b2ab0ddb482a6fd486fb6c51a9d0ca9f..04db5bb5aa3d25fdc8120d5edc0053e6f6f409d6 100644 (file)
  * provided the above notices are retained, and a notice that the code was
  * modified is included with the above copyright notice.
  */
+#include <config.h>
+
 #ifdef __linux__
 # include <urcu/syscall-compat.h>
 
-# if defined(_syscall0)
+# if defined(HAVE_GETTID)
+/*
+ * Do not redefine gettid() as it is already included
+ * in bionic through <unistd.h>. Some other libc
+ * may also already contain an implementation of gettid.
+ */
+# elif defined(_syscall0)
 _syscall0(pid_t, gettid)
 # elif defined(__NR_gettid)
 static inline pid_t gettid(void)
@@ -42,11 +50,6 @@ unsigned long urcu_get_thread_id(void)
 {
        return (unsigned long) pthread_getthreadid_np();
 }
-#elif defined(__Android__)
-/*
- * Do not redefine gettid() as it is already included
- * in bionic through <unistd.h>.
- */
 #else
 # warning "use pid as thread ID"
 static inline
This page took 0.027733 seconds and 4 git commands to generate.