Date: Mon, 4 Dec 2017 15:28:08 +0000 (UTC) From: Glen Barber <gjb@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r326534 - in stable: 10/release 10/share/man/man7 11/release 11/share/man/man7 Message-ID: <201712041528.vB4FS8x0053836@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: gjb Date: Mon Dec 4 15:28:07 2017 New Revision: 326534 URL: https://svnweb.freebsd.org/changeset/base/326534 Log: MFC r326315, r326330, r326331, r326412: r326315: Set DISTDIR and WRKDIRPREFIX when building ports within the chroot(8) to avoid mtime changes within the ports checkout, which can cause checksum differences. r326330: Add a comment to release/release.conf.sample documenting EMBEDDEDPORTS. [1] Remove and update stale documentation from release(7) while here. r326331: Correct a comment. r326412: Fix port build flags passed to make(1) after r326315, where it was missed for embedded image builds. PR: 206344 [1] Sponsored by: The FreeBSD Foundation Modified: stable/11/release/release.conf.sample stable/11/release/release.sh stable/11/share/man/man7/release.7 Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/release/release.conf.sample stable/10/release/release.sh stable/10/share/man/man7/release.7 Directory Properties: stable/10/ (props changed) Modified: stable/11/release/release.conf.sample ============================================================================== --- stable/11/release/release.conf.sample Mon Dec 4 15:22:06 2017 (r326533) +++ stable/11/release/release.conf.sample Mon Dec 4 15:28:07 2017 (r326534) @@ -61,6 +61,20 @@ PORTBRANCH="ports/head@rHEAD" ## Set when building embedded images. #EMBEDDEDBUILD= +## Set to a list of ports required to build embedded system-on-chip +## images, such as sysutils/u-boot-rpi. +#EMBEDDEDPORTS= + +## Set to the hardware platform of the target userland. This value +## is passed to make(1) to set the TARGET (value of uname -m) to cross +## build. +#EMBEDDED_TARGET= + +## Set to the machine processor architecture of the target userland. +## This value is passed to make(1) to set the TARGET_ARCH (value of uname -p) +## to cross build. +#EMBEDDED_TARGET_ARCH= + ## Set to skip the chroot environment buildworld/installworld/distribution ## step if it is expected the build environment will exist via alternate ## means. Modified: stable/11/release/release.sh ============================================================================== --- stable/11/release/release.sh Mon Dec 4 15:22:06 2017 (r326533) +++ stable/11/release/release.sh Mon Dec 4 15:28:07 2017 (r326534) @@ -280,8 +280,11 @@ extra_chroot_setup() { PBUILD_FLAGS="OSVERSION=${_OSVERSION} BATCH=yes" PBUILD_FLAGS="${PBUILD_FLAGS} UNAME_r=${UNAME_r}" PBUILD_FLAGS="${PBUILD_FLAGS} OSREL=${REVISION}" - chroot ${CHROOTDIR} make -C /usr/ports/textproc/docproj \ - ${PBUILD_FLAGS} OPTIONS_UNSET="FOP IGOR" \ + PBUILD_FLAGS="${PBUILD_FLAGS} WRKDIRPREFIX=/tmp/ports" + PBUILD_FLAGS="${PBUILD_FLAGS} DISTDIR=/tmp/distfiles" + chroot ${CHROOTDIR} env ${PBUILD_FLAGS} make -C \ + /usr/ports/textproc/docproj \ + OPTIONS_UNSET="FOP IGOR" \ FORCE_PKG_REGISTER=1 \ install clean distclean fi @@ -294,9 +297,12 @@ extra_chroot_setup() { PBUILD_FLAGS="OSVERSION=${_OSVERSION} BATCH=yes" PBUILD_FLAGS="${PBUILD_FLAGS} UNAME_r=${UNAME_r}" PBUILD_FLAGS="${PBUILD_FLAGS} OSREL=${REVISION}" + PBUILD_FLAGS="${PBUILD_FLAGS} WRKDIRPREFIX=/tmp/ports" + PBUILD_FLAGS="${PBUILD_FLAGS} DISTDIR=/tmp/distfiles" for _PORT in ${EMBEDDEDPORTS}; do - eval chroot ${CHROOTDIR} make -C /usr/ports/${_PORT} \ - FORCE_PKG_REGISTER=1 ${PBUILD_FLAGS} install clean distclean + eval chroot ${CHROOTDIR} env ${PBUILD_FLAGS} make -C \ + /usr/ports/${_PORT} \ + FORCE_PKG_REGISTER=1 install clean distclean done fi Modified: stable/11/share/man/man7/release.7 ============================================================================== --- stable/11/share/man/man7/release.7 Mon Dec 4 15:22:06 2017 (r326533) +++ stable/11/share/man/man7/release.7 Mon Dec 4 15:28:07 2017 (r326534) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 20, 2015 +.Dd November 28, 2017 .Dt RELEASE 7 .Os .Sh NAME @@ -314,7 +314,6 @@ variables are relevant only to release builds for embe .It Va EMBEDDEDBUILD Set to a non-null value to enable functionality for embedded device release builds. -.Pq This option is considered highly experimental. .Pp When set, .Va WITH_DVD @@ -322,15 +321,15 @@ is unset, and .Va NODOC is defined. Additionally, -.Va XDEV +.Va EMBEDDED_TARGET and -.Va XDEV_ARCH +.Va EMBEDDED_TARGET_ARCH must also be defined. When the build environment is created, .Fa release.sh runs a separate build script located in an architecture-specific directory in -.Pa src/release/${XDEV}/ . +.Pa src/release/${EMBEDDED_TARGET}/ . .It Va EMBEDDEDPORTS Set to the list of any ports that are required for the target device in the format of @@ -338,27 +337,20 @@ in the format of The .Fa devel/subversion port is built by default. -.It Va CROCHETSRC -Set to the source URL for the Crochet build tool. -.It Va CROCHETBRANCH -Set to the subversion branch from -.Va ${CROCHETSRC} -to use. -Defaults to -.Pa trunk . -.It Va UBOOTSRC -Set to the source URL of u-boot, if required. -.It Va UBOOTBRANCH -Set to the subversion branch from -.Va ${UBOOTSRC} -to use. -Defaults to -.Pa trunk . -.It Va UBOOTDIR -Set to the target directory within -.Va ${CHROOTDIR} -to check out -.Va ${UBOOTSRC}/${UBOOTBRANCH} . +.It Va EMBEDDED_TARGET +When set, its value is passed to +.Xr make 1 +to set the +.Va TARGET +.Pq value of Cm uname Fl m +to cross build the target userland. +.It Va EMBEDDED_TARGET_ARCH +When set, its value is passed to +.Xr make 1 +to set the +.Va TARGET_ARCH +.Pq value of Cm uname Fl p +to cross build the target userland. .El .Sh VIRTUAL MACHINE DISK IMAGES The following
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201712041528.vB4FS8x0053836>