diff options
author | Kris Kennaway <kris@FreeBSD.org> | 2004-07-14 10:45:26 +0000 |
---|---|---|
committer | Kris Kennaway <kris@FreeBSD.org> | 2004-07-14 10:45:26 +0000 |
commit | 62b5c51fcb2c6c1ae5153f12f11b6b35eca21a5f (patch) | |
tree | ccf3975f95fba059c8247065c72209059414c7e2 /Tools | |
parent | Atomically claim an unused chroot directory. The previous algorithm (diff) |
Clean up the specified chroot (umount filesystems, and scrub the
directories likely to contain changed files).
Notes
Notes:
svn path=/head/; revision=113628
Diffstat (limited to 'Tools')
-rwxr-xr-x | Tools/portbuild/scripts/clean-chroot | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Tools/portbuild/scripts/clean-chroot b/Tools/portbuild/scripts/clean-chroot new file mode 100755 index 000000000000..196dc373a5f3 --- /dev/null +++ b/Tools/portbuild/scripts/clean-chroot @@ -0,0 +1,36 @@ +#!/bin/sh + +arch=$1 +branch=$2 +chroot=$3 +noclean=$4 + +# directories to clean +cleandirs="/usr/local /usr/X11R6 /compat /var/db/pkg" + +#umount ${chroot}/proc + +if [ ${arch} = "i386" ]; then + chroot ${chroot} umount -f /compat/linux/proc +fi + +umount -f ${chroot}/a/ports +umount -f ${chroot}/usr/opt/doc +umount -f ${chroot}/usr/src +umount -f ${chroot}/dev + +if [ $noclean = 0 ]; then + rm -rf ${chroot}/tmp/* + for dir in ${cleandirs}; do + if ! rm -rf ${chroot}${dir} >/dev/null 2>&1; then + chflags -R noschg ${chroot}${dir} + rm -rf ${chroot}${dir} >/dev/null 2>&1 + fi + done + chroot ${chroot} /sbin/ldconfig -R + if [ ${arch} = "i386" ]; then + chroot ${chroot} /sbin/ldconfig -aout -R + fi + rm -rf ${chroot}/var/db/pkg/* + rm -rf ${chroot}/used +fi |