From 7bd285079a6b66fbf7548d040af800ce0b51f0ae Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 12 Sep 2011 21:56:48 -0700 Subject: ebuild(1): avoid "Location not set for repo" msgs When overriding PORTDIR_OVERLAY, we can avoid "Location not set for repository" messages if we include the original PORTDIR_OVERLAY paths in the overridden setting. --- bin/ebuild | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/bin/ebuild b/bin/ebuild index 92105bbbd..1408dd32e 100755 --- a/bin/ebuild +++ b/bin/ebuild @@ -134,13 +134,19 @@ vdb_path = os.path.realpath(os.path.join(portage.settings['EROOT'], VDB_PATH)) # Make sure that portdb.findname() returns the correct ebuild. if ebuild_portdir != vdb_path and \ ebuild_portdir not in portage.portdb.porttrees: + portdir_overlay = os.environ.get("PORTDIR_OVERLAY") + if portdir_overlay is None: + portdir_overlay = portage.settings.get("PORTDIR_OVERLAY") + if portdir_overlay is None: + portdir_overlay = "" if sys.hexversion >= 0x3000000: os.environ["PORTDIR_OVERLAY"] = \ - os.environ.get("PORTDIR_OVERLAY","") + \ + portdir_overlay + \ " " + _shell_quote(ebuild_portdir) else: os.environ["PORTDIR_OVERLAY"] = \ - os.environ.get("PORTDIR_OVERLAY","") + \ + _unicode_encode(portdir_overlay, + encoding=_encodings['content'], errors='strict') + \ " " + _unicode_encode(_shell_quote(ebuild_portdir), encoding=_encodings['content'], errors='strict') -- cgit v1.2.3-1-g7c22