diff options
author | Brad King <brad.king@kitware.com> | 2021-05-19 11:54:30 +0000 |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2021-05-19 07:54:41 -0400 |
commit | c23e2fa0c51ce1c7c4654da038e9d2cfcc944358 (patch) | |
tree | a3b061fc94dfa59c055b8828c1093942aeb04128 | |
parent | 3a4bb269530001cfb27f20da0d18ae2cbf81ad67 (diff) | |
parent | 364f6af1d753bacf7a007033b30ebf2d6e15fe24 (diff) | |
download | cmake-c23e2fa0c51ce1c7c4654da038e9d2cfcc944358.tar.gz |
Merge topic 'nvhpc-ninja-depfile' into release-3.20
364f6af1d7 NVHPC: Support Ninja dependency scanning
521cfc38a3 NVHPC: Support explicit language flags
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6136
-rw-r--r-- | Modules/Compiler/NVHPC-C.cmake | 9 | ||||
-rw-r--r-- | Modules/Compiler/NVHPC-CXX.cmake | 9 |
2 files changed, 18 insertions, 0 deletions
diff --git a/Modules/Compiler/NVHPC-C.cmake b/Modules/Compiler/NVHPC-C.cmake index d16c72b76e..a734edf198 100644 --- a/Modules/Compiler/NVHPC-C.cmake +++ b/Modules/Compiler/NVHPC-C.cmake @@ -1,3 +1,12 @@ include(Compiler/PGI-C) include(Compiler/NVHPC) + +# Needed so that we support `LANGUAGE` property correctly +set(CMAKE_C_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c) + +# Required since as of NVHPC 21.03 the `-MD` flag implicitly +# implies `-E` and therefore compilation and dependency generation +# can't occur in the same invocation +set(CMAKE_C_DEPENDS_EXTRA_COMMANDS "<CMAKE_C_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -x c -M <SOURCE> -MT <OBJECT> -MD<DEP_FILE>") + __compiler_nvhpc(C) diff --git a/Modules/Compiler/NVHPC-CXX.cmake b/Modules/Compiler/NVHPC-CXX.cmake index 18ace8bfe6..98d0022576 100644 --- a/Modules/Compiler/NVHPC-CXX.cmake +++ b/Modules/Compiler/NVHPC-CXX.cmake @@ -1,3 +1,12 @@ include(Compiler/PGI-CXX) include(Compiler/NVHPC) + +# Needed so that we support `LANGUAGE` property correctly +set(CMAKE_CXX_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c++) + +# Required since as of NVHPC 21.03 the `-MD` flag implicitly +# implies `-E` and therefore compilation and dependency generation +# can't occur in the same invocation +set(CMAKE_CXX_DEPENDS_EXTRA_COMMANDS "<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -x c++ -M <SOURCE> -MT <OBJECT> -MD<DEP_FILE>") + __compiler_nvhpc(CXX) |