aboutsummaryrefslogtreecommitdiff
path: root/Mk/bsd.port.mk
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2016-04-13 10:37:34 +0000
committerJan Beich <jbeich@FreeBSD.org>2016-04-13 10:37:34 +0000
commitef7f58498fb7a1db8abbd72a8b64324f081b56b4 (patch)
treee719409b6619de5371fe21df609fa58d68a0497e /Mk/bsd.port.mk
parent7c2082609bec9c31237767d08c61f113e950f828 (diff)
downloadports-ef7f58498fb7a1db8abbd72a8b64324f081b56b4.tar.gz
ports-ef7f58498fb7a1db8abbd72a8b64324f081b56b4.zip
Notes
Diffstat (limited to 'Mk/bsd.port.mk')
-rw-r--r--Mk/bsd.port.mk11
1 files changed, 11 insertions, 0 deletions
diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index ac93f1224d25..37fc659a5cdc 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -780,6 +780,8 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# configure stage will not do anything if this is not set.
# GNU_CONFIGURE - If set, you are using GNU configure (optional). Implies
# HAS_CONFIGURE.
+# CONFIGURE_OUTSOURCE - If set, this port builds in an empty ${CONFIGURE_WRKSRC}
+# not being under ${WRKSRC}.
# CONFIGURE_WRKSRC
# - Directory to run configure in.
# Default: ${WRKSRC}
@@ -1554,6 +1556,14 @@ EXTRACT_WRKDIR:= ${WRKDIR}
WRKSRC:= ${WRKSRC}/${WRKSRC_SUBDIR}
.endif
+.if defined(CONFIGURE_OUTSOURCE)
+CONFIGURE_CMD?= ${WRKSRC}/${CONFIGURE_SCRIPT}
+CONFIGURE_WRKSRC?= ${WRKDIR}/.build
+BUILD_WRKSRC?= ${CONFIGURE_WRKSRC}
+INSTALL_WRKSRC?= ${CONFIGURE_WRKSRC}
+TEST_WRKSRC?= ${CONFIGURE_WRKSRC}
+.endif
+
PATCH_WRKSRC?= ${WRKSRC}
CONFIGURE_WRKSRC?= ${WRKSRC}
BUILD_WRKSRC?= ${WRKSRC}
@@ -3334,6 +3344,7 @@ do-configure:
done
.endif
.if defined(HAS_CONFIGURE)
+ @${MKDIR} ${CONFIGURE_WRKSRC}
@(cd ${CONFIGURE_WRKSRC} && \
${SET_LATE_CONFIGURE_ARGS} \
if ! ${SETENV} CC="${CC}" CPP="${CPP}" CXX="${CXX}" \