compatibility.mk revision ccbedae0e67d6dc799b690f500d3c38e99b1227e
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 22bae7ee5d9e522cecd996dbf15fa39255f6e9bab6Todd Lee# test_suite_prebuilt_tools: the set of prebuilt tools to be included directly 23bae7ee5d9e522cecd996dbf15fa39255f6e9bab6Todd Lee# in the 'tools' subdirectory of the test suite. 24188831548742ac0b138b9f94c0f8d4e43f5366b0Siyuan Zhou# test_suite_tools: the set of tools for this test suite 25188831548742ac0b138b9f94c0f8d4e43f5366b0Siyuan Zhou# 261926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Output variables: 271926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# compatibility_zip: the path to the output zip file. 281926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott 291926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scottout_dir := $(HOST_OUT)/$(test_suite_name)/android-$(test_suite_name) 301926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scotttest_artifacts := $(COMPATIBILITY.$(test_suite_name).FILES) 311dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scotttest_tools := $(HOST_OUT_JAVA_LIBRARIES)/hosttestlib.jar \ 3263d377c56b14c960318441f4372e90d99421fb96Julien Desprez $(HOST_OUT_JAVA_LIBRARIES)/tradefed.jar \ 33ccbedae0e67d6dc799b690f500d3c38e99b1227ejdesprez $(HOST_OUT_JAVA_LIBRARIES)/loganalysis.jar \ 3419324d1a064bcf1200b278f404eb38a8ad6abdaaStuart Scott $(HOST_OUT_JAVA_LIBRARIES)/compatibility-host-util.jar \ 357b10950b8a5e5eab6e93351e5ec8178b4380a85dJulien Desprez $(HOST_OUT_JAVA_LIBRARIES)/compatibility-host-util-tests.jar \ 367b10950b8a5e5eab6e93351e5ec8178b4380a85dJulien Desprez $(HOST_OUT_JAVA_LIBRARIES)/compatibility-common-util-tests.jar \ 377b10950b8a5e5eab6e93351e5ec8178b4380a85dJulien Desprez $(HOST_OUT_JAVA_LIBRARIES)/compatibility-tradefed-tests.jar \ 389aa0b891779eec2d9e7379f3f15e46e3d9d6628fJoe Onorato $(HOST_OUT_JAVA_LIBRARIES)/host-libprotobuf-java-full.jar \ 391dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott $(HOST_OUT_JAVA_LIBRARIES)/$(test_suite_tradefed).jar \ 407b10950b8a5e5eab6e93351e5ec8178b4380a85dJulien Desprez $(HOST_OUT_JAVA_LIBRARIES)/$(test_suite_tradefed)-tests.jar \ 411dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott $(HOST_OUT_EXECUTABLES)/$(test_suite_tradefed) \ 421dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott $(test_suite_readme) 431926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott 44188831548742ac0b138b9f94c0f8d4e43f5366b0Siyuan Zhoutest_tools += $(test_suite_tools) 45188831548742ac0b138b9f94c0f8d4e43f5366b0Siyuan Zhou 461926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scottcompatibility_zip := $(out_dir).zip 471926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott$(compatibility_zip): PRIVATE_NAME := android-$(test_suite_name) 481926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott$(compatibility_zip): PRIVATE_OUT_DIR := $(out_dir) 49bae7ee5d9e522cecd996dbf15fa39255f6e9bab6Todd Lee$(compatibility_zip): PRIVATE_TOOLS := $(test_tools) $(test_suite_prebuilt_tools) 50aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden$(compatibility_zip): PRIVATE_SUITE_NAME := $(test_suite_name) 51aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden$(compatibility_zip): PRIVATE_DYNAMIC_CONFIG := $(test_suite_dynamic_config) 52bae7ee5d9e522cecd996dbf15fa39255f6e9bab6Todd Lee$(compatibility_zip): $(test_artifacts) $(test_tools) $(test_suite_prebuilt_tools) $(test_suite_dynamic_config) $(SOONG_ZIP) | $(ADB) $(ACP) 531926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Make dir structure 543a0374548abd4727c569f0f8c60cb88d35fb21daStuart Scott $(hide) mkdir -p $(PRIVATE_OUT_DIR)/tools $(PRIVATE_OUT_DIR)/testcases 551926e9b8bf6ac90ee25a9ed4e9f20d36c4c355c3Stuart Scott# Copy tools 561dcff84ce68a48f224a6055b86ced96d7a620679Stuart Scott $(hide) $(ACP) -fp $(PRIVATE_TOOLS) $(PRIVATE_OUT_DIR)/tools 57aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden $(if $(PRIVATE_DYNAMIC_CONFIG),$(hide) $(ACP) -fp $(PRIVATE_DYNAMIC_CONFIG) $(PRIVATE_OUT_DIR)/testcases/$(PRIVATE_SUITE_NAME).dynamic) 58c4cf49569f38c44e305df57024d5be20088ad123Dan Willemsen $(hide) find $(dir $@)/$(PRIVATE_NAME) | sort >$@.list 59c4cf49569f38c44e305df57024d5be20088ad123Dan Willemsen $(hide) $(SOONG_ZIP) -d -o $@ -C $(dir $@) -l $@.list 60aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden 61aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holden# Reset all input variables 62aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holdentest_suite_name := 63aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holdentest_suite_tradefed := 64aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holdentest_suite_dynamic_config := 65aee6f602f97c45efeff7e8a840b3009d0966e62eAaron Holdentest_suite_readme := 66bae7ee5d9e522cecd996dbf15fa39255f6e9bab6Todd Leetest_suite_prebuilt_tools := 67188831548742ac0b138b9f94c0f8d4e43f5366b0Siyuan Zhoutest_suite_tools := 68