aboutsummaryrefslogtreecommitdiff
path: root/libexec/build-make-clean
blob: 8c5834d58eac6ba2d6f3803debc78ce8da849b6b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env build

build_make_clean()
{(
	load_rules "${1}"

	if [ -z "${NOCLEAN}" ]; then
		echo "cleaning: ${1}"
		if [ -f "${BUILDER_ATFDIR}/${CATEGORY}/${NAME}-${VERSION}-${RELEASE}.${ARCHIVE_FORMAT}" ]; then
			rm "${BUILDER_ATFDIR}/${CATEGORY}/${NAME}-${VERSION}-${RELEASE}.${ARCHIVE_FORMAT}" &
		fi
		if [ -f "${SYSROOT}/var/db/binpkgs/${CATEGORY}/${NAME}" ]; then
			cd "${SYSROOT}"
			# FIXME: we are failing to handle file collisions produce in
			# this file.
			cat "var/db/binpkgs/${CATEGORY}/${NAME}" | xargs -0 rm  -f &
		fi
		if [ -d "${BUILDER_TMPDIR}/${CATEGORY}/${NAME}" ]; then
			rm -rf "${BUILDER_TMPDIR}/${CATEGORY}/${NAME}" &
		fi

		wait

		# Clobber our package marker.
		if [ -f "${SYSROOT}/var/db/binpkgs/${CATEGORY}/${NAME}" ]; then
			rm "${SYSROOT}/var/db/binpkgs/${CATEGORY}/${NAME}"
		fi
	fi
)}

if test "${BUILDER_CALL_STACK}" = '__main__'; then
	simple_usage 'clean' '[all|[<category>/]<package|all>]' "$@"
	build_make_clean "${@}"
fi

# vim: filetype=sh