# Lightweight port.mk to support slave ports. # # # # .if (${OPSYS} == "NetBSD") PORTSDIR?= /usr/opt .else PORTSDIR?= /usr/ports .endif MOVEDFILE?= MOVED ECHO_CMD?= echo FALSE?= false WC?= /usr/bin/wc .if defined(IS_SLAVED) . if defined(SLAVE_DEPENDS) @if [ `${ECHO_CMD} "${SLAVE_DEPENDS}" | ${WC} -w ` -ne "1" ]; then \ ${ECHO_CMD} "A slave port can only depend on one port" ; \ ${FALSE}; \ fi; \ . if exists(SLAVE_DEPENDS) MASTERDIR= ${SLAVE_DEPENDS} . else @${ECHO_MSG} "master port can't be found ! looking ofr its new location in ${PORTSDIR}/${MOVEDFILE}" MASTERDIR= \ @if \ [ ! -d ${SLAVE_DEPENDS} ]; then newdir=`${EGREP} "^$${dir##${PORTSDIR}/}\|" ${PORTSDIR}/${MOVEDFILE} | \ ${AWK} -F\| ' $$2 ~ /^$$/ {print $$1" has been removed on " $$3 ". reason: "$$4; exit }; \ { print "${PORTSDIR}/" $$2};'` ;\ if ( [ -d "$$newdir" ] && [ `${ECHO_MSG} "$$newdir" | ${WC} -w` -eq "1" ] ) ; then \ ${ECHO_MSG} $$newdir; \ else ${ECHO_MSG} " >> Can't find any information in ${PORTSDIR}/${MOVEDFILE}"; \ fi; \ . if exists(MASTERDIR) @(${ECHO_MSG} ${MASTERDIR}; ${FALSE} . else @(${ECHO_MSG} "Master port has moved to ${MASTERDIR}" . include <${MASTERDIR}/Makefile> . endif . else @${ECHO_CMD} "If you want to make a slave port, please define SLAVE_DEPENDS)" .include . endif .else @${ECHO_CMD} "If you don't use IS_SLAVE don't use bsd.port.slave.mk" .endif