blob: 844360e52d4ae82d878033826cd0b3bef6958399 [file] [log] [blame]
Ying Wang6ef65192014-01-15 16:02:16 -08001###########################################################
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
10ifeq ($(strip $(LOCAL_MODULE_CLASS)),)
11LOCAL_MODULE_CLASS := STATIC_LIBRARIES
12endif
13ifeq ($(strip $(LOCAL_MODULE_SUFFIX)),)
14LOCAL_MODULE_SUFFIX := .a
15endif
16LOCAL_UNINSTALLABLE_MODULE := true
17ifneq ($(strip $(LOCAL_MODULE_STEM)$(LOCAL_BUILT_MODULE_STEM)),)
18$(error $(LOCAL_PATH): Cannot set module stem for a library)
19endif
20
21include $(BUILD_SYSTEM)/binary.mk
22
Ying Wang6ef65192014-01-15 16:02:16 -080023$(LOCAL_BUILT_MODULE) : $(built_whole_libraries)
Dan Willemsenc5b7c4f2019-06-12 05:59:53 +000024$(LOCAL_BUILT_MODULE) : $(all_objects) $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_AR)
Ying Wang6ef65192014-01-15 16:02:16 -080025 $(transform-o-to-static-lib)
Ryan Campbell81c9d292016-09-12 13:56:50 -070026
Dan Willemsen9f956652016-10-21 15:04:12 -070027ifeq ($(NATIVE_COVERAGE),true)
Oliver Nguyene91ab232019-04-30 15:14:44 -070028gcno_suffix := .zip
Ryan Campbell81c9d292016-09-12 13:56:50 -070029
30built_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
36GCNO_ARCHIVE := $(LOCAL_MODULE)$(gcno_suffix)
37
Oliver Nguyene91ab232019-04-30 15:14:44 -070038$(intermediates)/$(GCNO_ARCHIVE) : $(SOONG_ZIP) $(MERGE_ZIPS)
Ryan Campbell81c9d292016-09-12 13:56:50 -070039$(intermediates)/$(GCNO_ARCHIVE) : PRIVATE_ALL_OBJECTS := $(strip $(LOCAL_GCNO_FILES))
40$(intermediates)/$(GCNO_ARCHIVE) : PRIVATE_ALL_WHOLE_STATIC_LIBRARIES := $(strip $(built_whole_gcno_libraries))
41$(intermediates)/$(GCNO_ARCHIVE) : $(LOCAL_GCNO_FILES) $(built_whole_gcno_libraries)
Oliver Nguyene91ab232019-04-30 15:14:44 -070042 $(package-coverage-files)
Dan Willemsen9f956652016-10-21 15:04:12 -070043endif
Wei Li0762f5f2024-06-17 14:32:45 -070044
45$(if $(my_register_name),$(eval ALL_MODULES.$(my_register_name).MAKE_MODULE_TYPE:=STATIC_LIBRARY))