# $FreeBSD: ports/Tools/scripts/release/Makefile,v 1.2 2002/06/01 22:44:50 will Exp $
#
# The purpose of this Makefile is to setup a standardized environment
# for making package splits.  Basically, for each split the organization
# looks like this:
#
#	src/release/scripts
#	ports/Tools/scripts/release
#		RELEASE (e.g. 4.6-RELEASE or 4.6-RC1)
#			symlinks to scripts required
#			directories used by scripts
#			config files
#
# The desire is to provide the scripts with the environment they
# expect while preserving the ability to cvs update them.

RELEASE?=
SRCSCRIPTDIR?=	/usr/src/release/scripts
SRCSCRIPTS=	print-cdrom-packages.sh
PORTSCRIPTS!=	echo *.pl *.sh
FORCE?=		no
PWD!=		pwd

all:
	@if [ -z "${RELEASE}" ]; then \
		echo "Release must be specified, i.e.:"; \
		echo "	make RELEASE=4.6-RELEASE"; \
		exit 1; \
	fi
	@if [ -d "${RELEASE}" -a "${FORCE}" = "no" ]; then \
		echo "The release directory ${RELEASE} already exists."; \
		echo "To force setup type:"; \
		echo "	make RELEASE=${RELEASE} FORCE=yes"; \
		exit 1; \
	fi
	# We *could* use mkdir -p, but being explicit helps.
	mkdir ${RELEASE}
.for SUBDIR in disc1 disc3 gen
	mkdir ${RELEASE}/${SUBDIR}
.endfor
.for SCRIPT in ${PORTSCRIPTS}
	cd ${RELEASE} && ln -s ../${SCRIPT} .
.endfor
.for SRCSCRIPT in ${SRCSCRIPTS}
	cd ${RELEASE} && ln -s ${SRCSCRIPTDIR}/${SRCSCRIPT} .
	@echo "Done."
.endfor
	cd ${RELEASE} && ln -s ../config .
