aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc.tpl
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc.tpl')
-rwxr-xr-xthird_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc.tpl12
1 files changed, 11 insertions, 1 deletions
diff --git a/third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc.tpl b/third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc.tpl
index d3bb93c036..b7d6cc61dd 100755
--- a/third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc.tpl
+++ b/third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc.tpl
@@ -53,6 +53,7 @@ CURRENT_DIR = os.path.dirname(sys.argv[0])
NVCC_PATH = CURRENT_DIR + '/../../../cuda/bin/nvcc'
LLVM_HOST_COMPILER_PATH = ('/usr/bin/gcc')
PREFIX_DIR = os.path.dirname(GCC_HOST_COMPILER_PATH)
+NVCC_VERSION = '%{cuda_version}'
def Log(s):
print('gpus/crosstool: {0}'.format(s))
@@ -114,6 +115,14 @@ def GetHostCompilerOptions(argv):
return opts
+def _update_options(nvcc_options):
+ if NVCC_VERSION in ("7.0",):
+ return nvcc_options
+
+ update_options = { "relaxed-constexpr" : "expt-relaxed-constexpr" }
+ return [ update_options[opt] if opt in update_options else opt
+ for opt in nvcc_options ]
+
def GetNvccOptions(argv):
"""Collect the -nvcc_options values from argv.
@@ -130,7 +139,8 @@ def GetNvccOptions(argv):
args, _ = parser.parse_known_args(argv)
if args.nvcc_options:
- return ' '.join(['--'+a for a in sum(args.nvcc_options, [])])
+ options = _update_options(sum(args.nvcc_options, []))
+ return ' '.join(['--'+a for a in options])
return ''