-
Notifications
You must be signed in to change notification settings - Fork 24.9k
Refactor Extract Headers and JNI from AARs to an internal task #32426
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…lugin Summary: While working on the NDK AGP Apis, I realized the the `applyAppPlugin` is accessed too early inside the Gradle plugin. Specifically is accessed once the plugin is applied, and the extension is not configured afterwards. This means that the extension is always set the default values. I'm fixing it moving it inside the `project.afterEvaluate` that was already need to access the variant informations. Changelog: [Internal] [Changed] - Fix applyAppPlugin being accessed too early in the React App Gradle Plugin Differential Revision: D31652984 fbshipit-source-id: 61da67b92aa4a272db94a9f7627d74c2a95c124f
Summary: While working on the NDK AGP Api I realized that the `enableVmCleanup` function, that is supposed to cleanup the extra `.so` files from the final artifacts, is broken for apps with variants. Specifically say for a `liteDebug` app it tries to search for `.so` files inside: ``` intermediates/stripped_native_libs/lite/debug/out/lib ``` while the `.so` files are located inside: ``` intermediates/stripped_native_libs/liteDebug/out/lib ``` I've fixed changing the token of the path from `targetPath` to `variant.name` Changelog: [Android] [Fixed] - Fix enableVmCleanup not working for apps with product flavors Differential Revision: D31654704 fbshipit-source-id: ba7dbc74a7b83eebb136c77e1827ac1a7d1f49ae
Summary: This diff refactors the `prepareGlog` task to a separate Gradle task in the `.internal` package. The reason for this change is that `prepareGlog` was defining a `doLast` action and would result in being invalidated whenever the `build.gradle` file would change. This means that the Glog headers/source files would have been extracted again, effectively invalidating the timestamps for the native build. Changelog: [Internal] [Changed] - Export prepareGlog to an internal task Differential Revision: D31661668 fbshipit-source-id: c4ec8a25602a7fcc36c31428d796d6257687f071
Summary: This diff refactors the `prepareLibevent` task to a separate Gradle task in the `.internal` package. The reason for this change is that `prepareLibevent` was defining a `doLast` action and would result in being invalidated whenever the `build.gradle` file would change. This means that the Libevent headers/source files would have been extracted again, effectively invalidating the timestamps for the native build. Changelog: [Internal] [Changed] - Export prepareLibevent to an internal task Differential Revision: D31661988 fbshipit-source-id: 76b4cb6c689c3f7e577a9db4eaca4427da36a353
Summary: This diff refactors the `prepareBoost` task to a separate Gradle task in the `.internal` package. The reason for this change is that `prepareBoost` was defining a `doLast` action and would result in being invalidated whenever the `build.gradle` file would change. This means that the Boost headers/source files would have been extracted again, effectively invalidating the timestamps for the native build. Changelog: [Internal] [Changed] - Export prepareBoost to an internal task Differential Revision: D31662120 fbshipit-source-id: 0f92928a89b351812d12769f860ce13e879b9c12
Summary: This diff refactors the `prepareJSC` task to a separate Gradle task in the `.internal` package. The reason for this change is that `prepareJSC` was just a plain `Task` and not a `Copy` task. It was defining a top level `doLast` action and would result in being invalidated whenever the `build.gradle` file would change. This means that the JSC headers/source files would have been extracted again, effectively invalidating the timestamps for the native build. Changelog: [Internal] [Changed] - Export prepareJSC to an internal task Differential Revision: D31682293 fbshipit-source-id: 9e1b340da7bc4c914342dc095d91acb555853856
Summary: This diff refactors the extractHeader and extractJni tasks to a single Gradle task in the `.internal` package. The reason for this change is that those two tasks were always running, therefore invalidating the whole native build cache. Changelog: [Internal] [Changed] - Refactor Extract Headers and JNI from AARs to an internal task Reviewed By: mdvacca, ShikaSD Differential Revision: D31682942 fbshipit-source-id: 4c90b7fc26e9a34508ccd7923c35fd0b15a79183
|
This pull request was exported from Phabricator. Differential Revision: D31682942 |
|
|
PR build artifact for eed5143 is ready. |
Base commit: dfe42d6 |
Base commit: dfe42d6 |
|
This pull request has been merged in bc93fef. |
Summary:
This diff refactors the extractHeader and extractJni tasks to a single Gradle task in the
.internalpackage.The reason for this change is that those two tasks were always running, therefore invalidating the
whole native build cache.
Changelog:
[Internal] [Changed] - Refactor Extract Headers and JNI from AARs to an internal task
Reviewed By: mdvacca, ShikaSD
Differential Revision: D31682942