X-Git-Url: https://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=misc%2Fmakellib;h=fb3d3b7a92fda0122cafe21718d8625ea764c588;hb=38586db6a67a76451d06b129676b8ec6727c9521;hp=4a571d60b26340a3e6a2714129a9df04649d2a2a;hpb=3a9b6a3bf0269231bef7de74757a910dedd04e0c;p=ncurses.git diff --git a/misc/makellib b/misc/makellib index 4a571d60..fb3d3b7a 100755 --- a/misc/makellib +++ b/misc/makellib @@ -1,24 +1,36 @@ #!/bin/sh -################################################################################ -# Copyright 1996,1997 by Thomas E. Dickey # -# All Rights Reserved. # -# # -# Permission to use, copy, modify, and distribute this software and its # -# documentation for any purpose and without fee is hereby granted, provided # -# that the above copyright notice appear in all copies and that both that # -# copyright notice and this permission notice appear in supporting # -# documentation, and that the name of the above listed copyright holder(s) not # -# be used in advertising or publicity pertaining to distribution of the # -# software without specific, written prior permission. THE ABOVE LISTED # -# COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, # -# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT # -# SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY SPECIAL, # -# INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM # -# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE # -# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR # -# PERFORMANCE OF THIS SOFTWARE. # -################################################################################ -# $Id: makellib,v 1.6 1997/03/02 01:28:36 tom Exp $ +############################################################################## +# Copyright 2020,2021 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,1997,2000 +# +# $Id: makellib,v 1.11 2021/09/04 15:49:38 tom Exp $ # System-dependent wrapper for 'lint' that creates a lint-library via the # following method (XXX is the name of the library): # a. If the file llib-lXXX doesn't exist, create it using the make-rule @@ -33,7 +45,7 @@ # a. On a few systems, you'll have to manually-edit the llib-lXXX file # to get a usable lint-library (not all C-preprocessors work well). # b. The system's lint utility won't recognize -lXXX as a lint-library -# (Use tdlint as a wrapper; it's designed for this). +# (Use tdlint as a wrapper; it is designed for this). # # Parameters: # $1 = library name @@ -56,7 +68,7 @@ while test $# != 0 do case $1 in -L*) - DST="$DST `echo $1|sed -e 's/^-L//'`" + DST="$DST `echo "$1"|sed -e 's/^-L//'`" ;; -*) OPT="$OPT $1" @@ -82,8 +94,8 @@ then llib="llib-l$LLIB" fi -if test ! -f $llib ; then - if ( make $llib ) +if test ! -f "$llib" ; then + if ( make "$llib" ) then : else @@ -91,34 +103,39 @@ if test ! -f $llib ; then fi fi -rm -f $llib.ln $llib.c +rm -f "$llib.ln" "$llib.c" TARGET=$LLIB case "$ARCH" in AIX) CREATE="-uvxo$LLIB -Nn4000" TARGET=$llib.c - ln $llib $TARGET + ln "$llib" "$TARGET" ;; Solaris) CREATE="-C$llib" TARGET=$llib.c - ln $llib $TARGET + ln "$llib" "$TARGET" + ;; +FreeBSD) + CREATE="-g -z -C$LLIB" + TARGET=$llib.c + ln "$llib" "$TARGET" ;; CLIX) CREATE="-DLINTLIBRARY -vxo$LLIB" TARGET=$llib.c - ln $llib $TARGET + ln "$llib" "$TARGET" ;; IRIX*) CREATE="-DLINTLIBRARY -vxyo$LLIB" TARGET=$llib.c - ln $llib $TARGET + ln "$llib" "$TARGET" ;; UNIX_SV) CREATE="-DLINTLIBRARY -vxyo$LLIB" TARGET=$llib.c - ln $llib $TARGET + ln "$llib" "$TARGET" ;; *) echo "Sorry. I do not know how to build a lint-library for $ARCH" @@ -128,24 +145,24 @@ esac echo OPT "$OPT" echo TARGET "$TARGET" echo LIBNAME "$llib" -if ( lint $CREATE $OPT $TARGET ) +if ( lint "$CREATE" "$OPT" "$TARGET" ) then - if test -f $llib.ln + if test -f "$llib.ln" then for p in $HOME/lib $HOME/lib/$ARCH $HOME/lib/$ARCH/lint do - if test ! -d $p + if test ! -d "$p" then - mkdir $p + mkdir "$p" fi done for p in $DST do - cp $llib.ln $p/ + cp "$llib.ln" "$p/" done - rm -f $llib.ln + rm -f "$llib.ln" fi fi if test "x$TARGET" = "x$llib.c" ; then - rm -f $TARGET + rm -f "$TARGET" fi