Date: Wed, 13 Apr 2016 10:37:34 +0000 (UTC) From: Jan Beich <jbeich@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r413186 - in head: . Mk Message-ID: <201604131037.u3DAbYMd097736@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jbeich Date: Wed Apr 13 10:37:34 2016 New Revision: 413186 URL: https://svnweb.freebsd.org/changeset/ports/413186 Log: Add CONFIGURE_OUTSOURCE support If CONFIGURE_OUTSOURCE is defined HAS_CONFIGURE invokes configure script and builds the port out of source tree, under ${WRKDIR}/.build by default. The feature is inspired by USES=cmake:outsource and USES=qmake:outsource. PR: 208294 Exp-run by: antoine Approved by: portmgr (mat) Differential Revision: https://reviews.freebsd.org/D4157 Modified: head/CHANGES head/Mk/bsd.port.mk (contents, props changed) Modified: head/CHANGES ============================================================================== --- head/CHANGES Wed Apr 13 10:36:54 2016 (r413185) +++ head/CHANGES Wed Apr 13 10:37:34 2016 (r413186) @@ -10,6 +10,18 @@ in the release notes and/or placed into All ports committers are allowed to commit to this file. +20160416: +AUTHOR: jbeich@FreeBSD.org + + Introducing CONFIGURE_OUTSOURCE. It changes HAS_CONFIGURE and GNU_CONFIGURE + by invoking configure, build and install stage outside of source tree e.g., + + $ mkdir ../.build + $ cd ../.build + $ ${OLDPWD}/configure + $ gmake + $ gmake install + 20160402: AUTHOR: bapt@FreeBSD.org Modified: head/Mk/bsd.port.mk ============================================================================== --- head/Mk/bsd.port.mk Wed Apr 13 10:36:54 2016 (r413185) +++ head/Mk/bsd.port.mk Wed Apr 13 10:37:34 2016 (r413186) @@ -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}" \
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201604131037.u3DAbYMd097736>