diff options
Diffstat (limited to 'usr/src/tools/ctf/scripts/ctffindmod.sh')
-rw-r--r-- | usr/src/tools/ctf/scripts/ctffindmod.sh | 171 |
1 files changed, 0 insertions, 171 deletions
diff --git a/usr/src/tools/ctf/scripts/ctffindmod.sh b/usr/src/tools/ctf/scripts/ctffindmod.sh deleted file mode 100644 index 8f583371d9..0000000000 --- a/usr/src/tools/ctf/scripts/ctffindmod.sh +++ /dev/null @@ -1,171 +0,0 @@ -#!/usr/bin/ksh -p -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (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 -# -# -# ident "%Z%%M% %I% %E% SMI" -# -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Given a machine-optimal patch makeup table (see ctfcvtptbl), this program -# will allow the build process to determine the following: -# -# * The patch ID associated with a given module -# * The KU required by the patch associated with a given module -# * The patch ID and location of the genunix module preceding the genunix -# module currently being built. -# - -PROGNAME=$(basename "$0") - -usage() -{ - echo "Usage: $PROGNAME [-nr] [-o outfmt] [-b build_type] -t table" \ - "module_path" >&2 -} - -die() -{ - echo "$1" >&2 - exit 1 -} - -outfmt="patch,ku" -notfoundok=0 -relative=0 -build_type=debug32 -err=0 -while getopts b:lno:rt: c ; do - case $c in - b) - build_type="$OPTARG" - ;; - n) - notfoundok=1 - ;; - o) - outfmt="$OPTARG" - ;; - r) - relative=1 - ;; - t) - table="$OPTARG" - ;; - \?) - err=1 - ;; - esac -done -shift `expr $OPTIND - 1` - -if [[ $err -eq 1 || $# -ne 1 || -z "$table" ]] ; then - usage - exit 2 -fi - -print_garpath=0 -print_ku=0 -print_patch=0 -print_lastgu=0 -for word in $(echo "$outfmt" |tr ',' ' ') ; do - case $word in - garpath) - print_garpath=1 - ;; - ku) - print_ku=1 - ;; - lastgu) - print_lastgu=1 - ;; - patch) - print_patch=1 - ;; - \?) - usage - exit 2 - esac -done - -module="$1" -shift - -if [[ ! -f "$table" ]] ; then - die "$PROGNAME: Cannot open $table" -fi - -head -1 "$table" |sed -e 's/^\([^=]*\)=/\1 /' |read garkw garpath - -if [[ "$garkw" != "GENUNIX_ARCHIVE" || -z "$garpath" ]] ; then - die "$PROGNAME: $table is not a machine-optimal patch table" >&2 -fi - -if [[ $relative -eq 1 ]] ; then - crd=$(pwd |sed -e 's:^.*usr/src/uts::') - module=$(echo "$crd/$module" |sed -e 's://*:/:g') -fi - -fgrep "$module" "$table" |read junk patch ku - -if [[ -z "$patch" || - "$(expr "$patch" : '[0-9]\{6\}-[0-9][0-9]')" -ne 9 ]] ; then - if [[ "$notfoundok" -eq 1 ]] ; then - patch="-" - else - die "$PROGNAME: Cannot find patch for $module" >&2 - fi -fi - -if [[ -z "$ku" ]] ; then - ku="-" -fi - -# Output - -space="" -if [[ $print_patch -eq 1 ]] ; then - echo "$space$patch\c" - space=" " -fi -if [[ $print_ku -eq 1 ]] ; then - echo "$space$ku\c" - space=" " -fi -if [[ $print_garpath -eq 1 ]] ; then - echo "$space$garpath\c" - space=" " -fi -if [[ $print_lastgu -eq 1 ]] ; then - suffix= - if expr $build_type : '.*64' >/dev/null ; then - if [ `uname -p` = "sparc" ] ; then - suffix=/sparcv9 - else - suffix=/amd64 - fi - fi - echo "$space$garpath/$ku$suffix/genunix\c" - space=" " -fi -[[ -n "$space" ]] && echo - -return 0 |