summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bin/isolated-functions.sh11
-rw-r--r--pym/portage.py2
-rw-r--r--pym/portage_data.py3
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):