2022-07-28 17:47 UTCに、Fabian Groffen <grob...@gentoo.org>は書いた: > bin/isolated-functions.sh does the following bit: > > if [[ -z ${USERLAND} ]] ; then > case $(uname -s) in > *BSD|DragonFly) > export USERLAND="BSD" > ;; > *) > export USERLAND="GNU" > ;; > esac > fi > > (after which it uses USERLAND for a single purpose, to export XARGS to > either GNU '[g]xargs -r', or BSD 'xargs') > > This bit is problematic for Prefix, because Prefix may run on *BSD, but > use USERLAND=GNU.
But this code starts with 'if [[ -z ${USERLAND} ]]', so it should not be run when USERLAND="GNU". USERLAND="GNU" is set in make.defaults, which is parsed by Portage early (at Python side) and these values are passed by Portage to ebuild.sh subprocess.