buildman: disable localized and unicode output of all build tools
authorDaniel Schwierzeck <daniel.schwierzeck@gmail.com>
Thu, 8 Jun 2017 01:07:08 +0000 (03:07 +0200)
committerSimon Glass <sjg@chromium.org>
Fri, 9 Jun 2017 19:45:34 +0000 (13:45 -0600)
Build tools like Make, gcc or binutils support localized output
or unicode encoded output dependent on the default system locale.
This is not useful for buildman, where we want reproducible
warning or error messages or where the output of binutils is
further processed.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
tools/buildman/toolchain.py

index 5cf97ac8148e290804ab240937abf52e2d45bd4d..2076323d5d39825f17b0460d09ce3dd383bc50b3 100644 (file)
@@ -144,7 +144,9 @@ class Toolchain:
         """Returns an environment for using the toolchain.
 
         Thie takes the current environment and adds CROSS_COMPILE so that
-        the tool chain will operate correctly.
+        the tool chain will operate correctly. This also disables localized
+        output and possibly unicode encoded output of all build tools by
+        adding LC_ALL=C.
 
         Args:
             full_path: Return the full path in CROSS_COMPILE and don't set
@@ -159,6 +161,8 @@ class Toolchain:
             env['CROSS_COMPILE'] = wrapper + self.cross
             env['PATH'] = self.path + ':' + env['PATH']
 
+        env['LC_ALL'] = 'C'
+
         return env