Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F145839024
D55451.id.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
10 KB
Referenced Files
None
Subscribers
None
D55451.id.diff
View Options
diff --git a/release/release.sh b/release/release.sh
--- a/release/release.sh
+++ b/release/release.sh
@@ -180,7 +180,7 @@
# The aggregated build-time flags based upon variables defined within
# this file, unless overridden by release.conf. In most cases, these
# will not need to be changed.
- CONF_FILES="__MAKE_CONF=${MAKE_CONF} SRCCONF=${SRC_CONF}"
+ CONF_FILES="__MAKE_CONF='${MAKE_CONF}' SRCCONF='${SRC_CONF}'"
NOCONF_FILES="__MAKE_CONF=/dev/null SRCCONF=/dev/null"
if [ -n "${TARGET}" ] && [ -n "${TARGET_ARCH}" ]; then
ARCH_FLAGS="TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH}"
@@ -193,18 +193,18 @@
exit 1
fi
- if [ $(id -u) -ne 0 ]; then
+ if [ "$(id -u)" -ne 0 ]; then
echo "Needs to be run as root."
exit 1
fi
# Unset CHROOTBUILD_SKIP if the chroot(8) does not appear to exist.
- if [ -n "${CHROOTBUILD_SKIP}" -a ! -e ${CHROOTDIR}/bin/sh ]; then
+ if [ -n "${CHROOTBUILD_SKIP}" -a ! -e "${CHROOTDIR}/bin/sh" ]; then
CHROOTBUILD_SKIP=
fi
CHROOT_MAKEENV="${CHROOT_MAKEENV} \
- MAKEOBJDIRPREFIX=${CHROOTDIR}/tmp/obj"
+ MAKEOBJDIRPREFIX='${CHROOTDIR}/tmp/obj'"
CHROOT_WMAKEFLAGS="${MAKE_FLAGS} ${WORLD_FLAGS} ${NOCONF_FILES}"
CHROOT_IMAKEFLAGS="${WORLD_FLAGS} ${NOCONF_FILES}"
CHROOT_DMAKEFLAGS="${WORLD_FLAGS} ${NOCONF_FILES}"
@@ -225,30 +225,30 @@
# chroot_setup(): Prepare the build chroot environment for the release build.
chroot_setup() {
load_chroot_env
- mkdir -p ${CHROOTDIR}/usr
+ mkdir -p "${CHROOTDIR}/usr"
if [ -z "${SRC_UPDATE_SKIP}" ]; then
if [ -d "${CHROOTDIR}/usr/src/.git" ]; then
- git -C ${CHROOTDIR}/usr/src pull -q
+ git -C "${CHROOTDIR}/usr/src" pull -q
else
- ${VCSCMD} ${SRC} -b ${SRCBRANCH} ${CHROOTDIR}/usr/src
+ ${VCSCMD} "${SRC}" -b ${SRCBRANCH} "${CHROOTDIR}/usr/src"
fi
fi
if [ -z "${NOPORTS}" ] && [ -z "${PORTS_UPDATE_SKIP}" ]; then
if [ -d "${CHROOTDIR}/usr/ports/.git" ]; then
- git -C ${CHROOTDIR}/usr/ports pull -q
+ git -C "${CHROOTDIR}/usr/ports" pull -q
else
- ${VCSCMD} ${PORT} -b ${PORTBRANCH} ${CHROOTDIR}/usr/ports
+ ${VCSCMD} "${PORT}" -b ${PORTBRANCH} "${CHROOTDIR}/usr/ports"
fi
fi
if [ -z "${CHROOTBUILD_SKIP}" ]; then
- cd ${CHROOTDIR}/usr/src
+ cd "${CHROOTDIR}/usr/src"
env ${CHROOT_MAKEENV} make ${CHROOT_WMAKEFLAGS} buildworld
env ${CHROOT_MAKEENV} make ${CHROOT_IMAKEFLAGS} installworld \
- DESTDIR=${CHROOTDIR}
+ DESTDIR="${CHROOTDIR}"
env ${CHROOT_MAKEENV} make ${CHROOT_DMAKEFLAGS} distribution \
- DESTDIR=${CHROOTDIR}
+ DESTDIR="${CHROOTDIR}"
fi
return 0
@@ -257,35 +257,32 @@
# extra_chroot_setup(): Prepare anything additional within the build
# necessary for the release build.
extra_chroot_setup() {
- mkdir -p ${CHROOTDIR}/dev
- mount -t devfs devfs ${CHROOTDIR}/dev
- [ -e /etc/resolv.conf -a ! -e ${CHROOTDIR}/etc/resolv.conf ] && \
- cp /etc/resolv.conf ${CHROOTDIR}/etc/resolv.conf
+ mkdir -p "${CHROOTDIR}/dev"
+ mount -t devfs devfs "${CHROOTDIR}/dev"
+ [ -e /etc/resolv.conf -a ! -e "${CHROOTDIR}/etc/resolv.conf" ] && \
+ cp /etc/resolv.conf "${CHROOTDIR}/etc/resolv.conf"
# Run ldconfig(8) in the chroot directory so /var/run/ld-elf*.so.hints
# is created. This is needed by ports-mgmt/pkg.
- eval chroot ${CHROOTDIR} /etc/rc.d/ldconfig forcerestart
+ eval chroot "${CHROOTDIR}" /etc/rc.d/ldconfig forcerestart
# If MAKE_CONF and/or SRC_CONF are set and not character devices
# (/dev/null), copy them to the chroot.
- if [ -e ${MAKE_CONF} ] && [ ! -c ${MAKE_CONF} ]; then
- mkdir -p ${CHROOTDIR}/$(dirname ${MAKE_CONF})
- cp ${MAKE_CONF} ${CHROOTDIR}/${MAKE_CONF}
- fi
- if [ -e ${SRC_CONF} ] && [ ! -c ${SRC_CONF} ]; then
- mkdir -p ${CHROOTDIR}/$(dirname ${SRC_CONF})
- cp ${SRC_CONF} ${CHROOTDIR}/${SRC_CONF}
- fi
-
+ for conf in "${MAKE_CONF}" "${SRC_CONF}"; do
+ if [ -e "${conf}" ] && [ ! -c "${conf}" ]; then
+ mkdir -p "${CHROOTDIR}/$(dirname "${conf}")"
+ cp "${conf}" "${CHROOTDIR}/${conf}"
+ fi
+ done
_gitcmd="$(which git)"
if [ -z "${NOGIT}" -a -z "${_gitcmd}" ]; then
# Install git from ports if the ports tree is available;
# otherwise install the pkg.
- if [ -d ${CHROOTDIR}/usr/ports ]; then
+ if [ -d "${CHROOTDIR}/usr/ports" ]; then
# Trick the ports 'run-autotools-fixup' target to do the right
# thing.
- _OSVERSION=$(chroot ${CHROOTDIR} /usr/bin/uname -U)
- REVISION=$(chroot ${CHROOTDIR} make -C /usr/src/release -V REVISION)
- BRANCH=$(chroot ${CHROOTDIR} make -C /usr/src/release -V BRANCH)
+ _OSVERSION=$(chroot "${CHROOTDIR}" /usr/bin/uname -U)
+ REVISION=$(chroot "${CHROOTDIR}" make -C /usr/src/release -V REVISION)
+ BRANCH=$(chroot "${CHROOTDIR}" make -C /usr/src/release -V BRANCH)
UNAME_r=${REVISION}-${BRANCH}
GITUNSETOPTS="CONTRIB CURL CVS GITWEB GUI HTMLDOCS"
GITUNSETOPTS="${GITUNSETOPTS} ICONV NLS P4 PERL"
@@ -296,24 +293,24 @@
PBUILD_FLAGS="${PBUILD_FLAGS} OSREL=${REVISION}"
PBUILD_FLAGS="${PBUILD_FLAGS} WRKDIRPREFIX=/tmp/ports"
PBUILD_FLAGS="${PBUILD_FLAGS} DISTDIR=/tmp/distfiles"
- eval chroot ${CHROOTDIR} env OPTIONS_UNSET=\"${GITUNSETOPTS}\" \
+ eval chroot "${CHROOTDIR}" env OPTIONS_UNSET=\"${GITUNSETOPTS}\" \
${PBUILD_FLAGS} \
make -C /usr/ports/devel/git FORCE_PKG_REGISTER=1 \
WRKDIRPREFIX=/tmp/ports \
DISTDIR=/tmp/distfiles \
install clean distclean
else
- eval chroot ${CHROOTDIR} env ASSUME_ALWAYS_YES=yes \
+ eval chroot "${CHROOTDIR}" env ASSUME_ALWAYS_YES=yes \
pkg install -y devel/git
- eval chroot ${CHROOTDIR} env ASSUME_ALWAYS_YES=yes \
+ eval chroot "${CHROOTDIR}" env ASSUME_ALWAYS_YES=yes \
pkg clean -y
fi
fi
if [ -n "${EMBEDDEDPORTS}" ]; then
- _OSVERSION=$(chroot ${CHROOTDIR} /usr/bin/uname -U)
- REVISION=$(chroot ${CHROOTDIR} make -C /usr/src/release -V REVISION)
- BRANCH=$(chroot ${CHROOTDIR} make -C /usr/src/release -V BRANCH)
+ _OSVERSION=$(chroot "${CHROOTDIR}" /usr/bin/uname -U)
+ REVISION=$(chroot "${CHROOTDIR}" make -C /usr/src/release -V REVISION)
+ BRANCH=$(chroot "${CHROOTDIR}" make -C /usr/src/release -V BRANCH)
UNAME_r=${REVISION}-${BRANCH}
PBUILD_FLAGS="OSVERSION=${_OSVERSION} BATCH=yes"
PBUILD_FLAGS="${PBUILD_FLAGS} UNAME_r=${UNAME_r}"
@@ -321,7 +318,7 @@
PBUILD_FLAGS="${PBUILD_FLAGS} WRKDIRPREFIX=/tmp/ports"
PBUILD_FLAGS="${PBUILD_FLAGS} DISTDIR=/tmp/distfiles"
for _PORT in ${EMBEDDEDPORTS}; do
- eval chroot ${CHROOTDIR} env ${PBUILD_FLAGS} make -C \
+ eval chroot "${CHROOTDIR}" env ${PBUILD_FLAGS} make -C \
/usr/ports/${_PORT} \
FORCE_PKG_REGISTER=1 deinstall install clean distclean
done
@@ -343,11 +340,11 @@
TARGET=${EMBEDDED_TARGET} \
TARGET_ARCH=${EMBEDDED_TARGET_ARCH}"
fi
- eval chroot ${CHROOTDIR} make -C /usr/src ${RELEASE_WMAKEFLAGS} buildworld
- eval chroot ${CHROOTDIR} make -C /usr/src ${RELEASE_KMAKEFLAGS} buildkernel
+ eval chroot "${CHROOTDIR}" make -C /usr/src ${RELEASE_WMAKEFLAGS} buildworld
+ eval chroot "${CHROOTDIR}" make -C /usr/src ${RELEASE_KMAKEFLAGS} buildkernel
if [ -n "${WITH_OCIIMAGES}" ]; then
mkdir -p ${CHROOT}/tmp/ports ${CHROOT}/tmp/distfiles
- eval chroot ${CHROOTDIR} make -C /usr/src ${RELEASE_WMAKEFLAGS} \
+ eval chroot "${CHROOTDIR}" make -C /usr/src ${RELEASE_WMAKEFLAGS} \
BOOTSTRAP_PKG_FROM_PORTS=YES packages
fi
@@ -359,19 +356,19 @@
load_target_env
if [ -n "${WITH_VMIMAGES}" ]; then
if [ -z "${VMFORMATS}" ]; then
- VMFORMATS="$(eval chroot ${CHROOTDIR} \
+ VMFORMATS="$(eval chroot "${CHROOTDIR}" \
make -C /usr/src/release -V VMFORMATS)"
fi
if [ -z "${VMSIZE}" ]; then
- VMSIZE="$(eval chroot ${CHROOTDIR} \
+ VMSIZE="$(eval chroot "${CHROOTDIR}" \
make -C /usr/src/release ${ARCH_FLAGS} -V VMSIZE)"
fi
RELEASE_RMAKEFLAGS="${RELEASE_RMAKEFLAGS} \
VMFORMATS=\"${VMFORMATS}\" VMSIZE=${VMSIZE}"
fi
- eval chroot ${CHROOTDIR} make -C /usr/src/release \
+ eval chroot "${CHROOTDIR}" make -C /usr/src/release \
${RELEASE_RMAKEFLAGS} release
- eval chroot ${CHROOTDIR} make -C /usr/src/release \
+ eval chroot "${CHROOTDIR}" make -C /usr/src/release \
${RELEASE_RMAKEFLAGS} install DESTDIR=/R \
WITH_COMPRESSED_IMAGES=${WITH_COMPRESSED_IMAGES} \
WITH_COMPRESSED_VMIMAGES=${WITH_COMPRESSED_VMIMAGES}
@@ -413,32 +410,32 @@
export MAKE_FLAGS="${MAKE_FLAGS} TARGET=${EMBEDDED_TARGET}"
export MAKE_FLAGS="${MAKE_FLAGS} TARGET_ARCH=${EMBEDDED_TARGET_ARCH}"
export MAKE_FLAGS="${MAKE_FLAGS} ${CONF_FILES}"
- eval chroot ${CHROOTDIR} env WITH_UNIFIED_OBJDIR=1 make ${MAKE_FLAGS} -C /usr/src/release obj
- export WORLDDIR="$(eval chroot ${CHROOTDIR} make ${MAKE_FLAGS} -C /usr/src/release -V WORLDDIR)"
- export OBJDIR="$(eval chroot ${CHROOTDIR} env WITH_UNIFIED_OBJDIR=1 make ${MAKE_FLAGS} -C /usr/src/release -V .OBJDIR)"
+ eval chroot "${CHROOTDIR}" env WITH_UNIFIED_OBJDIR=1 make ${MAKE_FLAGS} -C /usr/src/release obj
+ export WORLDDIR="$(eval chroot "${CHROOTDIR}" make ${MAKE_FLAGS} -C /usr/src/release -V WORLDDIR)"
+ export OBJDIR="$(eval chroot "${CHROOTDIR}" env WITH_UNIFIED_OBJDIR=1 make ${MAKE_FLAGS} -C /usr/src/release -V .OBJDIR)"
export DESTDIR="${OBJDIR}/${KERNEL}"
export IMGBASE="${CHROOTDIR}/${OBJDIR}/${BOARDNAME}.img"
export OSRELEASE="$(eval chroot ${CHROOTDIR} make ${MAKE_FLAGS} -C /usr/src/release \
TARGET=${EMBEDDED_TARGET} TARGET_ARCH=${EMBEDDED_TARGET_ARCH} \
-V OSRELEASE)"
- chroot ${CHROOTDIR} mkdir -p ${DESTDIR}
- chroot ${CHROOTDIR} truncate -s ${IMAGE_SIZE} ${IMGBASE##${CHROOTDIR}}
+ chroot "${CHROOTDIR}" mkdir -p ${DESTDIR}
+ chroot "${CHROOTDIR}" truncate -s ${IMAGE_SIZE} "${IMGBASE##${CHROOTDIR}}"
export mddev=$(chroot ${CHROOTDIR} \
- mdconfig -f ${IMGBASE##${CHROOTDIR}} ${MD_ARGS})
+ mdconfig -f "${IMGBASE##${CHROOTDIR}}" ${MD_ARGS})
arm_create_disk
arm_install_base
arm_install_boot
arm_install_uboot
mdconfig -d -u ${mddev}
- chroot ${CHROOTDIR} rmdir ${DESTDIR}
- mv ${IMGBASE} ${CHROOTDIR}/${OBJDIR}/${OSRELEASE}-${BOARDNAME}.img
- chroot ${CHROOTDIR} mkdir -p /R
- chroot ${CHROOTDIR} cp -p ${OBJDIR}/${OSRELEASE}-${BOARDNAME}.img \
- /R/${OSRELEASE}-${BOARDNAME}.img
- chroot ${CHROOTDIR} xz -T ${XZ_THREADS} /R/${OSRELEASE}-${BOARDNAME}.img
- cd ${CHROOTDIR}/R && sha512 ${OSRELEASE}* \
+ chroot "${CHROOTDIR}" rmdir "${DESTDIR}"
+ mv "${IMGBASE}" "${CHROOTDIR}/${OBJDIR}/${OSRELEASE}-${BOARDNAME}.img"
+ chroot "${CHROOTDIR}" mkdir -p /R
+ chroot "${CHROOTDIR}" cp -p "${OBJDIR}/${OSRELEASE}-${BOARDNAME}.img" \
+ "/R/${OSRELEASE}-${BOARDNAME}.img"
+ chroot "${CHROOTDIR}" xz -T ${XZ_THREADS} "/R/${OSRELEASE}-${BOARDNAME}.img"
+ cd "${CHROOTDIR}/R" && sha512 ${OSRELEASE}* \
> CHECKSUM.SHA512
- cd ${CHROOTDIR}/R && sha256 ${OSRELEASE}* \
+ cd "${CHROOTDIR}/R" && sha256 ${OSRELEASE}* \
> CHECKSUM.SHA256
return 0
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Feb 26, 2:36 AM (16 h, 26 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28966332
Default Alt Text
D55451.id.diff (10 KB)
Attached To
Mode
D55451: release.sh: quote paths that might contain spaces
Attached
Detach File
Event Timeline
Log In to Comment