• Home
  • History
  • Annotate
  • only in /external/google-breakpad/src/common/android/
History log of /external/google-breakpad/src/common/android/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
dbb392886ffce4fd927b826080b4faff49965f10 24-Aug-2015 Gordana Cmiljanovic <Gordana.Cmiljanovic@imgtec.com> MIPS64: Initial MIPS64 related change.

CHERRY-PICKED FROM:
https://code.google.com/p/google-breakpad/source/detail?r=1446

With this change Breakpad can be compiled for MIPS64,
but it is not yet functional.

Review URL: https://breakpad.appspot.com/6824002

Change-Id: I95c58b6b2ffc9ba98d3fe29f1a9f6b12fff02479
reakpad_getcontext.S
esting/include/wchar.h
context_constants.h
720f288b99ba0d1da445102064bb03f8e21d73b3 08-Jul-2015 Ryo Hashimoto <hashimoto@google.com> Remove user_fpxregs_struct typedef to fix x86 build

Change-Id: Ia08334726acb0d2524b071a8bb46ecf5298ed3a3
(cherry picked from commit 40177b22b4c2b0f1e1a40189f728e410a23a9de2)
nclude/sys/user.h
a92995b73c2e41eb8f375999eda7cb13daf89840 22-Jun-2015 Ryo Hashimoto <hashimoto@google.com> Make external/google-breakpad buildable

Add Android.mk for a static library "breakpad_client"
Remove unneeded src/common/android/include/link.h which is only needed to build the code with public NDK

Bug: 21953223
Change-Id: I3c9ff23ab628bd1ef124739c0a8a9f1ba3b7fa6d
(cherry picked from commit 7e61ab71172b9e0d477f16a5e3b3ec32f866d1a6)
nclude/link.h
2689830e5de88f493202efda1dcf48e6f0a0d026 16-Mar-2015 primiano@chromium.org <primiano@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix compatibility with Android NDK r10d.

This is a reland of the previous CL (r1433). r1433 did not achieve what
intended and failed the x86_64 build of Chrome with NDK r10c.
The workaround logic in this CL is identical to r1433, but the #define
magic is applied in a more appropriate proper place this time. Turns
out Breakpad already has an Android compatibility layer, which is
common/android/include. Piggybacking the fix there.

BUG=breakpad:642
R=fdegans@chromium.org, rmcilroy@chromium.org

Review URL: https://breakpad.appspot.com/3794002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1434 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/user.h
d137bc12eed58d99005823d223af8b43673b737a 24-Oct-2014 primiano@chromium.org <primiano@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix breakpad on mips and x86_64 for the NDK r10c update.

This change introduces the necessary glue typedefs to deal with the
mismatch introduced by the latest Android NDK (w.r.t. desktop Linux):
- [x86_64] Rename fpregs mxcr_mask -> .mxcsr_mask
- [mips] uc_mcontext.fpregs.fp_r.fp_dregs -> uc_mcontext.fpreg
- [mips] restore the forked user.h

Submitting this on behalf of fdegans@chromium.org

TBR=mark@chromium.org

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1397 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/user.h
context_constants.h
d2f5693d75cfb179e79ca61e600292a77686b9d5 21-Oct-2014 primiano@chromium.org <primiano@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Update breakpad to support Android NDK r10c

Prior to NDK r10c, Breakpad was privately backporting these system
headers. This change is now unforking and removing those headers and
using the ones from the NDK.
Rationale:
- They are finally available in the NDK, so there is no need to keep
maintaining a fork (which was necessary up until recently to support
arm64).
- These forked headers, as they are today, are not compatible with the
latest NDK (i.e. this change is required to roll NDK r10c).
The forked ucontext.h, being removed by this CL, depends on some
transitional features which are not compatible with the NDK release
being targeted here.

After this change, the NDK r10c is now required to build Breakpad on
Android. Note that NDK releases are backwards compatible and contain all
the previous API levels, so this change is NOT effectively enforcing to
build against any particular Android SDK.

Submitting this on behalf of fdegans@chromium.org

BUG=chromium:358831
R=mark@chromium.org, primiano@chromium.org, rmcilroy@chromium.org

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1396 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/ucontext.h
nclude/sys/user.h
9598a474a115c8f254b24313770c3dc9e8b9ae0c 21-Oct-2014 primiano@chromium.org <primiano@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Revert "Remove unecessary headers following NDK r10c update."

This reverts r1394.
Reason for the revert: r1394 is breaking compatibility with previous
NDK (< r10c).

BUG=chromium:358831
R=rmcilroy@chromium.org

Review URL: https://breakpad.appspot.com/6754003

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1395 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/ucontext.h
nclude/sys/user.h
1531048c9578de515d8b738053d4a713276e5c2d 21-Oct-2014 primiano@chromium.org <primiano@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Remove unecessary headers following NDK r10c update.

BUG=chromium:358831
R=primiano@chromium.org, rmcilroy@chromium.org

Review URL: https://breakpad.appspot.com/10694002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1394 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/ucontext.h
nclude/sys/user.h
208f106151dbae37bb723671dfa4348332a149a6 14-May-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix minor typo in a comment in r1331.

R=qsr@google.com

Review URL: https://breakpad.appspot.com/3674002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1332 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/user.h
f3e253e3dfbd7b73b4a1c450d1dac7873c411b83 14-May-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix x86_64 Android build after user_fpregs_struct was added to /sys/user.h in newer NDKs

BUG=346626
TBR=mark@chromium.org

Review URL: https://breakpad.appspot.com/2694002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1331 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/user.h
032cbb80abf2e8adce5c8cc906a3fde0e20a23c6 14-May-2014 gordana.cmiljanovic@imgtec.com <gordana.cmiljanovic@imgtec.com@4c0a9323-5329-0410-9bdc-e9ce6186880e> [MIPS] Fix core dump related unit tests for Android on MIPS

This change fixes failing unittests in Android on MIPS:
LinuxCoreDumperTest.VerifyDumpWithMultipleThreads
ElfCoreDumpTest.ValidCoreFile

BUG=None
TEST=Running breakpad_unittests on MIPS Android device

Review URL: https://breakpad.appspot.com/3664002



git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1330 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/procfs.h
nclude/sys/user.h
b46eff40c6afbb15033b488fb4ccdb6411b04094 15-Apr-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Update offset of fpregs_mem.

Based on testing in the emulator.

BUG=346626
R=thestig@chromium.org

Review URL: https://breakpad.appspot.com/1544002

Patch from Anton Carver <anton@chromium.org>.

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1312 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/ucontext.h
context_constants.h
4051c66c911592634758a3504645c9845d2d2290 11-Apr-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Add x64 version of getcontext.

Assembly code is derived in part from code in libunwind.
Code tested on desktop linux (Android testing pending emulation
support).

BUG=346626
R=dannyb@google.com, thestig@chromium.org

Review URL: https://breakpad.appspot.com/1454002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1311 4c0a9323-5329-0410-9bdc-e9ce6186880e
reakpad_getcontext.S
reakpad_getcontext_unittest.cc
nclude/sys/ucontext.h
nclude/sys/user.h
context_constants.h
4cad4cec53f206061f195aa9dcde7f504d69cd3f 09-Apr-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix aarch64 ucontext layout on Android

BUG=354405,335641
R=mark@chromium.org

Review URL: https://breakpad.appspot.com/1444002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1306 4c0a9323-5329-0410-9bdc-e9ce6186880e
reakpad_getcontext.S
reakpad_getcontext_unittest.cc
nclude/sys/ucontext.h
context_constants.h
3ea0c724671440a5e19e2ca9caa6d13d84c2b809 08-Apr-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Add Arm64 support to breakpad unittests.

BUG=354405,335641
R=mark@chromium.org

Review URL: https://breakpad.appspot.com/1424002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1305 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/sys/procfs.h
b8c5896ddca70d6926083bba0aebf860e5a3b291 03-Apr-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Add Arm64 version of breakpad_getcontext for Android.

This CL adds breakpad_getcontext support for Arm64 to Android. The assembly
is based on getcontext.S in glibc.

BUG=354405,335641
R=mark@chromium.org

Review URL: https://breakpad.appspot.com/1384002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1302 4c0a9323-5329-0410-9bdc-e9ce6186880e
reakpad_getcontext.S
context_constants.h
2eedc625759a8943d72711769a84fce05a23ecd0 03-Apr-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> First cut at adding arm64 Linux / Android support to Breakpad.

This is an initial attempt to add Arm64 (aarch64) support to Breakpad for
Linux / Android platforms. This CL adds the Arm64 data structures, but does
not yet implement the Android getcontext support or CPUFillFromThreadInfo /
CPUFillFromUContext.

BUG=354405,335641
R=mark@chromium.org

Review URL: https://breakpad.appspot.com/1354002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1301 4c0a9323-5329-0410-9bdc-e9ce6186880e
reakpad_getcontext.S
nclude/elf.h
nclude/link.h
nclude/sys/procfs.h
nclude/sys/ucontext.h
nclude/sys/user.h
context_constants.h
fe6829e24ea677192e32c3f2d04ff10898a1ef02 03-Apr-2014 rmcilroy@chromium.org <rmcilroy@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Remove some unecessary Android system header definitions.

Newer NDKs include some additional headers needed by Breakpad, so we can remove these redefinitions.

BUG=358831,335641,354405
R=mark@chromium.org

Review URL: https://breakpad.appspot.com/1374002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1300 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/link.h
nclude/sgidefs.h
nclude/sys/stat.h
6fab71bf48984ba57cde91f32ecb43645abd0f52 13-Dec-2013 digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Misc Android-related fixes.

- src/common/android/testing/mkdtemp.h:
Fixes a compilation error when using the (recent) NDK r9b,
see comments in the source file for details.

- android/test-driver, Makefile.am, Makefile.in:
Autotools 1.12 changed the way tests are run during "make check"
so add a new "custom test driver" to run tests on Android, and
modify Makefile.am / Makefile.in accordingly. Otherwise,
'make check' tried to run the tests on the host.

- android/test-shell.sh:
Allow several tests to run in parallel on the device, by
creating a custom test directory for each test process.
This allows running "make check -j8" reliably.

- src/common/linux/file_id_unittest.cc:
Disable the SelfStrip test on Android, since it assumes a 'strip'
executable is available on the target system where the test runs.

BUG=NONE
R=mark@chromium.org, ted.mielczarek@gmail.com
TEST=android/run-checks.sh --ndk-dir=/path/to/android-ndk-r9b

Review URL: https://breakpad.appspot.com/904003

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1259 4c0a9323-5329-0410-9bdc-e9ce6186880e
esting/mkdtemp.h
8c88c3e5233bf798426121d4606a7afd5b7e6afa 25-Sep-2013 digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix the Android/MIPS build.

This patch fixes the build for Android on MIPS when
using the latest official Android NDK (r9):

- Update src/common/android/include/elf.h to add a missing
definition for SHT_MIPS_DWARF.

- Add src/common/android/include/sgidefs.h required by LSS
when compiling for MIPS.

- Update android/run-checks.sh to work properly with
the --abi=mips option. All tests were passed succesfully
with an emulator system image running Android 4.2.

- Update other Android-specific files.

R=Petar.Jovanovic@imgtec.com, mark@chromium.org

Review URL: https://breakpad.appspot.com/633002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1216 4c0a9323-5329-0410-9bdc-e9ce6186880e
nclude/elf.h
nclude/sgidefs.h
faa2e5b56ea0148257e9610fe58e7305b407ba52 25-Sep-2013 gordana.cmiljanovic@imgtec.com <gordana.cmiljanovic@imgtec.com@4c0a9323-5329-0410-9bdc-e9ce6186880e> Adding mips support for Android.

Mips linux support has been added previously in r1212. Some additional changes
are required to make breakpad functional on Android.

BUG=none
TEST=build, unittests, chrome test application

Review URL: https://breakpad.appspot.com/632002



git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1215 4c0a9323-5329-0410-9bdc-e9ce6186880e
reakpad_getcontext.S
reakpad_getcontext_unittest.cc
nclude/sys/ucontext.h
nclude/sys/user.h
context_constants.h
5360c862b45ee77c6b06fc1bd58aadbb23254f8b 01-Feb-2013 ted.mielczarek@gmail.com <ted.mielczarek@gmail.com@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix some issues with -Werror=sign-compare on Android builds
R=digit at https://breakpad.appspot.com/524002/

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1110 4c0a9323-5329-0410-9bdc-e9ce6186880e
reakpad_getcontext_unittest.cc
esting/mkdtemp.h
206beeec5eea3e6df7f8816107bfa52ab03ad6a5 04-Oct-2012 digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix minor Android build failure with Clang.
Review URL: https://breakpad.appspot.com/478003

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1060 4c0a9323-5329-0410-9bdc-e9ce6186880e
esting/pthread_fixes.h
979d8f4dcba8a94b25772e2966125202fb664959 31-Aug-2012 digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Add custom getcontext() implementation for Android.

This adds a minimalistic implementation of getcontext()
for Android/ARM and Android/x86. The provided code is
in assembly and only implements the bare minimum required
by Breakpad to get the current processor state.

Note that:

- The FPU state is not saved to the ucontext_t on ARM.
(that's actually the main difference with a normal
getcontext() implementation).

This is normal. On Linux/ARM, such state must be
obtained with PTRACE_GETVFPREGS instead. This will
be implemented in a future patch.

- On x86, only the 'regular' FPU state is saved, to
mimic the GLibc/i386 implementation. The state of
SSE/SSE2/etc registers is not part of the upstream
getcontext() implementation.
Review URL: https://breakpad.appspot.com/444002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1024 4c0a9323-5329-0410-9bdc-e9ce6186880e
reakpad_getcontext.S
reakpad_getcontext_unittest.cc
nclude/sys/ucontext.h
nclude/ucontext.h
context_constants.h
4ac3c240983991b6358baad732e2fbe3fd4f7245 23-Aug-2012 digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> Fix Breakpad unit tests build for Android.

This patch contains the source-related fixes to ensure that
the Breakpad unit tests build properly when targetting Android.

Calling 'make check' still fails because there is still no
way to run the unit test programs on a device. This will be
addressed by a future patch.

Important notes:

- You must target Android API level 9 (Gingerbread) or higher
to build the unit tests. This requirement is due to the
current GTest revision used in the breakpad source tree.

- This patch adds headers providing inlined C library functions
missing from the NDK (see src/common/android/testing). They
are inlined to avoid modifying Makefile.am and other build
files.

- Similarly, the <wchar.h> header-fix under
src/common/android/testing/include is only required by
GTest's current revision. E.g. it's not needed when building
Breakpad as part of Chromium which uses a more up-to-date
revision.
Review URL: https://breakpad.appspot.com/439002

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1020 4c0a9323-5329-0410-9bdc-e9ce6186880e
esting/include/wchar.h
esting/mkdtemp.h
esting/pthread_fixes.h
ed58167cd13de4fed684dcd70dd2570ec98530ce 21-Aug-2012 digit@chromium.org <digit@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> 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
nclude/elf.h
nclude/link.h
nclude/stab.h
nclude/sys/procfs.h
nclude/sys/signal.h
nclude/sys/stat.h
nclude/sys/ucontext.h
nclude/sys/user.h
nclude/ucontext.h