bugsnag / bugsnag-android-gradle-plugin

Gradle plugin for BugSnag which uploads ProGuard, DexGuard and NDK mapping files, and sends build notifications
https://docs.bugsnag.com/build-integrations/gradle/
MIT License
70 stars 38 forks source link

Use `objcopy` instead of `objdump` when configured #475

Closed lemnik closed 2 years ago

lemnik commented 2 years ago

Goal

When using NDK 23 and higher we should be able to use llvm-objcopy instead of objdump to generate our symbol files.

Design

Abstracted the work of SharedObjectMappingFileFactory into a new AbstractSoMappingTask which provides a template structure for all tasks that generate mappings for .so files. The new task also decides whether to use objdump or llvm-objcopy based on its configuration.

Testing

Manually tested. Automated testing will be added once the new upload endpoint is introduced to the upload tasks.

One new end-to-end test to ensure that the SDK version validation works as expected