diff options
-rw-r--r-- | bin/isolated-functions.sh | 11 | ||||
-rw-r--r-- | pym/portage.py | 2 | ||||
-rw-r--r-- | pym/portage_data.py | 3 |
3 files changed, 12 insertions, 4 deletions
diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh index e06fbb826..3290654a6 100644 --- a/bin/isolated-functions.sh +++ b/bin/isolated-functions.sh @@ -375,6 +375,17 @@ case "${NOCOLOR:-false}" in ;; esac +if [[ -z ${XARGS} ]] ; then + case ${USERLAND} in + BSD|Darwin) + export XARGS="xargs" + ;; + *) + export XARGS="xargs -r" + ;; + esac +fi + has() { hasq "$@" } diff --git a/pym/portage.py b/pym/portage.py index 4524c049b..7b7a5bead 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -4508,7 +4508,7 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0, if env_stat: mysettings._filter_calling_env = True else: - for var in "ARCH", "USERLAND", "XARGS": + for var in "ARCH", "USERLAND": value = mysettings.get(var) if value and value.strip(): continue diff --git a/pym/portage_data.py b/pym/portage_data.py index 5cb88b385..3421d9b9d 100644 --- a/pym/portage_data.py +++ b/pym/portage_data.py @@ -20,15 +20,12 @@ if ostype == "Linux" or \ ostype.lower().startswith("gnu") or \ ostype.lower().endswith("gnu"): userland="GNU" - os.environ["XARGS"]="xargs -r" elif ostype == "Darwin": userland="Darwin" - os.environ["XARGS"]="xargs" def lchown(*pos_args, **key_args): pass elif ostype.endswith("BSD") or ostype =="DragonFly": userland="BSD" - os.environ["XARGS"]="xargs" if not lchown: if "lchown" in dir(os): |