From d858487eddc6947db4b764f747b756e0413bad00 Mon Sep 17 00:00:00 2001 From: Tamas Berghammer Date: Fri, 6 Feb 2015 10:57:40 +0000 Subject: [PATCH] Fix build of lldb-gdbserver and lldb-platform for android (arm32, x86) * Fix cmake script for android x86 * Reorder includes to avoid collision between system macros and local variables in clang framework Differential Revision: http://reviews.llvm.org/D7435 llvm-svn: 228388 --- lldb/cmake/platforms/Android.cmake | 2 +- .../Process/Linux/NativeProcessLinux.cpp | 32 +++++++++---------- .../Plugins/Process/Linux/ProcessMonitor.cpp | 30 ++++++++--------- 3 files changed, 30 insertions(+), 34 deletions(-) diff --git a/lldb/cmake/platforms/Android.cmake b/lldb/cmake/platforms/Android.cmake index 816453f61390..f0b5c7a047ba 100644 --- a/lldb/cmake/platforms/Android.cmake +++ b/lldb/cmake/platforms/Android.cmake @@ -41,7 +41,7 @@ set( __ANDROID_NDK__ True ) set( ANDROID_ABI "${ANDROID_ABI}" CACHE INTERNAL "Android Abi" FORCE ) if( ANDROID_ABI STREQUAL "x86" ) set( CMAKE_SYSTEM_PROCESSOR "i686" ) - set( ANDROID_TOOLCHAIN_NAME "x86-linux-android" ) + set( ANDROID_TOOLCHAIN_NAME "i686-linux-android" ) elseif( ANDROID_ABI STREQUAL "x86_64" ) set( CMAKE_SYSTEM_PROCESSOR "x86_64" ) set( ANDROID_TOOLCHAIN_NAME "x86_64-linux-android" ) diff --git a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp index 99de1938e2e0..a72b6a24063a 100644 --- a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp +++ b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp @@ -17,23 +17,6 @@ #include #include #include -#include -#if defined(__ANDROID_NDK__) && defined (__arm__) -#include -#include -#else -#include -#include -#endif -#ifndef __ANDROID__ -#include -#endif -#include -#include -#include -#include -#include -#include #if defined (__arm64__) || defined (__aarch64__) // NT_PRSTATUS and NT_FPREGSET definition @@ -69,6 +52,21 @@ #include "ThreadStateCoordinator.h" #include "Plugins/Process/POSIX/ProcessPOSIXLog.h" +// System includes - They have to be included after framework includes because they define some +// macros which collide with variable names in other modules +#include +#ifndef __ANDROID__ +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include + #ifdef __ANDROID__ #define __ptrace_request int #define PT_DETACH PTRACE_DETACH diff --git a/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp b/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp index e87e6626852a..81eb4d634a75 100644 --- a/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp +++ b/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp @@ -16,22 +16,6 @@ #include #include #include -#if defined(__ANDROID_NDK__) && defined (__arm__) -#include -#include -#else -#include -#include -#endif -#ifndef __ANDROID__ -#include -#endif -#include -#include -#include -#include -#include -#include // C++ Includes // Other libraries and framework includes @@ -52,6 +36,20 @@ #include "Plugins/Process/POSIX/ProcessPOSIXLog.h" #include "ProcessMonitor.h" +// System includes - They have to be included after framework includes because they define some +// macros which collide with variable names in other modules +#ifndef __ANDROID__ +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include + #ifdef __ANDROID__ #define __ptrace_request int #define PT_DETACH PTRACE_DETACH