summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <rverschelde@gmail.com>2018-01-14 22:48:47 +0100
committerGitHub <noreply@github.com>2018-01-14 22:48:47 +0100
commit0a691bf29e090c7d4a4d76d99a39c794349b4690 (patch)
treea2a6021ffc887b6a9f719802a15bac4be5477bc3
parent109242c011255757c981f634a33f59268a113f67 (diff)
parentbf32d3623092f80eeefacc0b76fb381f4c6843f8 (diff)
Merge pull request #15671 from Calinou/non-tty-simple-build-log
Disable colored output and progress bar when building outside of a TTY
-rw-r--r--.mailmap3
-rw-r--r--SConstruct7
-rw-r--r--methods.py30
3 files changed, 28 insertions, 12 deletions
diff --git a/.mailmap b/.mailmap
index b37cd2884d..aa2e0911ec 100644
--- a/.mailmap
+++ b/.mailmap
@@ -8,6 +8,9 @@ Bastiaan Olij <mux213@gmail.com>
Bernhard Liebl <poke1024@gmx.de>
Bernhard Liebl <poke1024@gmx.org>
Geequlim <geequlim@gmail.com>
+Hugo Locurcio <hugo.locurcio@hugo.pro>
+Hugo Locurcio <hugo.locurcio@hugo.pro> <hugo.l@openmailbox.org>
+Hugo Locurcio <hugo.locurcio@hugo.pro> <Calinou@users.noreply.github.com>
Ignacio Etcheverry <ignalfonsore@gmail.com>
Indah Sylvia <ISylvox@yahoo.com>
Jakub Grzesik <kubecz3k@gmail.com>
diff --git a/SConstruct b/SConstruct
index 7e82e582d0..dcf8134c93 100644
--- a/SConstruct
+++ b/SConstruct
@@ -498,7 +498,12 @@ node_count_interval = 1
node_pruning = 8 # Number of nodes to process before prunning the cache
if ('env' in locals()):
node_count_fname = str(env.Dir('#')) + '/.scons_node_count'
-show_progress = env['progress']
+# Progress reporting is not available in non-TTY environments since it
+# messes with the output (for example, when writing to a file)
+if sys.stdout.isatty():
+ show_progress = env['progress']
+else:
+ show_progress = False
import time, math
diff --git a/methods.py b/methods.py
index fbdac8a966..3ffe8cb310 100644
--- a/methods.py
+++ b/methods.py
@@ -1549,18 +1549,26 @@ def save_active_platforms(apnames, ap):
def no_verbose(sys, env):
- # If the output is not a terminal, do nothing
- if not sys.stdout.isatty():
- return
-
colors = {}
- colors['cyan'] = '\033[96m'
- colors['purple'] = '\033[95m'
- colors['blue'] = '\033[94m'
- colors['green'] = '\033[92m'
- colors['yellow'] = '\033[93m'
- colors['red'] = '\033[91m'
- colors['end'] = '\033[0m'
+
+ # Colors are disabled in non-TTY environments such as pipes. This means
+ # that if output is redirected to a file, it will not contain color codes
+ if sys.stdout.isatty():
+ colors['cyan'] = '\033[96m'
+ colors['purple'] = '\033[95m'
+ colors['blue'] = '\033[94m'
+ colors['green'] = '\033[92m'
+ colors['yellow'] = '\033[93m'
+ colors['red'] = '\033[91m'
+ colors['end'] = '\033[0m'
+ else:
+ colors['cyan'] = ''
+ colors['purple'] = ''
+ colors['blue'] = ''
+ colors['green'] = ''
+ colors['yellow'] = ''
+ colors['red'] = ''
+ colors['end'] = ''
compile_source_message = '%sCompiling %s==> %s$SOURCE%s' % (colors['blue'], colors['purple'], colors['yellow'], colors['end'])
java_compile_source_message = '%sCompiling %s==> %s$SOURCE%s' % (colors['blue'], colors['purple'], colors['yellow'], colors['end'])