-
Notifications
You must be signed in to change notification settings - Fork 538
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Xamarin.Android.Build.Tasks] Bundle Profiled AOT-required NDK tools (#…
…3317) Fixes: #3299 Profiled AOT (6e88ffa) requires a handful of things to work: 1. The mono cross-compilers, and 2. Various Android NDK tools such as `as` (assembler), `ld` (linker), and `strip`. As of decfbcc, Xamarin.Android *already* redistributes `as`. Update `make prepare` and installer creation so that Xamarin.AndroidAotMode also redistributes `ld` and `strip` for all supported ABIs. This has two benefits: 1. Profiled AOT and "normal" AOT use will not require that the full Android NDK be installed. 2. Redistribution helps "firewall" the binaries for macOS Catalina. The full Android NDK is a ~700-800MB download (r19c is 770MB, r20 is 804MB) and ~3GB extracted/installed, while adding `ld` and `strip` to our installation only increases the `.pkg` size by ~8MB and installation size by ~20MB. (`as` is already installed.) Redistribution of `ld` and `strip` thus makes it much easier for customers to use AOT. **Note**: AOT+LLVM (`$(AndroidAotMode)` != None *and* `$(EnableLLVM)`=True) still requires a full NDK. Finally, macOS Catalina is [removing support for 32-bit apps][0]. The Android NDK r8d and earlier provide 32-bit binaries for some (all?) of these utilities, and thus they won't work on the forthcoming macOS 10.15 Catalina release. The [NDK r8e][1] release notes state: > Added 64-bit host toolchain set (package name suffix *-x86_64.*). > For more information, see `CHANGES.HTML` and `NDK-BUILD.html`. Including these utilities thus removes a partial dependency on the installed Android NDK, which should increase the likelihood of successful Profiled AOT use on macOS Catalina. [0]: https://support.apple.com/en-us/HT208436 [1]: https://developer.android.com/ndk/downloads/revision_history
- Loading branch information
1 parent
7c5d475
commit f0b1e8a
Showing
10 changed files
with
59 additions
and
15 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters