As Prefix matures, it is more and more self-contained. Host binaries is no longer needed to get an ebuild working. Actually, host binaries causes more false detections than convenience to Prefix portage: the false detection of a library is usually hard to debug or to reproduce in a developers' test environment, especially when an ebuild unexpectedly linking against host libraries builds but only exposes random runtime issues. Therefore I propose changing our default configuration in Prefix portage, not to append EXTRA_PATH=/usr/bin:/bin to PATH ($EPREFIX/usr/share/portage/config/make.globals). As we are maintaining many patches to the build system to strip /usr/bin:/bin, the rationale of the change is justified by our established practice. When we do need host binaries, it could be done explicitly by a virtual ebuild, the same way as sys-devel/native-cctools. Reproducible: Always
no, OSX on Solaris or Mac OS X will *always* need tools from the host, for the prefix simply can't provide them.
(In reply to Fabian Groffen from comment #1) > no, OSX on Solaris or Mac OS X will *always* need tools from the host, for > the prefix simply can't provide them. What kind of tools? Can that be introduced via symlinks or wrappers like sys-devel/native-cctools?
for instance ps But perhaps it is best to just try to rebuild world on a system with EXTRA_PATH set to "", see the ebuild, it's rather simple these days.
Understood. I will set EXTRA_PATH to "" on linux-standalone (aka. rap) profiles as a starting point, to evaluate the practice.
via profiles might be a smart idea indeed, perhaps better call it PORTAGE_EXTRA_PATH or something then, and just use it in the portage ebuild when it's sedded in.
(In reply to Fabian Groffen from comment #5) > via profiles might be a smart idea indeed, perhaps better call it > PORTAGE_EXTRA_PATH or something then, and just use it in the portage ebuild > when it's sedded in. Does it look good? I think we could change it to PORTAGE_EXTRA_PATH if needed in the future. EXTRA_PATH has been implicitly user visible in make.conf anyway. commit 9216351ebd8bec0ba56cc3a83d82da70e562feb3 Author: Benda Xu <heroxbd@XXXXXX> Date: Tue Mar 8 18:14:47 2016 +0900 profiles/p/l-s/make.defaults: Avoid host binaries called by ebuild. X-Gentoo-Bugs: 576658 diff --git a/profiles/prefix/linux-standalone/make.defaults b/profiles/prefix/linux-standalone/make.defaults index 76146a6..0341850 100644 --- a/profiles/prefix/linux-standalone/make.defaults +++ b/profiles/prefix/linux-standalone/make.defaults @@ -1,4 +1,4 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ @@ -13,3 +13,5 @@ USE="iconv" # build gcc with parallelization support USE="${USE} openmp" +# Avoid host binaries called by ebuild. (#576658) +EXTRA_PATH=""