OSDN Git Service

Merge change 22348 into donut
[android-x86/build.git] / core / java_library.mk
1 ###########################################################
2 ## Standard rules for building a java library.
3 ##
4 ###########################################################
5
6 ifdef LOCAL_IS_HOST_MODULE
7 $(error $(LOCAL_PATH): Host java libraries must use BUILD_HOST_JAVA_LIBRARY)
8 endif
9
10 LOCAL_MODULE_SUFFIX := $(COMMON_JAVA_PACKAGE_SUFFIX)
11 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
12
13 ifneq (,$(LOCAL_ASSET_DIR))
14 $(error $(LOCAL_PATH): Target java libraries may not set LOCAL_ASSET_DIR)
15 endif
16
17 ifneq (,$(LOCAL_RESOURCE_DIR))
18 $(error $(LOCAL_PATH): Target java libraries may not set LOCAL_RESOURCE_DIR)
19 endif
20
21 #xxx base_rules.mk looks at this
22 all_res_assets :=
23
24 LOCAL_BUILT_MODULE_STEM := javalib.jar
25
26 #################################
27 include $(BUILD_SYSTEM)/java.mk
28 #################################
29
30 ifeq ($(LOCAL_IS_STATIC_JAVA_LIBRARY),true)
31 # No dex or resources; all we want are the .class files.
32 $(LOCAL_BUILT_MODULE): $(full_classes_jar)
33         @echo "target Static Jar: $(PRIVATE_MODULE) ($@)"
34         $(copy-file-to-target)
35
36 else # !LOCAL_IS_STATIC_JAVA_LIBRARY
37
38 $(LOCAL_BUILT_MODULE): PRIVATE_DEX_FILE := $(built_dex)
39 $(LOCAL_BUILT_MODULE): $(built_dex) $(java_resource_sources) | $(AAPT)
40         @echo "target Jar: $(PRIVATE_MODULE) ($@)"
41         $(create-empty-package)
42         $(add-dex-to-package)
43 ifneq ($(extra_jar_args),)
44         $(add-java-resources-to-package)
45 endif
46
47 endif # !LOCAL_IS_STATIC_JAVA_LIBRARY