Support more general expressions in UPCXX_CUDA_NVCC

Merged
#111 · Created  · Last updated

Merged pull request

Merge branch '204' into develop

fb92172·Author: ·Closed by: ·2019-08-23

Description

This is a first look at addressing issue #204:

https://bitbucket.org/berkeleylab/upcxx/issues/204/no-support-for-nvcc-compiler-bindir

There were a few problems to deal with:

  1. Regexes used to match compilers weren’t general enough to match a full path, which might be emitted by nvcc --dry-run if --compiler-bindir was used.

  2. The logic around selecting a C++ compiler given a C compiler didn’t handle the case where a full path was used by nvcc.

  3. In some cases, nvcc’s dry run might emit compiler paths with quotes in them. I had to add shell=True when spawning subprocesses so that these weren’t interpreted as literal executable names.

I’ve tested with passing just the compiler name to UPCXX_CUDA_NVCC (e.g. ‘nvcc’), passing an absolute path, and passing an absolute path with --compiler-bindir added.

0 attachments

0 comments

Loading commits...