Actually, when executing pkg_config with "ebuild some/ebuild.ebuild
config", the stdin/stdout are broken cause we are not writing to a
terminal.

I fixed it with this patch:

diff -uNpr portage-2.0.51.19/pym/portage.py
portage-2.0.51.19-config/pym/portage.py
--- portage-2.0.51.19/pym/portage.py    2005-03-03 11:45:01.000000000
-0500
+++ portage-2.0.51.19-config/pym/portage.py     2005-07-14
20:48:36.000000000 -0400
@@ -2533,7 +2533,7 @@ def doebuild(myebuild,mydo,myroot,mysett
                        return
unmerge(mysettings["CATEGORY"],mysettings["PF"],myroot,mysettings)
 
        # if any of these are being called, handle them -- running them
out of the sandbox -- and stop now.
-       if mydo=="clean":
+       if mydo in ["clean","config"]:
                logfile=None
        if mydo in ["help","clean","setup"]:
                return spawn(EBUILD_SH_BINARY+"
"+mydo,mysettings,debug=debug,free=1,logfile=logfile)


The only bad side is that we loose the log for that part. But it might
not be loggable anyway. As Jason Stubbs said:

"Actually, I promote interactive code in pkg_config(). There's no
standard as to what it will do, ..."

Kristian


-- 
gentoo-dev@gentoo.org mailing list

Reply via email to