Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Mar 2013 07:34:51 +0000 (UTC)
From:      Martin Wilke <miwi@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r314820 - head/Mk
Message-ID:  <201303210734.r2L7YpZS078409@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: miwi
Date: Thu Mar 21 07:34:50 2013
New Revision: 314820
URL: http://svnweb.freebsd.org/changeset/ports/314820

Log:
  - Ports that use alternative targets to depend on others, for example:
    BUILD_DEPENDS=	${NONEXISTENT}:${PORTSDIR}/foo/bar:target
    fail when built in jails that restrict network access during !fetch phase.
    This commit address this problem.
  
  Tested by:	bmany exp-runs, drewery, bapt, crees
  
  PR:		169850
  Submitted by:	crees@

Modified:
  head/Mk/bsd.port.mk

Modified: head/Mk/bsd.port.mk
==============================================================================
--- head/Mk/bsd.port.mk	Thu Mar 21 07:19:03 2013	(r314819)
+++ head/Mk/bsd.port.mk	Thu Mar 21 07:34:50 2013	(r314820)
@@ -4301,7 +4301,7 @@ _PKG_DEP=		check-sanity
 _PKG_SEQ=		pkg-depends
 _FETCH_DEP=		pkg
 _FETCH_SEQ=		fetch-depends pre-fetch pre-fetch-script \
-				do-fetch post-fetch post-fetch-script
+				do-fetch fetch-specials post-fetch post-fetch-script
 _EXTRACT_DEP=	fetch
 _EXTRACT_SEQ=	check-build-conflicts extract-message checksum extract-depends \
 				pre-extract pre-extract-script do-extract \
@@ -5167,6 +5167,7 @@ lib-depends:
 
 _UNIFIED_DEPENDS=${PKG_DEPENDS} ${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS} ${RUN_DEPENDS}
 _DEPEND_DIRS=	${_UNIFIED_DEPENDS:C,^[^:]*:([^:]*).*$,\1,}
+_DEPEND_SPECIALS=	${_UNIFIED_DEPENDS:M*\:*\:*:C,^[^:]*:([^:]*):.*$,\1,}
 
 all-depends-list:
 	@${ALL-DEPENDS-LIST}
@@ -5302,6 +5303,14 @@ deinstall-depends:
 	done
 .endif
 
+.if !target(fetch-specials)
+fetch-specials:
+	@${ECHO_MSG} "===> Fetching all distfiles required by ${PKGNAME} for building"
+	@for dir in ${_DEPEND_SPECIALS}; do \
+		(cd $$dir; ${MAKE} fetch); \
+	done
+.endif
+
 .if !target(fetch-recursive)
 fetch-recursive:
 	@${ECHO_MSG} "===> Fetching all distfiles for ${PKGNAME} and dependencies"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201303210734.r2L7YpZS078409>