development/splint: Initial import
This commit is contained in:
parent
4521da1081
commit
529ccd9e1f
|
@ -0,0 +1,18 @@
|
|||
splint is a tool for statically checking C programs for security vulnerabilities
|
||||
and programming mistakes. Splint does many of the traditional lint checks
|
||||
including unused declarations, type inconsistencies, use before definition,
|
||||
unreachable code, ignored return values, execution paths with no return,
|
||||
likely infinite loops, and fall through cases.
|
||||
|
||||
More powerful checks are made possible by additional information given
|
||||
in source code annotations. Annotations are stylized comments that
|
||||
document assumptions about functions, variables, parameters and types.
|
||||
In addition to the checks specifically enabled by annotations, many
|
||||
of the traditional lint checks are improved by exploiting this additional
|
||||
information.
|
||||
|
||||
As more effort is put into annotating programs, better checking results.
|
||||
Splint is designed to be flexible and allow programmers to select
|
||||
appropriate points on the effort-benefit curve for particular projects.
|
||||
As different checks are turned on and more information is given in code
|
||||
annotations the number of bugs that can be detected increases dramatically.
|
|
@ -0,0 +1,7 @@
|
|||
# If we do not have a lint already:
|
||||
if ! command -v lint 1> /dev/null 2> /dev/null ; then
|
||||
# Make this the default
|
||||
( cd /usr/bin ; ln -sf splint lint )
|
||||
( cd /usr/man/man1 ; ln -sf splint.1.gz lint.1.gz )
|
||||
fi
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
splint: Splint (Secure Programming Lint)
|
||||
splint:
|
||||
splint: Splint is a tool for statically checking C programs for security
|
||||
splint: vulnerabilities and coding mistakes. With minimal effort, Splint
|
||||
splint: can be used as a better lint. If additional effort is invested
|
||||
splint: adding annotations to programs, Splint can perform stronger checking
|
||||
splint: than can be done by any standard lint.
|
||||
splint:
|
||||
splint: Splint is developed and maintained by the Secure Programming Group
|
||||
splint: at the University of Virginia Department of Computer Science. David
|
||||
splint: Evans is the project leader and the primary developer of Splint.
|
|
@ -0,0 +1,74 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Slackware build script for splint
|
||||
# Written by Menno E. Duursma <druiloor@zonnet.nl>
|
||||
# Modified by the SlackBuilds.org project
|
||||
|
||||
PRGNAM=splint
|
||||
VERSION=3.1.1
|
||||
ARCH=${ARCH:-i486}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
CWD=`pwd`
|
||||
TMP=${TMP:-/tmp/SBo}
|
||||
PKG=$TMP/package-$PRGNAM
|
||||
OUTPUT=${OUTPUT:-/tmp}
|
||||
|
||||
if [ "$ARCH" = "i486" ]; then
|
||||
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
|
||||
elif [ "$ARCH" = "i686" ]; then
|
||||
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
|
||||
fi
|
||||
|
||||
rm -rf $PKG
|
||||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
rm -rf $PRGNAM-$VERSION
|
||||
tar xzvf $CWD/$PRGNAM-$VERSION.src.tgz || exit 1
|
||||
cd $PRGNAM-$VERSION || exit 1
|
||||
chown -R root:root .
|
||||
chmod -R u+w,go+r-w,a-s .
|
||||
|
||||
CFLAGS="$SLKCFLAGS" \
|
||||
CXXFLAGS="$SLKCFLAGS" \
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--localstatedir=/var \
|
||||
--sysconfdir=/etc \
|
||||
|| exit 1
|
||||
|
||||
make || exit 1
|
||||
make install DESTDIR=$PKG || exit 1
|
||||
|
||||
( cd $PKG
|
||||
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
|
||||
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
|
||||
)
|
||||
|
||||
if [ -d $PKG/usr/man ]; then
|
||||
( cd $PKG/usr/man
|
||||
find . -type f -exec gzip -9 {} \;
|
||||
for i in `find . -type l` ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
|
||||
)
|
||||
fi
|
||||
|
||||
if [ -d $PKG/usr/info ]; then
|
||||
gzip -9 $PKG/usr/info/*.info
|
||||
rm -f $PKG/usr/info/dir
|
||||
fi
|
||||
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp README $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cd doc
|
||||
cp manual.pdf $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cd html
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/html
|
||||
cp *.htm *.html $PKG/usr/doc/$PRGNAM-$VERSION/html
|
||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
cat $CWD/doinst.sh > $PKG/install/doinst.sh
|
||||
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
|
|
@ -0,0 +1,8 @@
|
|||
PRGNAM="splint"
|
||||
VERSION="3.1.1"
|
||||
HOMEPAGE="http://www.splint.org/"
|
||||
DOWNLOAD="http://www.splint.org/downloads/splint-3.1.1.src.tgz"
|
||||
MD5SUM="91635d98644312302f6f16abe73c2474"
|
||||
MAINTAINER="Menno E. Duursma"
|
||||
EMAIL="druiloor@zonnet.nl"
|
||||
APPROVED="elohim"
|
Loading…
Reference in New Issue