Home | History | Annotate | Download | only in core
      1 ###########################################################
      2 ## Standard rules for building a static library.
      3 ##
      4 ## Additional inputs from base_rules.make:
      5 ## None.
      6 ##
      7 ## LOCAL_MODULE_SUFFIX will be set for you.
      8 ###########################################################
      9 
     10 ifeq ($(strip $(LOCAL_MODULE_CLASS)),)
     11 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
     12 endif
     13 ifeq ($(strip $(LOCAL_MODULE_SUFFIX)),)
     14 LOCAL_MODULE_SUFFIX := .a
     15 endif
     16 LOCAL_UNINSTALLABLE_MODULE := true
     17 ifneq ($(strip $(LOCAL_MODULE_STEM)$(LOCAL_BUILT_MODULE_STEM)),)
     18 $(error $(LOCAL_PATH): Cannot set module stem for a library)
     19 endif
     20 
     21 include $(BUILD_SYSTEM)/binary.mk
     22 
     23 $(LOCAL_BUILT_MODULE) : $(built_whole_libraries)
     24 $(LOCAL_BUILT_MODULE) : $(all_objects)
     25 	$(transform-o-to-static-lib)
     26 
     27 ifeq ($(NATIVE_COVERAGE),true)
     28 gcno_suffix := .gcnodir
     29 
     30 built_whole_gcno_libraries := \
     31     $(foreach lib,$(my_whole_static_libraries), \
     32       $(call intermediates-dir-for, \
     33         STATIC_LIBRARIES,$(lib),$(my_kind),,$(LOCAL_2ND_ARCH_VAR_PREFIX), \
     34         $(my_host_cross))/$(lib)$(gcno_suffix))
     35 
     36 GCNO_ARCHIVE := $(LOCAL_MODULE)$(gcno_suffix)
     37 
     38 $(intermediates)/$(GCNO_ARCHIVE) : PRIVATE_ALL_OBJECTS := $(strip $(LOCAL_GCNO_FILES))
     39 $(intermediates)/$(GCNO_ARCHIVE) : PRIVATE_ALL_WHOLE_STATIC_LIBRARIES := $(strip $(built_whole_gcno_libraries))
     40 $(intermediates)/$(GCNO_ARCHIVE) : PRIVATE_PREFIX := $(my_prefix)
     41 $(intermediates)/$(GCNO_ARCHIVE) : PRIVATE_2ND_ARCH_VAR_PREFIX := $(LOCAL_2ND_ARCH_VAR_PREFIX)
     42 $(intermediates)/$(GCNO_ARCHIVE) : PRIVATE_INTERMEDIATES_DIR := $(intermediates)
     43 $(intermediates)/$(GCNO_ARCHIVE) : $(LOCAL_GCNO_FILES) $(built_whole_gcno_libraries)
     44 	$(transform-o-to-static-lib)
     45 endif
     46