xref: /freebsd/contrib/ncurses/misc/tdlint (revision 40a8ac8f62b535d30349faf28cf47106b7041b83)
1#!/bin/sh
2##############################################################################
3# Copyright (c) 1998 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.5 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#
37OPT=""
38DIRS=""
39LIBS=""
40FILES=""
41ARCH=`uname -s`
42if test -z "$ARCH" ; then
43	echo '? uname not found'
44	exit 1
45else
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
61fi
62# LIBDIR=$HOME/lib/$ARCH/lint ;export LIBDIR
63for p in $HOME/lib/$ARCH/lint /usr/lib/lint /usr/lib
64do
65	if [ -d $p ]
66	then
67		DIRS="$DIRS $p"
68	fi
69done
70#
71while [ $# != 0 ]
72do
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
111done
112#
113eval lint $OPT $FILES $LIBS
114