| // Copyright (C) 2018 The Android Open Source Project |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| package { |
| default_applicable_licenses: ["Android-Apache-2.0"], |
| default_team: "trendy_team_art_mainline", |
| } |
| |
| java_library { |
| name: "cts-vmtests-dot", |
| libs: ["junit"], |
| srcs: ["src/dot/**/*.java"], |
| installable: false, |
| include_srcs: true, |
| host_supported: true, |
| errorprone: { |
| javacflags: [ |
| "-Xep:IdentityBinaryExpression:WARN", |
| "-Xep:BadShiftAmount:WARN", |
| "-Xep:UnusedMethod:WARN", |
| "-Xep:UnusedVariable:WARN", |
| ], |
| }, |
| } |
| |
| java_binary_host { |
| name: "vmtests-buildutil", |
| static_libs: [ |
| "cts-vmtests-dot", |
| "junit", |
| ], |
| srcs: [ |
| "build/src/util/build/BuildCTSHostSources.java", |
| "build/src/util/build/BuildCTSMainsSources.java", |
| "build/src/util/build/BuildUtilBase.java", |
| "build/src/util/build/FileUtil.java", |
| "build/src/util/build/JUnitTestCollector.java", |
| ], |
| wrapper: "etc/vmtests-buildutil.sh", |
| } |
| |
| java_genrule_host { |
| name: "vmtests_generated_host_test_sources", |
| tools: [ |
| "vmtests-buildutil", |
| "soong_zip", |
| ], |
| cmd: "$(location vmtests-buildutil) util.build.BuildCTSHostSources $(genDir) " + |
| " && $(location soong_zip) -jar -o $(out) -C $(genDir) -D $(genDir)/dot", |
| out: ["vmtests.host.generated.srcjar"], |
| } |
| |
| java_library_host { |
| name: "host-cts-vmtests", |
| libs: [ |
| "junit", |
| "tradefed", |
| ], |
| srcs: [":vmtests_generated_host_test_sources"], |
| installable: false, |
| } |
| |
| java_genrule_host { |
| name: "vmtests-dfh-dex-generated", |
| tools: [ |
| "cfassembler", |
| "soong_zip", |
| ], |
| tool_files: ["etc/vmtests-cfassembler.sh"], |
| srcs: ["src/dot/**/*.dfh"], |
| cmd: "$(location etc/vmtests-cfassembler.sh) $(location cfassembler) $(location soong_zip) $(genDir) $(out) $(in)", |
| out: ["vmtests_dfh_dex_generated.jar"], |
| } |
| |
| java_genrule { |
| name: "vmtests_generated_mains_test_sources", |
| tools: [ |
| "vmtests-buildutil", |
| "soong_zip", |
| ], |
| cmd: "mkdir $(genDir)/src" + |
| " && $(location vmtests-buildutil) util.build.BuildCTSMainsSources $(genDir)/src " + |
| " && $(location soong_zip) -jar -o $(out) -C $(genDir)/src -D $(genDir)/src", |
| out: ["vmtests.mains.generated.srcjar"], |
| } |
| |
| java_library { |
| name: "vmtests-mains", |
| installable: true, |
| libs: ["cts-vmtests-dot"], |
| srcs: [":vmtests_generated_mains_test_sources"], |
| } |
| |
| // TODO: Add vmtests-mains' dex jar to vmtests-generated-resources when |
| // it can be addressed. |
| |
| java_library_host { |
| name: "vmtests-generated-resources", |
| static_libs: [ |
| "host-cts-vmtests", |
| "vmtests-dfh-dex-generated", |
| ], |
| installable: false, |
| } |
| |
| java_library_host { |
| name: "cts-tf-dalvik-buildutil", |
| srcs: [ |
| "build/src/**/*.java", |
| "src/**/*.java", |
| ], |
| libs: [ |
| "junit", |
| "jsr305", |
| "d8", |
| "android-smali", |
| ], |
| errorprone: { |
| javacflags: [ |
| "-Xep:IdentityBinaryExpression:WARN", |
| "-Xep:BadShiftAmount:WARN", |
| ], |
| }, |
| } |
| |
| java_genrule_host { |
| name: "vm-tests-tf-lib", |
| tools: [ |
| "soong_zip", |
| "d8", |
| ], |
| srcs: [ |
| "src/**/*", |
| ":cts-tf-dalvik-buildutil", |
| ":vmtests-generated-resources", |
| ":cts-vmtests-dot", |
| ":junit", |
| ":d8", |
| ":android-smali", |
| ], |
| device_common_srcs: [ |
| ":vmtests-mains", |
| ], |
| cmd: "echo Generating BuildDalvikSuite tests" + |
| " && mkdir -p $(genDir)/classes" + |
| " && unzip -bq $(location :cts-tf-dalvik-buildutil) -d $(genDir)/classes" + |
| " && mkdir -p $(genDir)/tests" + |
| " && java" + |
| " -cp $(location :cts-tf-dalvik-buildutil):$(location :junit):$(location :d8):$(location :android-smali):$(location :cts-vmtests-dot)" + |
| " util.build.BuildDalvikSuite" + |
| " cts/tools/vm-tests-tf/src" + |
| " $(genDir)/tests" + |
| " $(genDir)/classes" + |
| " && echo Generating dexcore tests" + |
| " && $(location soong_zip) -jar -o $(genDir)/tests/dot/junit/dexcore.jar-class.jar" + |
| " -C $(genDir)/classes" + |
| " -f $(genDir)/classes/dot/junit/DxUtil.class" + |
| " -f $(genDir)/classes/dot/junit/DxAbstractMain.class" + |
| " -f $(genDir)/classes/dot/junit/AssertionFailedException.class" + |
| " && mkdir -p $(genDir)/dexcore" + |
| " && $(location d8) -JXms16M -JXmx2048M" + |
| " --output $(genDir)/dexcore" + |
| " $(genDir)/tests/dot/junit/dexcore.jar-class.jar" + |
| " && $(location soong_zip) -jar -o $(genDir)/tests/dot/junit/dexcore.jar" + |
| " -C $(genDir)/dexcore" + |
| " -D $(genDir)/dexcore" + |
| " && echo Combining tests" + |
| " && mkdir -p $(genDir)/out" + |
| " && unzip -bq $(location :vmtests-generated-resources) -d $(genDir)/generated-resources" + |
| " && cp $(location :vmtests-mains) $(genDir)/mains.jar" + |
| " && $(location soong_zip) -o $(out)" + |
| " -C $(genDir)/generated-resources" + |
| " -D $(genDir)/generated-resources" + |
| " -C $(genDir)" + |
| " -D $(genDir)/tests" + |
| " -j -P tests -f $(genDir)/mains.jar", |
| out: ["vm-tests-tf-lib.jar"], |
| } |
| |
| java_test_host { |
| name: "vm-tests-tf", |
| static_libs: [ |
| "compatibility-host-vm-targetprep", |
| "vm-tests-tf-lib", |
| ], |
| test_config: "AndroidTest.xml", |
| test_suites: [ |
| "cts", |
| "general-tests", |
| ], |
| } |