[lldb_test_suite] Fix lldb test suite targeting remote Android
authorAlex Langford <apl@fb.com>
Tue, 9 Jul 2019 21:35:58 +0000 (21:35 +0000)
committerAlex Langford <apl@fb.com>
Tue, 9 Jul 2019 21:35:58 +0000 (21:35 +0000)
commit695f7821e2d90210ac93533393a0a028a4a08600
treefa05ab56dcc0eea278cc9b2a2e27b58bd7805ff3
parentba9eb48318420802d7e42592f45ad443044a4b90
[lldb_test_suite] Fix lldb test suite targeting remote Android

Summary:
Fixed `Android.rules` for running test suite on remote android
- the build configuration is not compatible with ndk structure, change it to link to static libc++
- generally clang should be able to use libc++ and will link against the right library, but some libc++ installations require the user manually link libc++abi.
- add flag `-lc++abi` to fix the test binary build failure

Added `skipIfTargetAndroid` `skipUnlessTargetAndroid` for better test support
- the `skipIfPlatform` method will ask `lldbplatformutil.getPlatform()` for platform info which is actually the os type, and //Android// is not os type but environment
- create this function to handle the android target condition

**To Run Test on Remote Android**
1 start lldb-server on your devices
2 run lldb-dotest with following configuration:
`./lldb-dotest --out-of-tree-debugserver --arch aarch64 --platform-name remote-android --platform-url connect://localhost:12345 --platform-working-dir /data/local/tmp/ --compiler your/ndk/clang`

Reviewers: xiaobai, labath

Reviewed By: labath

Subscribers: labath, javed.absar, kristof.beyls, srhines, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D64118

llvm-svn: 365561
lldb/packages/Python/lldbsuite/test/android/platform/TestDefaultCacheLineSize.py
lldb/packages/Python/lldbsuite/test/decorators.py
lldb/packages/Python/lldbsuite/test/make/Android.rules