Refine the dependency.
Change-Id: I86096114711c8bff684ed83d0731cbe6c22dd91a
diff --git a/Android.mk b/Android.mk
index a97b901..8b2f11a 100644
--- a/Android.mk
+++ b/Android.mk
@@ -90,20 +90,21 @@
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-LOCAL_ADDITIONAL_DEPENDENCIES := sha1sum
-LOCAL_REQUIRED_MODULES := libbcc sha1sum libRS
-
CONVERT_ASM := frameworks/compile/libbcc/tools/dataconvert.py
intermediates := $(local-intermediates-dir)
libbcc_CHECKSUM_FILE := $(intermediates)/checksum.S
LOCAL_GENERATED_SOURCES += $(libbcc_CHECKSUM_FILE)
-$(libbcc_CHECKSUM_FILE):$(TARGET_OUT_SHARED_LIBRARIES)/libbcc.so \
- $(TARGET_OUT_SHARED_LIBRARIES)/libRS.so
- @mkdir -p $(dir $@) && \
- cat $^ | $(HOST_OUT_EXECUTABLES)/sha1sum | \
- python $(CONVERT_ASM) libbcc_checksum > $@
+libbcc_SHA1_SRCS := $(TARGET_OUT_INTERMEDIATE_LIBRARIES)/libbcc.so \
+ $(TARGET_OUT_INTERMEDIATE_LIBRARIES)/libRS.so
+
+$(libbcc_CHECKSUM_FILE): PRIVATE_SHA1_SRCS := $(libbcc_SHA1_SRCS)
+$(libbcc_CHECKSUM_FILE) : $(libbcc_SHA1_SRCS) \
+ $(HOST_OUT_EXECUTABLES)/sha1sum
+ $(hide) mkdir -p $(dir $@) && \
+ cat $(PRIVATE_SHA1_SRCS) | $(HOST_OUT_EXECUTABLES)/sha1sum | \
+ python $(CONVERT_ASM) libbcc_checksum > $@
include $(BUILD_SHARED_LIBRARY)
@@ -246,7 +247,7 @@
endif
# This makes libclcore.bc get installed if and only if the target libbcc.so is installed.
-LOCAL_REQUIRED_MODULES := libclcore.bc
+LOCAL_REQUIRED_MODULES := libclcore.bc libbcc_sha1
# -Wl,--exclude-libs=ALL would hide most of the symbols in the shared library
# and reduces the size of libbcc.so by about 800k.