From owner-svn-src-all@FreeBSD.ORG Fri Apr 11 13:48:46 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D2900F94; Fri, 11 Apr 2014 13:48:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BF2EC1BDD; Fri, 11 Apr 2014 13:48:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.8/8.14.8) with ESMTP id s3BDmkLj059083; Fri, 11 Apr 2014 13:48:46 GMT (envelope-from gjb@svn.freebsd.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.8/8.14.8/Submit) id s3BDmkKb059078; Fri, 11 Apr 2014 13:48:46 GMT (envelope-from gjb@svn.freebsd.org) Message-Id: <201404111348.s3BDmkKb059078@svn.freebsd.org> From: Glen Barber Date: Fri, 11 Apr 2014 13:48:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r264343 - in head: release share/man/man7 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Apr 2014 13:48:47 -0000 Author: gjb Date: Fri Apr 11 13:48:45 2014 New Revision: 264343 URL: http://svnweb.freebsd.org/changeset/base/264343 Log: Add SRC_UPDATE_SKIP, DOC_UPDATE_SKIP, and PORTS_UPDATE_SKIP variables. These are intended to allow bypassing the 'svn co /usr/{src,doc,ports}' step in the chroot when the tree exists from external means. The use case here is that /usr/src, /usr/doc, and /usr/ports in the chroot exist as result of zfs dataset clones, so it is possible (and happens quite often) that the included distributions may not be consistent. (This is not the case for -RELEASE builds, but does happen for snapshot builds.) Tested on: stable/9@r264319 MFC After: 3 days Sponsored by: The FreeBSD Foundation Modified: head/release/release.conf.sample head/release/release.sh head/share/man/man7/release.7 Modified: head/release/release.conf.sample ============================================================================== --- head/release/release.conf.sample Fri Apr 11 13:11:43 2014 (r264342) +++ head/release/release.conf.sample Fri Apr 11 13:48:45 2014 (r264343) @@ -56,6 +56,18 @@ PORTBRANCH="ports/head@rHEAD" ## means. #CHROOTBUILD_SKIP= +## Set to a non-empty value skip checkout or update of /usr/src in +## the chroot. This is intended for use when /usr/src already exists. +#SRC_UPDATE_SKIP= + +## Set to a non-empty value skip checkout or update of /usr/doc in +## the chroot. This is intended for use when /usr/doc already exists. +#DOC_UPDATE_SKIP= + +## Set to a non-empty value skip checkout or update of /usr/ports in +## the chroot. This is intended for use when /usr/ports already exists. +#PORTS_UPDATE_SKIP= + ## Set to pass additional flags to make(1) for the build chroot setup, such ## as TARGET/TARGET_ARCH. #CHROOT_MAKEENV= Modified: head/release/release.sh ============================================================================== --- head/release/release.sh Fri Apr 11 13:11:43 2014 (r264342) +++ head/release/release.sh Fri Apr 11 13:48:45 2014 (r264343) @@ -190,11 +190,13 @@ set -e # Everything must succeed mkdir -p ${CHROOTDIR}/usr -${VCSCMD} ${FORCE_SRC_KEY} ${SRCBRANCH} ${CHROOTDIR}/usr/src -if [ -z "${NODOC}" ]; then +if [ -z "${SRC_UPDATE_SKIP}" ]; then + ${VCSCMD} ${FORCE_SRC_KEY} ${SRCBRANCH} ${CHROOTDIR}/usr/src +fi +if [ -z "${NODOC}" ] && [ -z "${DOC_UPDATE_SKIP}" ]; then ${VCSCMD} ${DOCBRANCH} ${CHROOTDIR}/usr/doc fi -if [ -z "${NOPORTS}" ]; then +if [ -z "${NOPORTS}" ] && [ -z "${PORTS_UPDATE_SKIP}" ]; then ${VCSCMD} ${PORTBRANCH} ${CHROOTDIR}/usr/ports fi Modified: head/share/man/man7/release.7 ============================================================================== --- head/share/man/man7/release.7 Fri Apr 11 13:11:43 2014 (r264342) +++ head/share/man/man7/release.7 Fri Apr 11 13:48:45 2014 (r264343) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 2, 2014 +.Dd April 11, 2014 .Dt RELEASE 7 .Os .Sh NAME @@ -272,6 +272,30 @@ build environment setup are skipped. This is intended solely for cases where the .Xr chroot 8 userland are provided by alternate means. +.It Va SRC_UPDATE_SKIP +Set to a non-empty value to prevent checkout or update of +.Fa /usr/src +within the +.Xr chroot 8 . +This is intended for use only when +.Fa /usr/src +is expected to exist by alternative means. +.It Va DOC_UPDATE_SKIP +Set to a non-empty value to prevent checkout or update of +.Fa /usr/doc +within the +.Xr chroot 8 . +This is intended for use only when +.Fa /usr/doc +is expected to exist by alternative means. +.It Va PORTS_UPDATE_SKIP +Set to a non-empty value to prevent checkout or update of +.Fa /usr/ports +within the +.Xr chroot 8 . +This is intended for use only when +.Fa /usr/ports +is expected to exist by alternative means. .El .Sh EMBEDDED BUILDS The following