blob: a29e14c2d73c23da8497240e71b47e48c3c16dc1 [file] [log] [blame]
The Android Open Source Project88b60792009-03-03 19:28:42 -08001###########################################################
2## Standard rules for building a normal shared library.
3##
4## Additional inputs from base_rules.make:
5## None.
6##
7## LOCAL_MODULE_SUFFIX will be set for you.
8###########################################################
9
10LOCAL_IS_HOST_MODULE := true
11
12ifeq ($(strip $(LOCAL_MODULE_CLASS)),)
13LOCAL_MODULE_CLASS := SHARED_LIBRARIES
14endif
15ifeq ($(strip $(LOCAL_MODULE_SUFFIX)),)
16LOCAL_MODULE_SUFFIX := $(HOST_SHLIB_SUFFIX)
17endif
18ifneq ($(strip $(OVERRIDE_BUILT_MODULE_PATH)),)
19$(error $(LOCAL_PATH): Illegal use of OVERRIDE_BUILT_MODULE_PATH)
20endif
Ying Wang5f074802011-11-08 09:31:21 -080021ifneq ($(strip $(LOCAL_MODULE_STEM)$(LOCAL_BUILT_MODULE_STEM)),)
Ian Rogers76a6dc32012-10-01 16:36:23 -070022$(error $(LOCAL_PATH): Cannot set module stem for a library)
Ying Wang5f074802011-11-08 09:31:21 -080023endif
The Android Open Source Project88b60792009-03-03 19:28:42 -080024
Ying Wang63d94fa2012-12-13 18:23:01 -080025$(call host-shared-library-hook)
26
27skip_build_from_source :=
28ifdef LOCAL_PREBUILT_MODULE_FILE
29ifeq (,$(call if-build-from-source,$(LOCAL_MODULE),$(LOCAL_PATH)))
30include $(BUILD_PREBUILT)
31skip_build_from_source := true
32endif
33endif
34
35ifndef skip_build_from_source
36
The Android Open Source Project88b60792009-03-03 19:28:42 -080037# Put the built modules of all shared libraries in a common directory
38# to simplify the link line.
39OVERRIDE_BUILT_MODULE_PATH := $(HOST_OUT_INTERMEDIATE_LIBRARIES)
40
41include $(BUILD_SYSTEM)/binary.mk
42
43$(LOCAL_BUILT_MODULE): $(all_objects) $(all_libraries) $(LOCAL_ADDITIONAL_DEPENDENCIES)
44 $(transform-host-o-to-shared-lib)
Ying Wang63d94fa2012-12-13 18:23:01 -080045
46endif # skip_build_from_source