From 6e9e6ad3bf831ed0b25ce2e6ce586a790044f8da Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Sun, 25 Jan 2015 14:27:51 -0800 Subject: [PATCH] Fix coverage build after adding clang coverage. Static libraries are painful. Details are in the comment. I'll try to get prebuilts in to the tree so I can fix this on Monday. Until then, this isn't actually a regression because we've not had coverage available for this library until now anyway. Bug: 17574078 Change-Id: I7505c8a94007203e15a6cf192caa06004849d7d9 --- libc/Android.mk | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libc/Android.mk b/libc/Android.mk index 71ddbd3f7..822239d34 100644 --- a/libc/Android.mk +++ b/libc/Android.mk @@ -896,7 +896,14 @@ LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies) LOCAL_CXX_STL := none LOCAL_SYSTEM_SHARED_LIBRARIES := LOCAL_ADDRESS_SANITIZER := false -LOCAL_NATIVE_COVERAGE := $(bionic_coverage) +# b/17574078: Need to disable coverage until we have a prebuilt libprofile_rt. +# Since this is a static library built with clang, it needs to link +# libprofile_rt when it is linked into the final binary. Since the final binary +# is built with GCC, it won't link libprofile_rt. We can't very easily just add +# libprofile_rt to all link lines the way we've done for libgcov because +# libprofile_rt isn't prebuilt, and it would be tricky to write a rule that +# would make sure libprofile_rt is built. +LOCAL_NATIVE_COVERAGE := false include $(BUILD_STATIC_LIBRARY)