diff options
author | digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2012-08-21 14:34:48 +0000 |
---|---|---|
committer | digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2012-08-21 14:34:48 +0000 |
commit | 62d486be7c8b6e866c3104b6e8170e69db0a95f1 (patch) | |
tree | 4ed041798986544b35a38edb49af042e49e0b8f9 /src/client/linux/minidump_writer | |
parent | Fix Android build. (diff) | |
download | breakpad-62d486be7c8b6e866c3104b6e8170e69db0a95f1.tar.xz |
Improve Android support
This patch remove many Android-specific #ifdefs from the Breakpad
source code. This is achieved by providing "fixed-up" platform
headers (e.g. <signal.h> or <sys/user,h>), in the new directory
src/common/android/include/, which masks differences between
the NDK and GLibc headers.
The old "android_link.h" and "android_ucontext.h" are moved
and renamed.
This also requires putting this directory as the first
include path during Android-hosted builds, hence the
modification of Makefile.am and configure.ac
Review URL: https://breakpad.appspot.com/434002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1017 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/client/linux/minidump_writer')
-rw-r--r-- | src/client/linux/minidump_writer/linux_dumper.h | 22 | ||||
-rw-r--r-- | src/client/linux/minidump_writer/linux_ptrace_dumper.cc | 2 | ||||
-rw-r--r-- | src/client/linux/minidump_writer/minidump_writer.cc | 8 |
3 files changed, 0 insertions, 32 deletions
diff --git a/src/client/linux/minidump_writer/linux_dumper.h b/src/client/linux/minidump_writer/linux_dumper.h index 42b2a991..0fca9937 100644 --- a/src/client/linux/minidump_writer/linux_dumper.h +++ b/src/client/linux/minidump_writer/linux_dumper.h @@ -42,9 +42,7 @@ #include <linux/limits.h> #include <stdint.h> #include <sys/types.h> -#if !defined(__ANDROID__) #include <sys/user.h> -#endif #include "common/memory.h" #include "google_breakpad/common/minidump_format.h" @@ -57,23 +55,7 @@ typedef typeof(((struct user*) 0)->u_debugreg[0]) debugreg_t; // Typedef for our parsing of the auxv variables in /proc/pid/auxv. #if defined(__i386) || defined(__ARM_EABI__) -#if !defined(__ANDROID__) typedef Elf32_auxv_t elf_aux_entry; -#else -// Android is missing this structure definition -typedef struct -{ - uint32_t a_type; /* Entry type */ - union - { - uint32_t a_val; /* Integer value */ - } a_un; -} elf_aux_entry; - -#if !defined(AT_SYSINFO_EHDR) -#define AT_SYSINFO_EHDR 33 -#endif -#endif // __ANDROID__ #elif defined(__x86_64) typedef Elf64_auxv_t elf_aux_entry; #endif @@ -104,12 +86,8 @@ struct ThreadInfo { #elif defined(__ARM_EABI__) // Mimicking how strace does this(see syscall.c, search for GETREGS) -#if defined(__ANDROID__) - struct pt_regs regs; -#else struct user_regs regs; struct user_fpregs fpregs; -#endif // __ANDROID__ #endif }; diff --git a/src/client/linux/minidump_writer/linux_ptrace_dumper.cc b/src/client/linux/minidump_writer/linux_ptrace_dumper.cc index 2647801c..5591067a 100644 --- a/src/client/linux/minidump_writer/linux_ptrace_dumper.cc +++ b/src/client/linux/minidump_writer/linux_ptrace_dumper.cc @@ -186,11 +186,9 @@ bool LinuxPtraceDumper::GetThreadInfoByIndex(size_t index, ThreadInfo* info) { return false; } -#if !defined(__ANDROID__) if (sys_ptrace(PTRACE_GETFPREGS, tid, NULL, &info->fpregs) == -1) { return false; } -#endif #if defined(__i386) if (sys_ptrace(PTRACE_GETFPXREGS, tid, NULL, &info->fpxregs) == -1) diff --git a/src/client/linux/minidump_writer/minidump_writer.cc b/src/client/linux/minidump_writer/minidump_writer.cc index fefef1d2..e3eb6c34 100644 --- a/src/client/linux/minidump_writer/minidump_writer.cc +++ b/src/client/linux/minidump_writer/minidump_writer.cc @@ -50,17 +50,13 @@ #include <ctype.h> #include <errno.h> #include <fcntl.h> -#if !defined(__ANDROID__) #include <link.h> -#endif #include <stdio.h> #if defined(__ANDROID__) #include <sys/system_properties.h> #endif -#if !defined(__ANDROID__) #include <sys/ucontext.h> #include <sys/user.h> -#endif #include <sys/utsname.h> #include <unistd.h> @@ -69,10 +65,6 @@ #include "client/minidump_file_writer.h" #include "google_breakpad/common/minidump_format.h" -#if defined(__ANDROID__) -#include "client/linux/android_link.h" -#include "client/linux/android_ucontext.h" -#endif #include "client/linux/handler/exception_handler.h" #include "client/linux/minidump_writer/line_reader.h" #include "client/linux/minidump_writer/linux_dumper.h" |