From 7c5e61b3f442b8ca2e75a08bf34eb65eec285b93 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sat, 5 Nov 2011 11:53:20 -0700 Subject: Enable colors during the depend phase. --- pym/portage/package/ebuild/doebuild.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'pym') diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py index ccea574c5..cb7da78c7 100644 --- a/pym/portage/package/ebuild/doebuild.py +++ b/pym/portage/package/ebuild/doebuild.py @@ -283,6 +283,19 @@ def doebuild_environment(myebuild, mydo, myroot=None, settings=None, (c, style_to_ansi_code(c))) mysettings["PORTAGE_COLORMAP"] = "\n".join(mycolors) + if "COLUMNS" not in mysettings: + # Set COLUMNS, in order to prevent unnecessary stty calls + # inside the set_colors function of isolated-functions.sh. + # We cache the result in os.environ, in order to avoid + # multiple stty calls in cases when get_term_size() falls + # back to stty due to a missing or broken curses module. + columns = os.environ.get("COLUMNS") + if columns is None: + rows, columns = portage.output.get_term_size() + columns = str(columns) + os.environ["COLUMNS"] = columns + mysettings["COLUMNS"] = columns + # All EAPI dependent code comes last, so that essential variables # like PORTAGE_BUILDDIR are still initialized even in cases when # UnsupportedAPIException needs to be raised, which can be useful -- cgit v1.2.3-1-g7c22