1#
2# Copyright (C) 2013 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17#
18# Rules for building a host dalvik static java library.
19# These libraries will be compiled against libcore and not the host
20# JRE.
21#
22ifeq ($(HOST_OS),linux)
23
24LOCAL_UNINSTALLABLE_MODULE := true
25LOCAL_IS_STATIC_JAVA_LIBRARY := true
26USE_CORE_LIB_BOOTCLASSPATH := true
27LOCAL_JAVA_LIBRARIES += core-oj-hostdex core-libart-hostdex
28
29intermediates.COMMON := $(call intermediates-dir-for,JAVA_LIBRARIES,$(LOCAL_MODULE),true,COMMON,)
30full_classes_jack := $(intermediates.COMMON)/classes.jack
31LOCAL_INTERMEDIATE_TARGETS += \
32    $(full_classes_jack)
33
34include $(BUILD_SYSTEM)/host_java_library.mk
35# proguard is not supported
36# *.proto files are not supported
37$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_JACK_FLAGS := $(GLOBAL_JAVAC_DEBUG_FLAGS) $(LOCAL_JACK_FLAGS)
38$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_JACK_VERSION := $(LOCAL_JACK_VERSION)
39$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_JACK_MIN_SDK_VERSION := $(PLATFORM_JACK_MIN_SDK_VERSION)
40
41$(full_classes_jack): PRIVATE_JARJAR_RULES := $(LOCAL_JARJAR_RULES)
42$(full_classes_jack): \
43	PRIVATE_JACK_INTERMEDIATES_DIR := $(intermediates.COMMON)/jack-rsc
44ifeq ($(LOCAL_JACK_ENABLED),incremental)
45$(full_classes_jack): \
46	PRIVATE_JACK_INCREMENTAL_DIR := $(intermediates.COMMON)/jack-incremental
47else
48$(full_classes_jack): \
49	PRIVATE_JACK_INCREMENTAL_DIR :=
50endif
51$(full_classes_jack): $(java_sources) $(java_resource_sources) $(full_jack_deps) \
52        $(jar_manifest_file) $(layers_file) $(LOCAL_MODULE_MAKEFILE_DEP) \
53        $(LOCAL_ADDITIONAL_DEPENDENCIES) $(LOCAL_JARJAR_RULES) \
54        $(JACK) | setup-jack-server
55	@echo Building with Jack: $@
56	$(java-to-jack)
57
58USE_CORE_LIB_BOOTCLASSPATH :=
59LOCAL_IS_STATIC_JAVA_LIBRARY :=
60endif
61