From ea9dd1e765d2d8b2f727309f43946021cd863579 Mon Sep 17 00:00:00 2001 From: Adrian DC Date: Sun, 13 Oct 2019 15:08:09 +0200 Subject: toybox: Restore support for toybox_static binary * Add the toybox_static binary with recovery/root/sbin target * Split defaults to prevent symlinks duplication * Add implicit libbase, libcgrouprc and libcgrouprc_format: "lld: error: undefined symbol: android::base::LogMessage:..." "lld: error: undefined symbol: ACgroupController_..." "lld: error: undefined symbol: android::cgrouprc::format::..." Change-Id: I4f889250eac8d993c4aefe3a0c68504151905f3c Signed-off-by: Adrian DC --- Android.bp | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/Android.bp b/Android.bp index 91da3ad3..db673531 100644 --- a/Android.bp +++ b/Android.bp @@ -252,6 +252,10 @@ cc_defaults { // This doesn't actually prevent us from dragging in libc++ at runtime // because libnetd_client.so is C++. stl: "none", +} + +cc_defaults { + name: "toybox-defaults-symlinks", // not usable on Android?: freeramdisk fsfreeze makedevs nbd-client // partprobe pivot_root pwdx rev rfkill vconfig @@ -453,7 +457,7 @@ toybox_libraries = [ cc_binary { name: "toybox", - defaults: ["toybox-defaults"], + defaults: ["toybox-defaults", "toybox-defaults-symlinks"], host_supported: true, recovery_available: true, shared_libs: toybox_libraries, @@ -466,7 +470,20 @@ cc_binary { cc_binary { name: "toybox_vendor", - defaults: ["toybox-defaults"], + defaults: ["toybox-defaults", "toybox-defaults-symlinks"], shared_libs: toybox_libraries, vendor: true, } + +cc_binary { + name: "toybox_static", + defaults: ["toybox-defaults"], + whole_static_libs: toybox_libraries + [ + "libbase", + "libcgrouprc", + "libcgrouprc_format", + ], + recovery: true, + stl: "libc++_static", + static_executable: true, +} -- cgit v1.2.3