This patch fixes the build of adb on linux. It was taken from archlinux. diff --git a/adb/sysdeps.h b/adb/sysdeps.h index 75dcc86..867f3ec 100644 --- a/adb/sysdeps.h +++ b/adb/sysdeps.h @@ -25,6 +25,7 @@ #endif #include +#include #include #include @@ -831,7 +832,16 @@ static __inline__ int adb_is_absolute_host_path(const char* path) { static __inline__ unsigned long adb_thread_id() { - return (unsigned long)gettid(); + // TODO: this function should be merged with GetThreadId +#if defined(__BIONIC__) + return gettid(); +#elif defined(__APPLE__) + return syscall(SYS_thread_selfid); +#elif defined(__linux__) + return syscall(__NR_gettid); +#elif defined(_WIN32) + return GetCurrentThreadId(); +#endif } #endif /* !_WIN32 */ diff --git a/base/errors_unix.cpp b/base/errors_unix.cpp index 296995e..48269b6 100644 --- a/base/errors_unix.cpp +++ b/base/errors_unix.cpp @@ -17,6 +17,7 @@ #include "android-base/errors.h" #include +#include namespace android { namespace base { diff --git a/base/file.cpp b/base/file.cpp index da1adba..91a3901 100644 --- a/base/file.cpp +++ b/base/file.cpp @@ -20,6 +20,7 @@ #include #include #include +#include #include diff --git a/base/logging.cpp b/base/logging.cpp index 1741871..e97c7f1 100644 --- a/base/logging.cpp +++ b/base/logging.cpp @@ -21,6 +21,7 @@ #include "android-base/logging.h" #include +#include // For getprogname(3) or program_invocation_short_name. #if defined(__ANDROID__) || defined(__APPLE__)