#!/bin/sh ############################################################################## # Copyright 2020 Thomas E. Dickey # # Copyright 1998,2000 Free Software Foundation, Inc. # # # # Permission is hereby granted, free of charge, to any person obtaining a # # copy of this software and associated documentation files (the "Software"), # # to deal in the Software without restriction, including without limitation # # the rights to use, copy, modify, merge, publish, distribute, distribute # # with modifications, sublicense, and/or sell copies of the Software, and to # # permit persons to whom the Software is furnished to do so, subject to the # # following conditions: # # # # The above copyright notice and this permission notice shall be included in # # all copies or substantial portions of the Software. # # # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # # THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # # DEALINGS IN THE SOFTWARE. # # # # Except as contained in this notice, the name(s) of the above copyright # # holders shall not be used in advertising or otherwise to promote the sale, # # use or other dealings in this Software without prior written # # authorization. # ############################################################################## # # Author: Thomas E. Dickey 1996 # # $Id: tdlint,v 1.7 2020/02/02 23:34:34 tom Exp $ # # Lint-script that allows user's own lint libraries, in addition to the ones # installed in the system. # OPT="" DIRS="" LIBS="" FILES="" ARCH=`uname -s` if test -z "$ARCH" ; then echo '? uname not found' exit 1 else case $ARCH in AIX) set - $* -Nn4000 ;; IRIX) set - $* -n -lc ;; FreeBSD) set - $* -g -p -u -v -z ;; SunOS) case `uname -r` in 5.*) ARCH=Solaris set - $* -n -lc ;; esac ;; esac fi # LIBDIR=$HOME/lib/$ARCH/lint ;export LIBDIR for p in $HOME/lib/$ARCH/lint /usr/lib/lint /usr/lib do if [ -d $p ] then DIRS="$DIRS $p" fi done # while [ $# != 0 ] do case $1 in -D*\"*) ;; -L*) DIRS="`echo $1|sed -e 's/^-L//'` $DIRS" ;; -l*) lib="llib-l`echo $1 | sed -e 's/^-l//'`.ln" found=no for p in $DIRS do echo -n testing $p/$lib if [ -f $p/$lib ] then LIBS="$LIBS $p/$lib" echo " (ok)" found=yes break fi echo done if [ $found = no ] then echo "ignored library $1" fi ;; -n) if [ -z "$OPT" ] then OPT="-I." fi OPT="$OPT $1" ;; -*) OPT="$OPT $1" ;; *) FILES="$FILES $1" ;; esac shift done # eval lint $OPT $FILES $LIBS