pkgsrc/mk/bulk/pre-build

91 lines
1.9 KiB
Bash

#!/bin/sh
# $NetBSD: pre-build,v 1.5 2000/12/05 16:33:27 hubertf Exp $
#
# Clean up system to be ready for bulk pkg build
#
# (c) 2000 Hubert Feyrer, All Rights Reserved.
#
#set -v # Debug
# Pull in USR_PKGSRC, CVS_USER:
if [ -f "$BULK_BUILD_CONF" ]; then
. $BULK_BUILD_CONF
else
. `dirname $0`/build.conf
fi
#
# Install cvs package and do a cvs update here
#
if [ "$CVS_USER" != "" ]; then
if [ ! -f /usr/bin/cvs ]; then
echo Installing required cvs pkgs for CVS update
( cd ${USR_PKGSRC}/devel/cvs ; make bulk-install )
fi
if [ ! -f /usr/bin/ssh ]; then
echo Installing required ssh pkgs for CVS update
( cd ${USR_PKGSRC}/security/ssh ; make bulk-install )
fi
echo Performing CVS update - this will take some time
su - ${CVS_USER} -c 'stty sane ; cd '${USR_PKGSRC}' ; cvs -q update -Pd'
echo CVS update done.
fi
#
# Remove old/broken distfiles and binary packages
#
echo Removing old/broken distfiles and binary packages
( cd ${USR_PKGSRC}/pkgtools/pkglint ; make bulk-install )
lintpkgsrc -r -P${USR_PKGSRC}
echo done.
#
# Clean out everything and it's mother
#
echo Removing all installed packages
mount -o async -u /usr
if [ -d /var/db/pkg ]; then
cd /var/db/pkg
for pkg in *
do
echo pkg_delete -rR $pkg
pkg_delete -rR $pkg
done
for pkg in *
do
echo pkg_delete -rR $pkg
pkg_delete -rR -f $pkg
done
# We've tried our best to get rid of the pkgs, now do it the hard way
# If it wasn't for stuff in $X11BASE, I wouldn't have hard feelings
# about this!
rm -fr *
fi
# General cleanout - easy!
cd /usr/pkg
rm -fr *
rm -fr .??*
# Stuff known to be broken
rm -fr /usr/X11R6/share/gimp
rm -fr /usr/X11R6/share/gnome
rm -fr /usr/X11R6/share/kde
rm -fr /usr/X11R6/share/netscape
rm -fr /var/tmp/inst*
rm -fr /usr/X11R6/lib/libgimp* # gimp doesn't build with old libs around
# Clean up state files
cd ${USR_PKGSRC}
rm -f .broken* */*/.broken*
rm -f .make* */*/.make*
rm -f .start*
mount -o noasync -u /usr
touch .start.${arch}