]> ncurses.scripts.mit.edu Git - ncurses.git/blob - misc/tdlint
ncurses 6.0 - patch 20170506
[ncurses.git] / misc / tdlint
1 #!/bin/sh
2 ##############################################################################
3 # Copyright (c) 1998,2000 Free Software Foundation, Inc.                     #
4 #                                                                            #
5 # Permission is hereby granted, free of charge, to any person obtaining a    #
6 # copy of this software and associated documentation files (the "Software"), #
7 # to deal in the Software without restriction, including without limitation  #
8 # the rights to use, copy, modify, merge, publish, distribute, distribute    #
9 # with modifications, sublicense, and/or sell copies of the Software, and to #
10 # permit persons to whom the Software is furnished to do so, subject to the  #
11 # following conditions:                                                      #
12 #                                                                            #
13 # The above copyright notice and this permission notice shall be included in #
14 # all copies or substantial portions of the Software.                        #
15 #                                                                            #
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR #
17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,   #
18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL    #
19 # THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER      #
20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING    #
21 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER        #
22 # DEALINGS IN THE SOFTWARE.                                                  #
23 #                                                                            #
24 # Except as contained in this notice, the name(s) of the above copyright     #
25 # holders shall not be used in advertising or otherwise to promote the sale, #
26 # use or other dealings in this Software without prior written               #
27 # authorization.                                                             #
28 ##############################################################################
29 #
30 # Author: Thomas E. Dickey <dickey@clark.net> 1996
31 #
32 # $Id: tdlint,v 1.6 2000/10/28 20:53:36 tom Exp $
33 #
34 # Lint-script that allows user's own lint libraries, in addition to the ones
35 # installed in the system.
36 #
37 OPT=""
38 DIRS=""
39 LIBS=""
40 FILES=""
41 ARCH=`uname -s`
42 if test -z "$ARCH" ; then
43         echo '? uname not found'
44         exit 1
45 else
46         case $ARCH in
47         AIX)    set - $* -Nn4000
48                 ;;
49         IRIX)   set - $* -n -lc
50                 ;;
51         FreeBSD) set - $* -g -p -u -v -z
52                 ;;
53         SunOS)
54                 case `uname -r` in
55                 5.*)    ARCH=Solaris
56                         set - $* -n -lc
57                         ;;
58                 esac
59                 ;;
60         esac
61 fi
62 # LIBDIR=$HOME/lib/$ARCH/lint ;export LIBDIR
63 for p in $HOME/lib/$ARCH/lint /usr/lib/lint /usr/lib
64 do
65         if [ -d $p ]
66         then
67                 DIRS="$DIRS $p"
68         fi
69 done
70 #
71 while [ $# != 0 ]
72 do
73         case $1 in
74         -D*\"*) ;;
75         -L*)
76                 DIRS="`echo $1|sed -e 's/^-L//'` $DIRS"
77                 ;;
78         -l*)
79                 lib="llib-l`echo $1 | sed -e 's/^-l//'`.ln"
80                 found=no
81                 for p in $DIRS
82                 do
83                         echo -n testing $p/$lib
84                         if [ -f $p/$lib ]
85                         then
86                                 LIBS="$LIBS $p/$lib"
87                                 echo " (ok)"
88                                 found=yes
89                                 break
90                         fi
91                         echo
92                 done
93                 if [ $found = no ]
94                 then
95                         echo "ignored library $1"
96                 fi
97                 ;;
98         -n)     if [ -z "$OPT" ]
99                 then
100                         OPT="-I."
101                 fi
102                 OPT="$OPT $1"
103                 ;;
104         -*)     OPT="$OPT $1"
105                 ;;
106         *)
107                 FILES="$FILES $1"
108                 ;;
109         esac
110         shift
111 done
112 #
113 eval lint $OPT $FILES $LIBS