compatibility.mk revision 7b10950b8a5e5eab6e93351e5ec8178b4380a85d
11926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Copyright (C) 2015 The Android Open Source Project
21926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#
31926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Licensed under the Apache License, Version 2.0 (the "License");
41926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# you may not use this file except in compliance with the License.
51926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# You may obtain a copy of the License at
61926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#
71926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#      http://www.apache.org/licenses/LICENSE-2.0
81926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#
91926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Unless required by applicable law or agreed to in writing, software
101926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# distributed under the License is distributed on an "AS IS" BASIS,
111926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
121926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# See the License for the specific language governing permissions and
131926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# limitations under the License.
141926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott
151926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Package up a compatibility test suite in a zip file.
161926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#
171926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Input variables:
181926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#   test_suite_name: the name of this test suite eg. cts
191926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#   test_suite_tradefed: the name of this test suite's tradefed wrapper
20aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden#   test_suite_dynamic_config: the path to this test suite's dynamic configuration file
211926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#   test_suite_readme: the path to a README file for this test suite
221926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Output variables:
231926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott#   compatibility_zip: the path to the output zip file.
241926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott
251926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scottout_dir := $(HOST_OUT)/$(test_suite_name)/android-$(test_suite_name)
261926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scotttest_artifacts := $(COMPATIBILITY.$(test_suite_name).FILES)
271dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scotttest_tools := $(HOST_OUT_JAVA_LIBRARIES)/hosttestlib.jar \
281dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott  $(HOST_OUT_JAVA_LIBRARIES)/tradefed-prebuilt.jar \
2919324d1a064bcf1200b278f404eb38a8ad6abdaaStuart Scott  $(HOST_OUT_JAVA_LIBRARIES)/compatibility-host-util.jar \
307b10950b8a5e5eab6e93351e5ec8178b4380a85dJulien Desprez  $(HOST_OUT_JAVA_LIBRARIES)/compatibility-host-util-tests.jar \
317b10950b8a5e5eab6e93351e5ec8178b4380a85dJulien Desprez  $(HOST_OUT_JAVA_LIBRARIES)/compatibility-common-util-tests.jar \
327b10950b8a5e5eab6e93351e5ec8178b4380a85dJulien Desprez  $(HOST_OUT_JAVA_LIBRARIES)/compatibility-tradefed-tests.jar \
331dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott  $(HOST_OUT_JAVA_LIBRARIES)/$(test_suite_tradefed).jar \
347b10950b8a5e5eab6e93351e5ec8178b4380a85dJulien Desprez  $(HOST_OUT_JAVA_LIBRARIES)/$(test_suite_tradefed)-tests.jar \
351dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott  $(HOST_OUT_EXECUTABLES)/$(test_suite_tradefed) \
361dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott  $(test_suite_readme)
371926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott
381926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scottcompatibility_zip := $(out_dir).zip
391926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott$(compatibility_zip): PRIVATE_NAME := android-$(test_suite_name)
401926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott$(compatibility_zip): PRIVATE_OUT_DIR := $(out_dir)
411dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott$(compatibility_zip): PRIVATE_TOOLS := $(test_tools)
42aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden$(compatibility_zip): PRIVATE_SUITE_NAME := $(test_suite_name)
43aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden$(compatibility_zip): PRIVATE_DYNAMIC_CONFIG := $(test_suite_dynamic_config)
44aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden$(compatibility_zip): $(test_artifacts) $(test_tools) $(test_suite_dynamic_config) | $(ADB) $(ACP)
451926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Make dir structure
463a0374548abd4727c569f0f8c60cb88d35fb21daStuart Scott	$(hide) mkdir -p $(PRIVATE_OUT_DIR)/tools $(PRIVATE_OUT_DIR)/testcases
471926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Copy tools
481dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott	$(hide) $(ACP) -fp $(PRIVATE_TOOLS) $(PRIVATE_OUT_DIR)/tools
49aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden	$(if $(PRIVATE_DYNAMIC_CONFIG),$(hide) $(ACP) -fp $(PRIVATE_DYNAMIC_CONFIG) $(PRIVATE_OUT_DIR)/testcases/$(PRIVATE_SUITE_NAME).dynamic)
501926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott	$(hide) cd $(dir $@) && zip -rq $(notdir $@) $(PRIVATE_NAME)
51aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden
52aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden# Reset all input variables
53aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holdentest_suite_name :=
54aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holdentest_suite_tradefed :=
55aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holdentest_suite_dynamic_config :=
56aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holdentest_suite_readme :=
57