Date: Wed, 6 May 2015 14:35:44 +0000 (UTC) From: Glen Barber <gjb@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r282540 - projects/release-arm-redux/release Message-ID: <201505061435.t46EZipW031202@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: gjb Date: Wed May 6 14:35:43 2015 New Revision: 282540 URL: https://svnweb.freebsd.org/changeset/base/282540 Log: Add documentation for newly-added functions. While here, move CHROOT_* and RELEASE_* variables from env_setup() to env_check() since they may change if a release.conf file is used. Sponsored by: The FreeBSD Foundation Modified: projects/release-arm-redux/release/release.sh Modified: projects/release-arm-redux/release/release.sh ============================================================================== --- projects/release-arm-redux/release/release.sh Wed May 6 14:21:51 2015 (r282539) +++ projects/release-arm-redux/release/release.sh Wed May 6 14:35:43 2015 (r282540) @@ -51,6 +51,9 @@ usage() { exit 1 } +# env_setup(): Set up the default build environment variables, such as the +# CHROOTDIR, VCSCMD, SVNROOT, etc. This is called before the release.conf +# file is sourced, if '-c <release.conf>' is specified. env_setup() { # The directory within which the release will be built. CHROOTDIR="/scratch" @@ -108,19 +111,13 @@ env_setup() { # cloud providers as part of the release. WITH_CLOUDWARE= - CHROOT_MAKEENV="${CHROOT_MAKEENV} MAKEOBJDIRPREFIX=${CHROOTDIR}/tmp/obj" - CHROOT_WMAKEFLAGS="${MAKE_FLAGS} ${WORLD_FLAGS} ${CONF_FILES}" - CHROOT_IMAKEFLAGS="${CONF_FILES}" - CHROOT_DMAKEFLAGS="${CONF_FILES}" - RELEASE_WMAKEFLAGS="${MAKE_FLAGS} ${WORLD_FLAGS} ${ARCH_FLAGS} ${CONF_FILES}" - RELEASE_KMAKEFLAGS="${MAKE_FLAGS} ${KERNEL_FLAGS} KERNCONF=\"${KERNEL}\" ${ARCH_FLAGS} ${CONF_FILES}" - RELEASE_RMAKEFLAGS="${ARCH_FLAGS} KERNCONF=\"${KERNEL}\" ${CONF_FILES} \ - ${DOCPORTS} WITH_DVD=${WITH_DVD} WITH_VMIMAGES=${WITH_VMIMAGES} \ - WITH_CLOUDWARE=${WITH_CLOUDWARE} XZ_THREADS=${XZ_THREADS}" - return 0 } # env_setup() +# env_check(): Perform sanity tests on the build environment, such as ensuring +# files/directories exist, as well as adding backwards-compatibility hacks if +# necessary. This is called unconditionally, and overrides the defaults set +# in env_setup() if '-c <release.conf>' is specified. env_check() { # Fix for backwards-compatibility with release.conf that does not have the # trailing '/'. @@ -187,9 +184,20 @@ env_check() { exit 1 fi + CHROOT_MAKEENV="${CHROOT_MAKEENV} MAKEOBJDIRPREFIX=${CHROOTDIR}/tmp/obj" + CHROOT_WMAKEFLAGS="${MAKE_FLAGS} ${WORLD_FLAGS} ${CONF_FILES}" + CHROOT_IMAKEFLAGS="${CONF_FILES}" + CHROOT_DMAKEFLAGS="${CONF_FILES}" + RELEASE_WMAKEFLAGS="${MAKE_FLAGS} ${WORLD_FLAGS} ${ARCH_FLAGS} ${CONF_FILES}" + RELEASE_KMAKEFLAGS="${MAKE_FLAGS} ${KERNEL_FLAGS} KERNCONF=\"${KERNEL}\" ${ARCH_FLAGS} ${CONF_FILES}" + RELEASE_RMAKEFLAGS="${ARCH_FLAGS} KERNCONF=\"${KERNEL}\" ${CONF_FILES} \ + ${DOCPORTS} WITH_DVD=${WITH_DVD} WITH_VMIMAGES=${WITH_VMIMAGES} \ + WITH_CLOUDWARE=${WITH_CLOUDWARE} XZ_THREADS=${XZ_THREADS}" + return 0 } # env_check() +# chroot_setup(): Prepare the build chroot environment for the release build. chroot_setup() { load_chroot_env mkdir -p ${CHROOTDIR}/usr @@ -218,6 +226,8 @@ chroot_setup() { return 0 } # chroot_setup() +# extra_chroot_setup(): Prepare anything additional within the build +# necessary for the release build. extra_chroot_setup() { # If MAKE_CONF and/or SRC_CONF are set and not character devices (/dev/null), # copy them to the chroot. @@ -253,6 +263,7 @@ extra_chroot_setup() { return 0 } # extra_chroot_setup() +# chroot_build_target(): Build the userland and kernel for the build target. chroot_build_target() { buildenv_setup load_target_env @@ -287,6 +298,7 @@ chroot_build_target() { return 0 } # chroot_build_target +# chroot_build_release(): Invoke the 'make release' target. chroot_build_release() { buildenv_setup load_target_env @@ -299,6 +311,7 @@ chroot_build_release() { return 0 } # chroot_build_release() +# main(): Start here. main() { set -e # Everything must succeed env_setup
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201505061435.t46EZipW031202>