development/splint: Initial import

This commit is contained in:
Menno E. Duursma 2010-05-11 14:05:53 +02:00 committed by Erik Hanson
parent 4521da1081
commit 529ccd9e1f
5 changed files with 118 additions and 0 deletions

18
development/splint/README Normal file
View file

@ -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.

View file

@ -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

View file

@ -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.

View file

@ -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

View file

@ -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"