Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Build bootctl and enable installation to inactive slot on Pixel devices #5134

Closed
wants to merge 3 commits into from

Conversation

capntrips
Copy link
Contributor

This adds the necessary sources from AOSP and builds the bootctl binary along with Magisk. I'm submitting this as a draft, as I imagine it would make more sense to move the individual libraries into repos (as is already done in the native module), port it from CMake to ndk-build, and merge it into the native module.

The sources for bootctl, jsoncpp, libbacktrace, libbase, libcutils, libcxx, libcxxabi, libdl, libfmq, libhidl, libhwbinder, liblog, libprocessgroup, libsystem, libutils, and libvndksupport are linked inline. The sources for android.hardware.boot@1.0, android.hardware.boot@1.1, android.hardware.boot@1.2, android.hidl.base@1.0, android.hidl.manager@1.0, android.hidl.manager@1.1, and android.hidl.manager@1.2 were generated by hidl-gen during the build process described in #4955.

I was unable to use the libcxx and libcxxabi submodule or NDK build from Magisk. This may be resolved by porting it from CMake to ndk-build. Someone with a better understanding of how linking shared objects works might be able to simplify the entire thing.

I limited the bootctl build to arm64-v8a for now, though I was able build binaries for armeabi-v7a, x86, and x86_64 in the AOSP build system. I made no attempt to build them with the submodule.

Closes #4955

@yujincheng08
Copy link
Collaborator

Try #5173

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Enabling installation to inactive slot on Pixel devices
2 participants