Files
apfstests/tools/srctest
T
Nathan Scott a840f526b1 needed updating - still referred to xfs-cmds explicitly. no takes
package as an argument before testing whether package can rebuild
itself successfully.
2001-03-29 06:30:35 +00:00

87 lines
1.4 KiB
Bash

#!/bin/sh -x
#
# Simple script which does the following:
# o Generates a src tarball from a WORKAREA
# o Copies it over to ~/test and unpacks it
# o Generates a src tarball from src tarball
# o Compares the build status' ... reports problems
# o removes ~/test
#
package="$1"
tmpdir="$HOME/test"
if [ -z "$package" ]
then
echo "srctest requires one argument - package name"
exit 1
fi
if [ -z "$WORKAREA" ]
then
echo "WORKAREA is not set -- aborting."
exit 1
fi
if [ -d $tmpdir ]
then
echo "$tmpdir exists already -- aborting."
exit 1
else
mkdir $tmpdir
if [ ! -d $tmpdir ]
then
echo "Cannot create $tmpdir -- aborting."
exit 1
fi
fi
#
# Pleasantries are now out of the way, lets proceed.
# NB: If something goes wrong we'll leave the unpacked
# source alone for consumption by a human.
#
_cleanup()
{
if [ $status -eq 0 ]
then
rm -fr $tmpdir
else
echo "Problem? -- leaving $tmpdir for inspection"
fi
}
_buildme()
{
cd $1
if ./Makepkgs
then
:
else
echo Makepkgs thinks theres a problem in $1
exit 1
fi
if [ ! -f build/$package-*.src.tar.gz ]
then
echo Makepkgs failed to create build/package-*.src.tar.gz
exit 1
fi
}
status=1
trap "_cleanup; exit \$status" 0 1 2 3 15
# first, build from the WORKAREA
_buildme $WORKAREA/cmd/$package
cd $tmpdir
gunzip < $WORKAREA/cmd/$package/build/$package-*.src.tar.gz | tar xf -
# now, cross check the src build
_buildme $tmpdir/$package-*
status=0