adb: `adbd` uses shared libraries.
This CL builds the former `libadbd` as a shared library, and moves `adbd` to using shared libraries. We can't switch `libadbd` from static to shared library directly, due to the circular dependency between `libadbd` and `adbd`. In particular, daemon_service_to_fd() can't be compiled into `libadbd`, as it needs to be overridden by recovery/minadbd. This CL creates a static library `libadbd_core` as the common base, which contains everything from the former `libadbd`. Both of the two shared library targets `libadbd` and `libadbd_services` depend on `libadbd_core`. The `adbd` on device (under both of normal boot and recovery) now depends on `libadbd.so` and `libadbd_services.so`. recovery/minadbd will depend on `libadbd.so` and `libminadbd_services.so` in future (after fully converting recovery to Soong). Bug: 78793464 Test: `m dist` Test: Run adbd_test on marlin. Test: Build and flash marlin on device. Check basic adbd functionalities (`adb shell` and `adb sync`) under normal boot and recovery. Test: `adb sideload` on marlin. Change-Id: Iacbd4db524ef94abd175cd1d27688f4faf3db024
Loading
Please register or sign in to comment