xref: /freebsd/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pragma/tst.libdep.ksh (revision 2be1a816b9ff69588e55be0a84cbe2a31efc0f2f)
1#
2# CDDL HEADER START
3#
4# The contents of this file are subject to the terms of the
5# Common Development and Distribution License (the "License").
6# You may not use this file except in compliance with the License.
7#
8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9# or http://www.opensolaris.org/os/licensing.
10# See the License for the specific language governing permissions
11# and limitations under the License.
12#
13# When distributing Covered Code, include this CDDL HEADER in each
14# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15# If applicable, add the following below this CDDL HEADER, with the
16# fields enclosed by brackets "[]" replaced with your own identifying
17# information: Portions Copyright [yyyy] [name of copyright owner]
18#
19# CDDL HEADER END
20#
21
22#
23# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26# ident	"%Z%%M%	%I%	%E% SMI"
27
28if [ $# != 1 ]; then
29	echo expected one argument: '<'dtrace-path'>'
30	exit 2
31fi
32
33libdir=${TMPDIR:-/tmp}/libdep.$$
34dtrace=$1
35
36setup_libs()
37{
38        mkdir $libdir
39        cat > $libdir/liba.$$.d <<EOF
40#pragma D depends_on library libb.$$.d
41#pragma D depends_on library libc.$$.d
42#pragma D depends_on library libd.$$.d
43EOF
44        cat > $libdir/libb.$$.d <<EOF
45#pragma D depends_on library libc.$$.d
46EOF
47        cat > $libdir/libc.$$.d <<EOF
48EOF
49        cat > $libdir/libd.$$.d <<EOF
50EOF
51        cat > $libdir/libe.$$.d <<EOF
52#pragma D depends_on library liba.$$.d
53EOF
54        cat > $libdir/libf.$$.d <<EOF
55EOF
56}
57
58
59setup_libs
60
61$dtrace -L$libdir -e
62
63status=$?
64rm -rf $libdir
65return $status
66
67