public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/catalyst:wip/mattst88 commit in: targets/support/, targets/netboot/, targets/stage1/, targets/embedded/
  2021-01-18 19:53 [gentoo-commits] proj/catalyst:pending/mattst88 commit in: targets/embedded/, targets/support/, targets/netboot/, targets/stage1/ Matt Turner
@ 2020-12-19 19:56 ` Matt Turner
  2020-12-27 23:15 ` [gentoo-commits] proj/catalyst:master commit in: targets/netboot/, targets/embedded/, targets/stage1/, targets/support/ Matt Turner
  1 sibling, 0 replies; 3+ messages in thread
From: Matt Turner @ 2020-12-19 19:56 UTC (permalink / raw
  To: gentoo-commits

commit:     9abe4ca574e11fe2c3810bac44789143399798a7
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 19 00:22:09 2020 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Dec 19 19:25:14 2020 +0000
URL:        https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=9abe4ca5

targets: Remove make_destpath() function

It just read clst_root_path, exported it as ROOT, and ensured that a
directory existed at $ROOT. Setting and resetting clst_* variables adds
a lot of confusion, so just use ROOT directly.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 targets/embedded/chroot.sh          | 15 ++++++---------
 targets/netboot/controller.sh       |  2 +-
 targets/netboot/pkg.sh              |  2 +-
 targets/stage1/chroot.sh            | 12 +++++++-----
 targets/stage1/controller.sh        |  4 ++--
 targets/support/chroot-functions.sh | 32 ++++++--------------------------
 6 files changed, 23 insertions(+), 44 deletions(-)

diff --git a/targets/embedded/chroot.sh b/targets/embedded/chroot.sh
index 2fbba278..11068388 100755
--- a/targets/embedded/chroot.sh
+++ b/targets/embedded/chroot.sh
@@ -2,14 +2,11 @@
 
 source /tmp/chroot-functions.sh
 
-# Setup the environment
-export DESTROOT="${clst_root_path}"
-export clst_root_path="/"
+echo "Installing dependencies..."
+ROOT=/ run_merge -o "${clst_embedded_packages}"
 
-echo "Installing dependencies into ${DESTROOT}..."
-run_merge -o "${clst_embedded_packages}"
+export ROOT="${clst_root_path}"
+mkdir -p "$ROOT"
 
-export clst_root_path="${DESTROOT}"
-export INSTALL_MASK="${clst_install_mask}"
-
-run_merge -1 -O "${clst_embedded_packages}"
+INSTALL_MASK="${clst_install_mask}" \
+	run_merge -1 -O "${clst_embedded_packages}"

diff --git a/targets/netboot/controller.sh b/targets/netboot/controller.sh
index 9a6e14d2..cc946c2c 100755
--- a/targets/netboot/controller.sh
+++ b/targets/netboot/controller.sh
@@ -6,7 +6,7 @@ case ${1} in
 	build_packages)
 		echo ">>> Building packages ..."
 		shift
-		clst_root_path="/" \
+		ROOT="/" \
 		clst_packages="$*" \
 		exec_in_chroot \
 		${clst_shdir}/${clst_target}/pkg.sh

diff --git a/targets/netboot/pkg.sh b/targets/netboot/pkg.sh
index 2ec27062..2ad9491c 100755
--- a/targets/netboot/pkg.sh
+++ b/targets/netboot/pkg.sh
@@ -10,4 +10,4 @@ show_debug
 
 # START BUILD
 
-run_merge ${clst_packages}
+ROOT="$ROOT" run_merge ${clst_packages}

diff --git a/targets/stage1/chroot.sh b/targets/stage1/chroot.sh
index 33d5c3c9..b733fc57 100755
--- a/targets/stage1/chroot.sh
+++ b/targets/stage1/chroot.sh
@@ -33,9 +33,9 @@ if [ -n "${clst_update_seed}" ]; then
 	if [ "${clst_update_seed}" == "yes" ]; then
 		echo "Updating seed stage..."
 		if [ -n "${clst_update_seed_command}" ]; then
-			clst_root_path=/ run_merge --buildpkg=n "${clst_update_seed_command}"
+			ROOT=/ run_merge --buildpkg=n "${clst_update_seed_command}"
 		else
-			clst_root_path=/ run_merge --update --deep --newuse --complete-graph --rebuild-if-new-ver gcc
+			ROOT=/ run_merge --update --deep --newuse --complete-graph --rebuild-if-new-ver gcc
 		fi
 	elif [ "${clst_update_seed}" != "no" ]; then
 		echo "Invalid setting for update_seed: ${clst_update_seed}"
@@ -50,7 +50,9 @@ fi
 
 # Clear USE
 [ -e ${clst_make_conf} ] && sed -i -e "/^USE=\"${BINDIST} ${USE}\"/d" ${clst_make_conf}
-make_destpath "${clst_root_path}"
+
+export ROOT="${clst_root_path}"
+mkdir -p "$ROOT"
 
 ## START BUILD
 # First, we drop in a known-good baselayout
@@ -59,7 +61,7 @@ run_merge --oneshot --nodeps sys-apps/baselayout
 sed -i "/USE=\"${USE} -build\"/d" ${clst_make_conf}
 
 echo "$locales" > /etc/locale.gen
-for etc in /etc "${clst_root_path}"/etc; do
+for etc in /etc "$ROOT"/etc; do
 	echo "LANG=C.UTF8" > ${etc}/env.d/02locale
 done
 update_env_settings
@@ -84,7 +86,7 @@ run_merge --oneshot "${buildpkgs[@]}"
 # not run locale-gen when ROOT is set. Since we've set LANG, we need to run
 # locale-gen explicitly.
 if [ -x "$(command -v locale-gen)" ]; then
-	locale-gen --destdir "${clst_root_path}"/ || die "locale-gen failed"
+	locale-gen --destdir "$ROOT"/ || die "locale-gen failed"
 fi
 
 # Why are we removing these? Don't we need them for final make.conf?

diff --git a/targets/stage1/controller.sh b/targets/stage1/controller.sh
index f9dd4b9b..ab127114 100755
--- a/targets/stage1/controller.sh
+++ b/targets/stage1/controller.sh
@@ -10,8 +10,8 @@ case "$1" in
 		cp "${clst_shdir}/stage1/build.py" "${clst_chroot_path}/tmp"
 
 		# Setup "ROOT in chroot" dir
-		install -d "${clst_chroot_path}/${clst_root_path}/etc"
-		install -d "${clst_chroot_path}/${clst_root_path}${clst_port_conf}"
+		install -d "${clst_stage_path}/etc"
+		install -d "${clst_stage_path}/${clst_port_conf}"
 
 		# Setup make.conf and make.profile link in "ROOT in chroot":
 		copy_to_chroot "${clst_chroot_path}${clst_make_conf}" "${clst_root_path}${clst_port_conf}"

diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh
index d125756f..2aec018e 100755
--- a/targets/support/chroot-functions.sh
+++ b/targets/support/chroot-functions.sh
@@ -60,7 +60,7 @@ setup_features() {
 	if [ -n "${clst_CCACHE}" ]
 	then
 		features+=(ccache)
-		clst_root_path=/ run_merge --oneshot --noreplace dev-util/ccache
+		ROOT=/ run_merge --oneshot --noreplace dev-util/ccache
 	fi
 
 	if [ -n "${clst_DISTCC}" ]
@@ -75,9 +75,9 @@ setup_features() {
 		# reinstall if it isn't found.
 		if [ "$(getent passwd distcc | cut -d: -f1)" != "distcc" ]
 		then
-			clst_root_path=/ run_merge --oneshot sys-devel/distcc
+			ROOT=/ run_merge --oneshot sys-devel/distcc
 		else
-			clst_root_path=/ run_merge --oneshot --noreplace sys-devel/distcc
+			ROOT=/ run_merge --oneshot --noreplace sys-devel/distcc
 		fi
 		sed -i '/USE="${USE} -avahi -gtk -gnome"/d' ${clst_make_conf}
 		mkdir -p /etc/distcc
@@ -96,7 +96,7 @@ setup_features() {
 
 	if [ -n "${clst_ICECREAM}" ]
 	then
-		clst_root_path=/ run_merge --oneshot --noreplace sys-devel/icecream
+		ROOT=/ run_merge --oneshot --noreplace sys-devel/icecream
 
 		# This sets up automatic cross-icecc-fu according to
 		# http://www.gentoo-wiki.info/HOWTO_Setup_An_ICECREAM_Compile_Cluster
@@ -193,7 +193,6 @@ cleanup_icecream() {
 }
 
 cleanup_stages() {
-	make_destpath
 	if [ -n "${clst_DISTCC}" ]
 	then
 		cleanup_distcc
@@ -238,26 +237,7 @@ die() {
 	exit 1
 }
 
-make_destpath() {
-	# ROOT is / by default, so remove any ROOT= settings from make.conf
-	sed -i '/ROOT=/d' ${clst_make_conf}
-	export ROOT=/
-	if [ "${1}" != "/" -a -n "${1}" ]
-	then
-		echo "ROOT=\"${1}\"" >> ${clst_make_conf}
-		export ROOT=${1}
-	fi
-	if [ ! -d ${ROOT} ]
-	then
-		install -d ${ROOT}
-	fi
-}
-
 run_merge() {
-	# Sets up the ROOT= parameter
-	# with no options ROOT=/
-	make_destpath ${clst_root_path}
-
 	export EMERGE_WARNING_DELAY=0
 	export CLEAN_DELAY=0
 	[[ $CONFIG_PROTECT != "-*"* ]] && export CONFIG_PROTECT="-*"
@@ -265,12 +245,12 @@ run_merge() {
 	if [ -n "${clst_VERBOSE}" ]
 	then
 		echo "ROOT=${ROOT} emerge ${emerge_opts[@]} -pt $@" || exit 1
-		emerge ${emerge_opts[@]} -pt $@ || exit 3
+		ROOT="$ROOT" emerge ${emerge_opts[@]} -pt $@ || exit 3
 	fi
 
 	echo "emerge ${emerge_opts[@]} $@" || exit 1
 
-	emerge ${emerge_opts[@]} $@ || exit 1
+	ROOT="$ROOT" emerge ${emerge_opts[@]} $@ || exit 1
 }
 
 show_debug() {


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] proj/catalyst:master commit in: targets/netboot/, targets/embedded/, targets/stage1/, targets/support/
  2021-01-18 19:53 [gentoo-commits] proj/catalyst:pending/mattst88 commit in: targets/embedded/, targets/support/, targets/netboot/, targets/stage1/ Matt Turner
  2020-12-19 19:56 ` [gentoo-commits] proj/catalyst:wip/mattst88 commit in: targets/support/, targets/netboot/, targets/stage1/, targets/embedded/ Matt Turner
@ 2020-12-27 23:15 ` Matt Turner
  1 sibling, 0 replies; 3+ messages in thread
From: Matt Turner @ 2020-12-27 23:15 UTC (permalink / raw
  To: gentoo-commits

commit:     9abe4ca574e11fe2c3810bac44789143399798a7
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 19 00:22:09 2020 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Dec 19 19:25:14 2020 +0000
URL:        https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=9abe4ca5

targets: Remove make_destpath() function

It just read clst_root_path, exported it as ROOT, and ensured that a
directory existed at $ROOT. Setting and resetting clst_* variables adds
a lot of confusion, so just use ROOT directly.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 targets/embedded/chroot.sh          | 15 ++++++---------
 targets/netboot/controller.sh       |  2 +-
 targets/netboot/pkg.sh              |  2 +-
 targets/stage1/chroot.sh            | 12 +++++++-----
 targets/stage1/controller.sh        |  4 ++--
 targets/support/chroot-functions.sh | 32 ++++++--------------------------
 6 files changed, 23 insertions(+), 44 deletions(-)

diff --git a/targets/embedded/chroot.sh b/targets/embedded/chroot.sh
index 2fbba278..11068388 100755
--- a/targets/embedded/chroot.sh
+++ b/targets/embedded/chroot.sh
@@ -2,14 +2,11 @@
 
 source /tmp/chroot-functions.sh
 
-# Setup the environment
-export DESTROOT="${clst_root_path}"
-export clst_root_path="/"
+echo "Installing dependencies..."
+ROOT=/ run_merge -o "${clst_embedded_packages}"
 
-echo "Installing dependencies into ${DESTROOT}..."
-run_merge -o "${clst_embedded_packages}"
+export ROOT="${clst_root_path}"
+mkdir -p "$ROOT"
 
-export clst_root_path="${DESTROOT}"
-export INSTALL_MASK="${clst_install_mask}"
-
-run_merge -1 -O "${clst_embedded_packages}"
+INSTALL_MASK="${clst_install_mask}" \
+	run_merge -1 -O "${clst_embedded_packages}"

diff --git a/targets/netboot/controller.sh b/targets/netboot/controller.sh
index 9a6e14d2..cc946c2c 100755
--- a/targets/netboot/controller.sh
+++ b/targets/netboot/controller.sh
@@ -6,7 +6,7 @@ case ${1} in
 	build_packages)
 		echo ">>> Building packages ..."
 		shift
-		clst_root_path="/" \
+		ROOT="/" \
 		clst_packages="$*" \
 		exec_in_chroot \
 		${clst_shdir}/${clst_target}/pkg.sh

diff --git a/targets/netboot/pkg.sh b/targets/netboot/pkg.sh
index 2ec27062..2ad9491c 100755
--- a/targets/netboot/pkg.sh
+++ b/targets/netboot/pkg.sh
@@ -10,4 +10,4 @@ show_debug
 
 # START BUILD
 
-run_merge ${clst_packages}
+ROOT="$ROOT" run_merge ${clst_packages}

diff --git a/targets/stage1/chroot.sh b/targets/stage1/chroot.sh
index 33d5c3c9..b733fc57 100755
--- a/targets/stage1/chroot.sh
+++ b/targets/stage1/chroot.sh
@@ -33,9 +33,9 @@ if [ -n "${clst_update_seed}" ]; then
 	if [ "${clst_update_seed}" == "yes" ]; then
 		echo "Updating seed stage..."
 		if [ -n "${clst_update_seed_command}" ]; then
-			clst_root_path=/ run_merge --buildpkg=n "${clst_update_seed_command}"
+			ROOT=/ run_merge --buildpkg=n "${clst_update_seed_command}"
 		else
-			clst_root_path=/ run_merge --update --deep --newuse --complete-graph --rebuild-if-new-ver gcc
+			ROOT=/ run_merge --update --deep --newuse --complete-graph --rebuild-if-new-ver gcc
 		fi
 	elif [ "${clst_update_seed}" != "no" ]; then
 		echo "Invalid setting for update_seed: ${clst_update_seed}"
@@ -50,7 +50,9 @@ fi
 
 # Clear USE
 [ -e ${clst_make_conf} ] && sed -i -e "/^USE=\"${BINDIST} ${USE}\"/d" ${clst_make_conf}
-make_destpath "${clst_root_path}"
+
+export ROOT="${clst_root_path}"
+mkdir -p "$ROOT"
 
 ## START BUILD
 # First, we drop in a known-good baselayout
@@ -59,7 +61,7 @@ run_merge --oneshot --nodeps sys-apps/baselayout
 sed -i "/USE=\"${USE} -build\"/d" ${clst_make_conf}
 
 echo "$locales" > /etc/locale.gen
-for etc in /etc "${clst_root_path}"/etc; do
+for etc in /etc "$ROOT"/etc; do
 	echo "LANG=C.UTF8" > ${etc}/env.d/02locale
 done
 update_env_settings
@@ -84,7 +86,7 @@ run_merge --oneshot "${buildpkgs[@]}"
 # not run locale-gen when ROOT is set. Since we've set LANG, we need to run
 # locale-gen explicitly.
 if [ -x "$(command -v locale-gen)" ]; then
-	locale-gen --destdir "${clst_root_path}"/ || die "locale-gen failed"
+	locale-gen --destdir "$ROOT"/ || die "locale-gen failed"
 fi
 
 # Why are we removing these? Don't we need them for final make.conf?

diff --git a/targets/stage1/controller.sh b/targets/stage1/controller.sh
index f9dd4b9b..ab127114 100755
--- a/targets/stage1/controller.sh
+++ b/targets/stage1/controller.sh
@@ -10,8 +10,8 @@ case "$1" in
 		cp "${clst_shdir}/stage1/build.py" "${clst_chroot_path}/tmp"
 
 		# Setup "ROOT in chroot" dir
-		install -d "${clst_chroot_path}/${clst_root_path}/etc"
-		install -d "${clst_chroot_path}/${clst_root_path}${clst_port_conf}"
+		install -d "${clst_stage_path}/etc"
+		install -d "${clst_stage_path}/${clst_port_conf}"
 
 		# Setup make.conf and make.profile link in "ROOT in chroot":
 		copy_to_chroot "${clst_chroot_path}${clst_make_conf}" "${clst_root_path}${clst_port_conf}"

diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh
index d125756f..2aec018e 100755
--- a/targets/support/chroot-functions.sh
+++ b/targets/support/chroot-functions.sh
@@ -60,7 +60,7 @@ setup_features() {
 	if [ -n "${clst_CCACHE}" ]
 	then
 		features+=(ccache)
-		clst_root_path=/ run_merge --oneshot --noreplace dev-util/ccache
+		ROOT=/ run_merge --oneshot --noreplace dev-util/ccache
 	fi
 
 	if [ -n "${clst_DISTCC}" ]
@@ -75,9 +75,9 @@ setup_features() {
 		# reinstall if it isn't found.
 		if [ "$(getent passwd distcc | cut -d: -f1)" != "distcc" ]
 		then
-			clst_root_path=/ run_merge --oneshot sys-devel/distcc
+			ROOT=/ run_merge --oneshot sys-devel/distcc
 		else
-			clst_root_path=/ run_merge --oneshot --noreplace sys-devel/distcc
+			ROOT=/ run_merge --oneshot --noreplace sys-devel/distcc
 		fi
 		sed -i '/USE="${USE} -avahi -gtk -gnome"/d' ${clst_make_conf}
 		mkdir -p /etc/distcc
@@ -96,7 +96,7 @@ setup_features() {
 
 	if [ -n "${clst_ICECREAM}" ]
 	then
-		clst_root_path=/ run_merge --oneshot --noreplace sys-devel/icecream
+		ROOT=/ run_merge --oneshot --noreplace sys-devel/icecream
 
 		# This sets up automatic cross-icecc-fu according to
 		# http://www.gentoo-wiki.info/HOWTO_Setup_An_ICECREAM_Compile_Cluster
@@ -193,7 +193,6 @@ cleanup_icecream() {
 }
 
 cleanup_stages() {
-	make_destpath
 	if [ -n "${clst_DISTCC}" ]
 	then
 		cleanup_distcc
@@ -238,26 +237,7 @@ die() {
 	exit 1
 }
 
-make_destpath() {
-	# ROOT is / by default, so remove any ROOT= settings from make.conf
-	sed -i '/ROOT=/d' ${clst_make_conf}
-	export ROOT=/
-	if [ "${1}" != "/" -a -n "${1}" ]
-	then
-		echo "ROOT=\"${1}\"" >> ${clst_make_conf}
-		export ROOT=${1}
-	fi
-	if [ ! -d ${ROOT} ]
-	then
-		install -d ${ROOT}
-	fi
-}
-
 run_merge() {
-	# Sets up the ROOT= parameter
-	# with no options ROOT=/
-	make_destpath ${clst_root_path}
-
 	export EMERGE_WARNING_DELAY=0
 	export CLEAN_DELAY=0
 	[[ $CONFIG_PROTECT != "-*"* ]] && export CONFIG_PROTECT="-*"
@@ -265,12 +245,12 @@ run_merge() {
 	if [ -n "${clst_VERBOSE}" ]
 	then
 		echo "ROOT=${ROOT} emerge ${emerge_opts[@]} -pt $@" || exit 1
-		emerge ${emerge_opts[@]} -pt $@ || exit 3
+		ROOT="$ROOT" emerge ${emerge_opts[@]} -pt $@ || exit 3
 	fi
 
 	echo "emerge ${emerge_opts[@]} $@" || exit 1
 
-	emerge ${emerge_opts[@]} $@ || exit 1
+	ROOT="$ROOT" emerge ${emerge_opts[@]} $@ || exit 1
 }
 
 show_debug() {


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] proj/catalyst:pending/mattst88 commit in: targets/embedded/, targets/support/, targets/netboot/, targets/stage1/
@ 2021-01-18 19:53 Matt Turner
  2020-12-19 19:56 ` [gentoo-commits] proj/catalyst:wip/mattst88 commit in: targets/support/, targets/netboot/, targets/stage1/, targets/embedded/ Matt Turner
  2020-12-27 23:15 ` [gentoo-commits] proj/catalyst:master commit in: targets/netboot/, targets/embedded/, targets/stage1/, targets/support/ Matt Turner
  0 siblings, 2 replies; 3+ messages in thread
From: Matt Turner @ 2021-01-18 19:53 UTC (permalink / raw
  To: gentoo-commits

commit:     9abe4ca574e11fe2c3810bac44789143399798a7
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 19 00:22:09 2020 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Dec 19 19:25:14 2020 +0000
URL:        https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=9abe4ca5

targets: Remove make_destpath() function

It just read clst_root_path, exported it as ROOT, and ensured that a
directory existed at $ROOT. Setting and resetting clst_* variables adds
a lot of confusion, so just use ROOT directly.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 targets/embedded/chroot.sh          | 15 ++++++---------
 targets/netboot/controller.sh       |  2 +-
 targets/netboot/pkg.sh              |  2 +-
 targets/stage1/chroot.sh            | 12 +++++++-----
 targets/stage1/controller.sh        |  4 ++--
 targets/support/chroot-functions.sh | 32 ++++++--------------------------
 6 files changed, 23 insertions(+), 44 deletions(-)

diff --git a/targets/embedded/chroot.sh b/targets/embedded/chroot.sh
index 2fbba278..11068388 100755
--- a/targets/embedded/chroot.sh
+++ b/targets/embedded/chroot.sh
@@ -2,14 +2,11 @@
 
 source /tmp/chroot-functions.sh
 
-# Setup the environment
-export DESTROOT="${clst_root_path}"
-export clst_root_path="/"
+echo "Installing dependencies..."
+ROOT=/ run_merge -o "${clst_embedded_packages}"
 
-echo "Installing dependencies into ${DESTROOT}..."
-run_merge -o "${clst_embedded_packages}"
+export ROOT="${clst_root_path}"
+mkdir -p "$ROOT"
 
-export clst_root_path="${DESTROOT}"
-export INSTALL_MASK="${clst_install_mask}"
-
-run_merge -1 -O "${clst_embedded_packages}"
+INSTALL_MASK="${clst_install_mask}" \
+	run_merge -1 -O "${clst_embedded_packages}"

diff --git a/targets/netboot/controller.sh b/targets/netboot/controller.sh
index 9a6e14d2..cc946c2c 100755
--- a/targets/netboot/controller.sh
+++ b/targets/netboot/controller.sh
@@ -6,7 +6,7 @@ case ${1} in
 	build_packages)
 		echo ">>> Building packages ..."
 		shift
-		clst_root_path="/" \
+		ROOT="/" \
 		clst_packages="$*" \
 		exec_in_chroot \
 		${clst_shdir}/${clst_target}/pkg.sh

diff --git a/targets/netboot/pkg.sh b/targets/netboot/pkg.sh
index 2ec27062..2ad9491c 100755
--- a/targets/netboot/pkg.sh
+++ b/targets/netboot/pkg.sh
@@ -10,4 +10,4 @@ show_debug
 
 # START BUILD
 
-run_merge ${clst_packages}
+ROOT="$ROOT" run_merge ${clst_packages}

diff --git a/targets/stage1/chroot.sh b/targets/stage1/chroot.sh
index 33d5c3c9..b733fc57 100755
--- a/targets/stage1/chroot.sh
+++ b/targets/stage1/chroot.sh
@@ -33,9 +33,9 @@ if [ -n "${clst_update_seed}" ]; then
 	if [ "${clst_update_seed}" == "yes" ]; then
 		echo "Updating seed stage..."
 		if [ -n "${clst_update_seed_command}" ]; then
-			clst_root_path=/ run_merge --buildpkg=n "${clst_update_seed_command}"
+			ROOT=/ run_merge --buildpkg=n "${clst_update_seed_command}"
 		else
-			clst_root_path=/ run_merge --update --deep --newuse --complete-graph --rebuild-if-new-ver gcc
+			ROOT=/ run_merge --update --deep --newuse --complete-graph --rebuild-if-new-ver gcc
 		fi
 	elif [ "${clst_update_seed}" != "no" ]; then
 		echo "Invalid setting for update_seed: ${clst_update_seed}"
@@ -50,7 +50,9 @@ fi
 
 # Clear USE
 [ -e ${clst_make_conf} ] && sed -i -e "/^USE=\"${BINDIST} ${USE}\"/d" ${clst_make_conf}
-make_destpath "${clst_root_path}"
+
+export ROOT="${clst_root_path}"
+mkdir -p "$ROOT"
 
 ## START BUILD
 # First, we drop in a known-good baselayout
@@ -59,7 +61,7 @@ run_merge --oneshot --nodeps sys-apps/baselayout
 sed -i "/USE=\"${USE} -build\"/d" ${clst_make_conf}
 
 echo "$locales" > /etc/locale.gen
-for etc in /etc "${clst_root_path}"/etc; do
+for etc in /etc "$ROOT"/etc; do
 	echo "LANG=C.UTF8" > ${etc}/env.d/02locale
 done
 update_env_settings
@@ -84,7 +86,7 @@ run_merge --oneshot "${buildpkgs[@]}"
 # not run locale-gen when ROOT is set. Since we've set LANG, we need to run
 # locale-gen explicitly.
 if [ -x "$(command -v locale-gen)" ]; then
-	locale-gen --destdir "${clst_root_path}"/ || die "locale-gen failed"
+	locale-gen --destdir "$ROOT"/ || die "locale-gen failed"
 fi
 
 # Why are we removing these? Don't we need them for final make.conf?

diff --git a/targets/stage1/controller.sh b/targets/stage1/controller.sh
index f9dd4b9b..ab127114 100755
--- a/targets/stage1/controller.sh
+++ b/targets/stage1/controller.sh
@@ -10,8 +10,8 @@ case "$1" in
 		cp "${clst_shdir}/stage1/build.py" "${clst_chroot_path}/tmp"
 
 		# Setup "ROOT in chroot" dir
-		install -d "${clst_chroot_path}/${clst_root_path}/etc"
-		install -d "${clst_chroot_path}/${clst_root_path}${clst_port_conf}"
+		install -d "${clst_stage_path}/etc"
+		install -d "${clst_stage_path}/${clst_port_conf}"
 
 		# Setup make.conf and make.profile link in "ROOT in chroot":
 		copy_to_chroot "${clst_chroot_path}${clst_make_conf}" "${clst_root_path}${clst_port_conf}"

diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh
index d125756f..2aec018e 100755
--- a/targets/support/chroot-functions.sh
+++ b/targets/support/chroot-functions.sh
@@ -60,7 +60,7 @@ setup_features() {
 	if [ -n "${clst_CCACHE}" ]
 	then
 		features+=(ccache)
-		clst_root_path=/ run_merge --oneshot --noreplace dev-util/ccache
+		ROOT=/ run_merge --oneshot --noreplace dev-util/ccache
 	fi
 
 	if [ -n "${clst_DISTCC}" ]
@@ -75,9 +75,9 @@ setup_features() {
 		# reinstall if it isn't found.
 		if [ "$(getent passwd distcc | cut -d: -f1)" != "distcc" ]
 		then
-			clst_root_path=/ run_merge --oneshot sys-devel/distcc
+			ROOT=/ run_merge --oneshot sys-devel/distcc
 		else
-			clst_root_path=/ run_merge --oneshot --noreplace sys-devel/distcc
+			ROOT=/ run_merge --oneshot --noreplace sys-devel/distcc
 		fi
 		sed -i '/USE="${USE} -avahi -gtk -gnome"/d' ${clst_make_conf}
 		mkdir -p /etc/distcc
@@ -96,7 +96,7 @@ setup_features() {
 
 	if [ -n "${clst_ICECREAM}" ]
 	then
-		clst_root_path=/ run_merge --oneshot --noreplace sys-devel/icecream
+		ROOT=/ run_merge --oneshot --noreplace sys-devel/icecream
 
 		# This sets up automatic cross-icecc-fu according to
 		# http://www.gentoo-wiki.info/HOWTO_Setup_An_ICECREAM_Compile_Cluster
@@ -193,7 +193,6 @@ cleanup_icecream() {
 }
 
 cleanup_stages() {
-	make_destpath
 	if [ -n "${clst_DISTCC}" ]
 	then
 		cleanup_distcc
@@ -238,26 +237,7 @@ die() {
 	exit 1
 }
 
-make_destpath() {
-	# ROOT is / by default, so remove any ROOT= settings from make.conf
-	sed -i '/ROOT=/d' ${clst_make_conf}
-	export ROOT=/
-	if [ "${1}" != "/" -a -n "${1}" ]
-	then
-		echo "ROOT=\"${1}\"" >> ${clst_make_conf}
-		export ROOT=${1}
-	fi
-	if [ ! -d ${ROOT} ]
-	then
-		install -d ${ROOT}
-	fi
-}
-
 run_merge() {
-	# Sets up the ROOT= parameter
-	# with no options ROOT=/
-	make_destpath ${clst_root_path}
-
 	export EMERGE_WARNING_DELAY=0
 	export CLEAN_DELAY=0
 	[[ $CONFIG_PROTECT != "-*"* ]] && export CONFIG_PROTECT="-*"
@@ -265,12 +245,12 @@ run_merge() {
 	if [ -n "${clst_VERBOSE}" ]
 	then
 		echo "ROOT=${ROOT} emerge ${emerge_opts[@]} -pt $@" || exit 1
-		emerge ${emerge_opts[@]} -pt $@ || exit 3
+		ROOT="$ROOT" emerge ${emerge_opts[@]} -pt $@ || exit 3
 	fi
 
 	echo "emerge ${emerge_opts[@]} $@" || exit 1
 
-	emerge ${emerge_opts[@]} $@ || exit 1
+	ROOT="$ROOT" emerge ${emerge_opts[@]} $@ || exit 1
 }
 
 show_debug() {


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-01-18 19:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-18 19:53 [gentoo-commits] proj/catalyst:pending/mattst88 commit in: targets/embedded/, targets/support/, targets/netboot/, targets/stage1/ Matt Turner
2020-12-19 19:56 ` [gentoo-commits] proj/catalyst:wip/mattst88 commit in: targets/support/, targets/netboot/, targets/stage1/, targets/embedded/ Matt Turner
2020-12-27 23:15 ` [gentoo-commits] proj/catalyst:master commit in: targets/netboot/, targets/embedded/, targets/stage1/, targets/support/ Matt Turner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox