aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools
diff options
context:
space:
mode:
authorGravatar Damien Martin-Guillerez <dmarting@google.com>2016-04-28 08:30:49 +0000
committerGravatar Lukacs Berki <lberki@google.com>2016-04-28 08:52:46 +0000
commitc6da03408969facade49f500fcdaaebf4e3ccfc5 (patch)
tree720cbe9815cfbb6bc59082cc54ebf30d6db82e36 /tools
parent497d824aad88e3052efaba06828ca80cf1ecc5d5 (diff)
cc_configure: do not assume the message from gcc is in English
Fixes #1204. -- MOS_MIGRATED_REVID=120997826
Diffstat (limited to 'tools')
-rw-r--r--tools/cpp/cc_configure.bzl17
1 files changed, 12 insertions, 5 deletions
diff --git a/tools/cpp/cc_configure.bzl b/tools/cpp/cc_configure.bzl
index 2c5b2a2384..1ad375470c 100644
--- a/tools/cpp/cc_configure.bzl
+++ b/tools/cpp/cc_configure.bzl
@@ -108,8 +108,7 @@ def _get_cpu_value(repository_ctx):
return "piii" if result.stdout.strip() == "i386" else "k8"
-_INC_DIR_MARKER_BEGIN = "#include <...> search starts here:"
-_INC_DIR_MARKER_END = "End of search list."
+_INC_DIR_MARKER_BEGIN = "#include <...>"
# OSX add " (framework directory)" at the end of line, strip it.
_OSX_FRAMEWORK_SUFFIX = " (framework directory)"
@@ -127,10 +126,18 @@ def _get_cxx_inc_directories(repository_ctx, cc):
index1 = result.stderr.find(_INC_DIR_MARKER_BEGIN)
if index1 == -1:
return []
- index2 = result.stderr.find(_INC_DIR_MARKER_END, index1)
- if index2 == -1:
+ index1 = result.stderr.find("\n", index1)
+ if index1 == -1:
+ return []
+ index2 = result.stderr.rfind("\n ")
+ if index2 == -1 or index2 < index1:
return []
- inc_dirs = result.stderr[index1 + len(_INC_DIR_MARKER_BEGIN):index2].strip()
+ index2 = result.stderr.find("\n", index2 + 1)
+ if index2 == -1:
+ inc_dirs = result.stderr[index1 + 1:]
+ else:
+ inc_dirs = result.stderr[index1 + 1:index2].strip()
+
return [repository_ctx.path(_cxx_inc_convert(p))
for p in inc_dirs.split("\n")]