[BACK]Return to ctfstrip CVS log [TXT][DIR] Up to [local] / src / usr.bin / ctfconv

Annotation of src/usr.bin/ctfconv/ctfstrip, Revision 1.2

1.1       mpi         1: #!/bin/sh
1.2     ! mpi         2: #
        !             3: # $OpenBSD$
        !             4: #
        !             5: # Copyright (c) 2017 Martin Pieuchot
        !             6: #
        !             7: # Permission to use, copy, modify, and distribute this software for any
        !             8: # purpose with or without fee is hereby granted, provided that the above
        !             9: # copyright notice and this permission notice appear in all copies.
        !            10: #
        !            11: # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
        !            12: # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
        !            13: # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
        !            14: # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
        !            15: # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
        !            16: # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
        !            17: # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1.1       mpi        18:
                     19: # Turn off Strict Bourne shell mode.
                     20: set +o sh
                     21:
                     22: USAGE="usage: ${0##*/} [-S] [-o outfile] file"
                     23:
                     24: while getopts "o:S" opt; do
                     25:        case $opt in
                     26:        S)      STRIPFLAG=-g;;
                     27:        o)      OUTFILE="${OPTARG}";;
                     28:        *)      print -u2 "${USAGE}"; exit 1;;
                     29:        esac
                     30: done
                     31: shift $((OPTIND-1))
                     32:
                     33: if [[ $# == 0 ]]; then
                     34:        print -u2 "${USAGE}";
                     35:        exit 1
                     36: fi
                     37:
                     38: LABEL="unknown"
                     39: TMPFILE=$1.rawctf
                     40:
                     41: # Extract kernel verison
                     42: if [[ "$1" == bsd* ]]; then
                     43:        LABEL=`what $1 |tr -d '\n'|awk -F"$1    " '{ print $2 '\n' }'`
                     44: fi
                     45:
                     46: ctfconv -o ${TMPFILE} -l "${LABEL}" $1 || exit 2
                     47:
                     48: objcopy --add-section .SUNW_ctf=${TMPFILE} ${STRIPFLAG} $1 ${OUTFILE}
                     49:
                     50: rm -f ${TMPFILE}