16e0bee74Sjhaslam#!/bin/ksh -p 26e0bee74Sjhaslam# 36e0bee74Sjhaslam# CDDL HEADER START 46e0bee74Sjhaslam# 56e0bee74Sjhaslam# The contents of this file are subject to the terms of the 66e0bee74Sjhaslam# Common Development and Distribution License (the "License"). 76e0bee74Sjhaslam# You may not use this file except in compliance with the License. 86e0bee74Sjhaslam# 96e0bee74Sjhaslam# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 106e0bee74Sjhaslam# or http://www.opensolaris.org/os/licensing. 116e0bee74Sjhaslam# See the License for the specific language governing permissions 126e0bee74Sjhaslam# and limitations under the License. 136e0bee74Sjhaslam# 146e0bee74Sjhaslam# When distributing Covered Code, include this CDDL HEADER in each 156e0bee74Sjhaslam# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 166e0bee74Sjhaslam# If applicable, add the following below this CDDL HEADER, with the 176e0bee74Sjhaslam# fields enclosed by brackets "[]" replaced with your own identifying 186e0bee74Sjhaslam# information: Portions Copyright [yyyy] [name of copyright owner] 196e0bee74Sjhaslam# 206e0bee74Sjhaslam# CDDL HEADER END 216e0bee74Sjhaslam# 226e0bee74Sjhaslam 236e0bee74Sjhaslam# 246e0bee74Sjhaslam# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 256e0bee74Sjhaslam# Use is subject to license terms. 266e0bee74Sjhaslam# 276e0bee74Sjhaslam 286e0bee74Sjhaslam# 296e0bee74Sjhaslam# This test verifies that specifying a glob in a pid provider name 306e0bee74Sjhaslam# (e.g., p*d$target) works. 316e0bee74Sjhaslam# 326e0bee74Sjhaslam 336e0bee74Sjhaslamif [ $# != 1 ]; then 346e0bee74Sjhaslam echo expected one argument: '<'dtrace-path'>' 356e0bee74Sjhaslam exit 2 366e0bee74Sjhaslamfi 376e0bee74Sjhaslam 386e0bee74Sjhaslamdtrace=$1 396e0bee74SjhaslamDIR=${TMPDIR:-/tmp}/dtest.$$ 406e0bee74Sjhaslam 416e0bee74Sjhaslammkdir $DIR 426e0bee74Sjhaslamcd $DIR 436e0bee74Sjhaslam 446e0bee74Sjhaslamcat > Makefile <<EOF 456e0bee74Sjhaslamall: main 466e0bee74Sjhaslam 476e0bee74Sjhaslammain: main.o 48*a386cc11SRobert Mustacchi gcc -m32 -o main main.o 496e0bee74Sjhaslam 506e0bee74Sjhaslammain.o: main.c 51*a386cc11SRobert Mustacchi gcc -m32 -c main.c 526e0bee74SjhaslamEOF 536e0bee74Sjhaslam 546e0bee74Sjhaslamcat > main.c <<EOF 556e0bee74Sjhaslamvoid 566e0bee74Sjhaslamgo(void) 576e0bee74Sjhaslam{ 586e0bee74Sjhaslam} 596e0bee74Sjhaslam 606e0bee74Sjhaslamint 616e0bee74Sjhaslammain(int argc, char **argv) 626e0bee74Sjhaslam{ 636e0bee74Sjhaslam go(); 646e0bee74Sjhaslam 656e0bee74Sjhaslam return (0); 666e0bee74Sjhaslam} 676e0bee74SjhaslamEOF 686e0bee74Sjhaslam 696e0bee74Sjhaslammake > /dev/null 706e0bee74Sjhaslamif [ $? -ne 0 ]; then 716e0bee74Sjhaslam print -u2 "failed to build" 726e0bee74Sjhaslam exit 1 736e0bee74Sjhaslamfi 746e0bee74Sjhaslam 756e0bee74Sjhaslamcat > main.d <<'EOF' 766e0bee74Sjhaslamp*d$target::go:entry 776e0bee74Sjhaslam{ 786e0bee74Sjhaslam printf("%s:%s:%s\n", probemod, probefunc, probename); 796e0bee74Sjhaslam} 806e0bee74SjhaslamEOF 816e0bee74Sjhaslam 826e0bee74Sjhaslamscript() { 836e0bee74Sjhaslam $dtrace -q -s ./main.d -c ./main 846e0bee74Sjhaslam} 856e0bee74Sjhaslam 866e0bee74Sjhaslamscript 876e0bee74Sjhaslamstatus=$? 886e0bee74Sjhaslam 896e0bee74Sjhaslamcd /tmp 906e0bee74Sjhaslam/usr/bin/rm -rf $DIR 916e0bee74Sjhaslam 926e0bee74Sjhaslamexit $status 93