pacman/makeworld
2002-03-10 22:34:15 +00:00

49 lines
1.3 KiB
Bash
Executable file

#!/bin/bash
toplevel=`pwd`
if [ $# -lt 2 ]; then
echo "usage: $0 <destdir> <category> [category] ..."
echo " where <category> is base, opt, etc."
echo " eg: makeworld /packages base opt extra"
exit 1
fi
dest=$1
shift
sd=`date +"[%b %d %H:%M]"`
for category in $*; do
for port in `find $toplevel/$category -type d -maxdepth 1 -mindepth 1 | sort`; do
cd $port
if [ -f PKGBUILD ]; then
. PKGBUILD
buildstatus=0
if [ ! -f $dest/$pkgname-$pkgver-$pkgrel.pkg.tar.gz ]; then
makepkg
if [ $? -gt 0 ]; then
buildstatus=2
else
rm -rf pkg src
# some packages (mozilla) have been split into multiple packages
mv -v $pkgname-*.pkg.tar.gz $dest/
buildstatus=1
fi
fi
d=`date +"[%b %d %H:%M]"`
echo -n "$d " >>$toplevel/build.log
case $buildstatus in
0) echo "$pkgname already built -- skipping" >>$toplevel/build.log ;;
1) echo "$pkgname was built successfully" >>$toplevel/build.log ;;
2) echo "$pkgname build failed" >>$toplevel/build.log ;;
esac
fi
done
done
ed=`date +"[%b %d %H:%M]"`
echo "makeworld complete." >>$toplevel/build.log
echo " started: $sd" >>$toplevel/build.log
echo " finished: $ed" >>$toplevel/build.log