Android.mk revision 011fade82899fe3607789ca061e3a6c7fa4c71f4
1011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# Copyright (C) 2012 The Android Open Source Project
2011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang#
3011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# Licensed under the Apache License, Version 2.0 (the "License");
4011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# you may not use this file except in compliance with the License.
5011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# You may obtain a copy of the License at
6011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang#
7011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang#      http://www.apache.org/licenses/LICENSE-2.0
8011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang#
9011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# Unless required by applicable law or agreed to in writing, software
10011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# distributed under the License is distributed on an "AS IS" BASIS,
11011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# See the License for the specific language governing permissions and
13011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# limitations under the License.
14011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang#
15011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang
16011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang ChuangLOCAL_PATH := $(call my-dir)
17011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang
18011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang ChuangTEST_ART_RUN_TEST_MAKE_TARGETS :=
19011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang
20011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# Helper to create individual build targets for tests.
21011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# Must be called with $(eval)
22011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# $(1): the test number
23011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuangdefine declare-make-art-run-test
24011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuangdmart_target := $(TARGET_OUT_DATA)/art-run-tests/$(1)/touch
25011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang$$(dmart_target):
26011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang	$(hide) rm -rf $$(dir $$@) && mkdir -p $$(dir $$@)
27011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang	$(hide) $(LOCAL_PATH)/run-test --build-only --output-path $$(abspath $$(dir $$@)) $(1)
28011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang	$(hide) touch $$@
29011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang
30011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang ChuangTEST_ART_RUN_TEST_MAKE_TARGETS += $$(dmart_target)
31011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuangdmart_target :=
32011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuangendef
33011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang
34011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# Expand all tests.
35011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang$(foreach test, $(wildcard art/test/[0-9]*), $(eval $(call declare-make-art-run-test,$(notdir $(test)))))
36011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang
37011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuanginclude $(CLEAR_VARS)
38011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang ChuangLOCAL_MODULE_TAGS := tests
39011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang ChuangLOCAL_MODULE := art-run-tests
40011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang ChuangLOCAL_ADDITIONAL_DEPENDENCIES := $(TEST_ART_RUN_TEST_MAKE_TARGETS)
41011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuanginclude $(BUILD_PHONY_PACKAGE)
42011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang
43011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuang# clear temp vars
44011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang ChuangTEST_ART_RUN_TEST_MAKE_TARGETS :=
45011fade82899fe3607789ca061e3a6c7fa4c71f4Tsu Chiang Chuangdeclare-make-art-run-test :=
46