1#
2# Copyright (C) 2011 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
17LOCAL_PATH := $(call my-dir)
18
19include art/build/Android.executable.mk
20
21DEX2OAT_SRC_FILES := \
22	dex2oat.cc
23
24# TODO: Remove this when the framework (installd) supports pushing the
25# right instruction-set parameter for the primary architecture.
26ifneq ($(filter ro.zygote=zygote64,$(PRODUCT_DEFAULT_PROPERTY_OVERRIDES)),)
27  dex2oat_arch := 64
28else
29  dex2oat_arch := 32
30endif
31
32ifeq ($(ART_BUILD_TARGET_NDEBUG),true)
33  $(eval $(call build-art-executable,dex2oat,$(DEX2OAT_SRC_FILES),libcutils libart-compiler,art/compiler,target,ndebug,$(dex2oat_arch)))
34endif
35ifeq ($(ART_BUILD_TARGET_DEBUG),true)
36  $(eval $(call build-art-executable,dex2oat,$(DEX2OAT_SRC_FILES),libcutils libartd-compiler,art/compiler,target,debug,$(dex2oat_arch)))
37endif
38
39# We always build dex2oat and dependencies, even if the host build is otherwise disabled, since they are used to cross compile for the target.
40ifeq ($(ART_BUILD_NDEBUG),true)
41  $(eval $(call build-art-executable,dex2oat,$(DEX2OAT_SRC_FILES),libart-compiler,art/compiler,host,ndebug))
42endif
43ifeq ($(ART_BUILD_DEBUG),true)
44  $(eval $(call build-art-executable,dex2oat,$(DEX2OAT_SRC_FILES),libartd-compiler,art/compiler,host,debug))
45endif
46