From be8cfc7f7e49ac3e42a4c65e83002eb6a907e04b Mon Sep 17 00:00:00 2001 From: Refael Ackermann Date: Fri, 8 Jun 2018 15:47:51 -0400 Subject: [PATCH] build: don't change locale on smartos PR-URL: https://github.com/nodejs/node/pull/21220 Fixes: https://github.com/nodejs/build/issues/1327 Refs: https://github.com/nodejs/node/pull/20394 Reviewed-By: Anna Henningsen Reviewed-By: Rich Trott Reviewed-By: Richard Lau --- configure | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/configure b/configure index 97a75b985699b8..db9c45a868fad4 100755 --- a/configure +++ b/configure @@ -672,7 +672,10 @@ def get_xcode_version(cc): def get_gas_version(cc): try: custom_env = os.environ.copy() - custom_env["LC_ALL"] = "en_US" + # smartos (a.k.a. sunos5) does not have the en_US locale, and will give: + # `setlocale: LC_ALL: cannot change locale (en_US): Invalid argument` + if 'sunos' not in sys.platform: + custom_env["LC_ALL"] = "en_US" proc = subprocess.Popen(shlex.split(cc) + ['-Wa,-v', '-c', '-o', '/dev/null', '-x', 'assembler', '/dev/null'], @@ -685,12 +688,13 @@ def get_gas_version(cc): consider adjusting the CC environment variable if you installed it in a non-standard prefix.''') - match = re.match(r"GNU assembler version ([2-9]\.[0-9]+)", - proc.communicate()[1]) + gas_ret = proc.communicate()[1] + match = re.match(r"GNU assembler version ([2-9]\.[0-9]+)", gas_ret) if match: return match.group(1) else: + warn('Could not recognize `gas`: ' + gas_ret) return '0' # Note: Apple clang self-reports as clang 4.2.0 and gcc 4.2.1. It passes