1#!/bin/bash 2# 3# Copyright 2016 The Android Open Source Project 4# 5# Licensed under the Apache License, Version 2.0 (the "License"); 6# you may not use this file except in compliance with the License. 7# You may obtain a copy of the License at 8# 9# http://www.apache.org/licenses/LICENSE-2.0 10# 11# Unless required by applicable law or agreed to in writing, software 12# distributed under the License is distributed on an "AS IS" BASIS, 13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14# See the License for the specific language governing permissions and 15# limitations under the License. 16 17plugin=libopenjdkjvmtid.so 18agent=libtiagentd.so 19if [[ "$@" == *"-O"* ]]; then 20 agent=libtiagent.so 21 plugin=libopenjdkjvmti.so 22fi 23 24if [[ "$@" == *"--interpreter"* ]]; then 25 # On interpreter we are fully capable of providing the full jvmti api so we 26 # have a slightly different expected output. 27 # TODO We should really be changing this in the 'check' script. 28 patch -s expected.txt <interpreter-expected.patch 29fi 30 31export ANDROID_LOG_TAGS='*:f' 32./default-run "$@" --android-runtime-option -Xplugin:${plugin} \ 33 --android-runtime-option -Xcompiler-option \ 34 --android-runtime-option --debuggable \ 35 --args agent:${agent}=909-attach-agent 36return_status1=$? 37 38./default-run "$@" --android-runtime-option -Xcompiler-option \ 39 --android-runtime-option --debuggable \ 40 --args agent:${agent}=909-attach-agent 41return_status2=$? 42 43./default-run "$@" --args agent:${agent}=909-attach-agent --external-log-tags 44return_status3=$? 45 46./default-run "$@" --args agent:${agent}=909-attach-agent \ 47 --args disallow-debugging \ 48 --external-log-tags 49return_status4=$? 50 51# Make sure we don't silently ignore an early failure. 52(exit $return_status1) && \ 53 (exit $return_status2) && \ 54 (exit $return_status3) && \ 55 (exit $return_status4) 56