#! /bin/sh # # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License, Version 1.0 only # (the "License"). You may not use this file except in compliance # with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # # Copyright (c) 1998 by Sun Microsystems, Inc. # All rights reserved. # # ident "%Z%%M% %I% %E% SMI" # setvar USAGE = ""adbgen [-d] [-m ilp32|lp64] [-w] "" setvar cflags = '' setvar mflag = '-milp32' setvar subdir = '' while getopts dwm: c { match $c { with d setvar DEBUG = ':' with m match $OPTARG { with ilp32 setvar mflag = '-milp32' with lp64 setvar mflag = '-mlp64' setvar cflags = "-xarch=v9" setvar subdir = 'sparcv9' /usr/bin/optisa sparcv9 > /dev/null if test $Status -ne 0 { echo adbgen -mlp64 must be run on 64-bit system } with * echo $USAGE exit 2 } with w setvar flag = '-w' with \? echo $USAGE exit 2 } } shift $(expr $OPTIND - 1) setvar ADBDIR = '/usr/lib/adb' setvar PATH = "$PATH:$ADBDIR" for file in [$ifsjoin(ARGV)] { if test $(expr "XX$file" : ".*\.adb) -eq 0 { echo File $file invalid. exit 1 } if test $Argc -gt 1 { echo $file: } setvar file = $(expr "XX$file" : "XX\(.*\)\.adb) if adbgen1 $flag $mflag < $file.adb > $file.adb.c { if ${CC:-cc} -w -D${ARCH:-`uname -m`} $cflags \ -I/usr/share/src/uts/${ARCH:-`uname -m`} \ -o $file.run $file.adb.c $ADBDIR/$subdir/adbsub.o { $file.run | adbgen3 | adbgen4 > $file $DEBUG rm -f $file.run $file.adb.C $file.adb.c $file.adb.o } else { $DEBUG rm -f $file.run $file.adb.C $file.adb.c $file.adb.o echo compile failed exit 1 } } else { $DEBUG rm -f $file.adb.C echo adbgen1 failed exit 1 } }