summaryrefslogtreecommitdiffstats
path: root/Help/variable
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2023-09-26 13:40:18 (GMT)
committerKitware Robot <kwrobot@kitware.com>2023-09-26 13:40:25 (GMT)
commit5d32320bf33bc874d0f0e0c651235fe6472c8013 (patch)
tree92b397f5d36a1ea9998ac125eac7c5de5487766b /Help/variable
parentccd53590033a32f02319ec09d2cf5e8c11c7e62c (diff)
parentfd982eec10840eabcccc1920c7c32eb0a13d65a9 (diff)
downloadCMake-5d32320bf33bc874d0f0e0c651235fe6472c8013.zip
CMake-5d32320bf33bc874d0f0e0c651235fe6472c8013.tar.gz
CMake-5d32320bf33bc874d0f0e0c651235fe6472c8013.tar.bz2
Merge topic 'hip-nvidia'
fd982eec10 HIP: Add tests for special NVIDIA values of CMAKE_HIP_ARCHITECTURES 8c8b3f1bfa HIP: Fix support for -DCMAKE_HIP_ARCHITECTURES=native with NVCC b3e92775ab HIP: Add CMAKE_HIP_HOST_COMPILER when compiler is NVCC e43918b4ca HIP: Fix linking mixed-lang binary with CXX compiler and Makefile generators 4794505122 HIP: Do not require hip-lang package for NVIDIA platform 09d759dc7f HIP: Simplify exclusion of AMD device runtime with NVIDIA GPUs 2a60663670 HIP: Simplify CMAKE_GENERATOR references for determining compiler 8124950f6c CUDA: Generalize CMAKE_{CUDA => <LANG>}_HOST_COMPILER variable docs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8836
Diffstat (limited to 'Help/variable')
-rw-r--r--Help/variable/CMAKE_CUDA_HOST_COMPILER.rst34
-rw-r--r--Help/variable/CMAKE_LANG_HOST_COMPILER.rst44
2 files changed, 47 insertions, 31 deletions
diff --git a/Help/variable/CMAKE_CUDA_HOST_COMPILER.rst b/Help/variable/CMAKE_CUDA_HOST_COMPILER.rst
index 6e2d756..498e2e5 100644
--- a/Help/variable/CMAKE_CUDA_HOST_COMPILER.rst
+++ b/Help/variable/CMAKE_CUDA_HOST_COMPILER.rst
@@ -3,34 +3,6 @@ CMAKE_CUDA_HOST_COMPILER
.. versionadded:: 3.10
-When :variable:`CMAKE_CUDA_COMPILER_ID <CMAKE_<LANG>_COMPILER_ID>` is
-``NVIDIA``, ``CMAKE_CUDA_HOST_COMPILER`` selects the compiler executable to use
-when compiling host code for ``CUDA`` language files.
-This maps to the ``nvcc -ccbin`` option.
-
-The ``CMAKE_CUDA_HOST_COMPILER`` variable may be set explicitly before CUDA is
-first enabled by a :command:`project` or :command:`enable_language` command.
-This can be done via ``-DCMAKE_CUDA_HOST_COMPILER=...`` on the command line
-or in a :ref:`toolchain file <Cross Compiling Toolchain>`. Or, one may set
-the :envvar:`CUDAHOSTCXX` environment variable to provide a default value.
-
-Once the CUDA language is enabled, the ``CMAKE_CUDA_HOST_COMPILER`` variable
-is read-only and changes to it are undefined behavior.
-
-.. note::
-
- Since ``CMAKE_CUDA_HOST_COMPILER`` is meaningful only when the
- :variable:`CMAKE_CUDA_COMPILER_ID <CMAKE_<LANG>_COMPILER_ID>` is ``NVIDIA``,
- it does not make sense to set ``CMAKE_CUDA_HOST_COMPILER`` without also
- setting ``CMAKE_CUDA_COMPILER`` to NVCC.
-
-.. note::
-
- Projects should not try to set ``CMAKE_CUDA_HOST_COMPILER`` to match
- :variable:`CMAKE_CXX_COMPILER <CMAKE_<LANG>_COMPILER>` themselves.
- It is the end-user's responsibility, not the project's, to ensure that
- the C++ and CUDA compilers target the same ABI.
-
-.. note::
-
- Ignored when using :ref:`Visual Studio Generators`.
+This is the original CUDA-specific name for the more general
+:variable:`CMAKE_<LANG>_HOST_COMPILER` variable. See the latter
+for details.
diff --git a/Help/variable/CMAKE_LANG_HOST_COMPILER.rst b/Help/variable/CMAKE_LANG_HOST_COMPILER.rst
new file mode 100644
index 0000000..cf3ba62
--- /dev/null
+++ b/Help/variable/CMAKE_LANG_HOST_COMPILER.rst
@@ -0,0 +1,44 @@
+CMAKE_<LANG>_HOST_COMPILER
+--------------------------
+
+.. versionadded:: 3.10
+ ``CMAKE_CUDA_HOST_COMPILER``
+
+.. versionadded:: 3.28
+ ``CMAKE_HIP_HOST_COMPILER``
+
+This variable is available when ``<LANG>`` is ``CUDA`` or ``HIP``.
+
+When :variable:`CMAKE_<LANG>_COMPILER_ID` is
+``NVIDIA``, ``CMAKE_<LANG>_HOST_COMPILER`` selects the compiler executable
+to use when compiling host code for ``CUDA`` or ``HIP`` language files.
+This maps to the ``nvcc -ccbin`` option.
+
+The ``CMAKE_<LANG>_HOST_COMPILER`` variable may be set explicitly before CUDA
+or HIP is first enabled by a :command:`project` or :command:`enable_language`
+command.
+This can be done via ``-DCMAKE_<LANG>_HOST_COMPILER=...`` on the command line
+or in a :ref:`toolchain file <Cross Compiling Toolchain>`. Or, one may set
+the :envvar:`CUDAHOSTCXX` or :envvar:`HIPHOSTCXX` environment variable to
+provide a default value.
+
+Once the CUDA or HIP language is enabled, the ``CMAKE_<LANG>_HOST_COMPILER``
+variable is read-only and changes to it are undefined behavior.
+
+.. note::
+
+ Since ``CMAKE_<LANG>_HOST_COMPILER`` is meaningful only when the
+ :variable:`CMAKE_<LANG>_COMPILER_ID` is ``NVIDIA``,
+ it does not make sense to set ``CMAKE_<LANG>_HOST_COMPILER`` without also
+ setting ``CMAKE_<LANG>_COMPILER`` to NVCC.
+
+.. note::
+
+ Projects should not try to set ``CMAKE_<LANG>_HOST_COMPILER`` to match
+ :variable:`CMAKE_CXX_COMPILER <CMAKE_<LANG>_COMPILER>` themselves.
+ It is the end-user's responsibility, not the project's, to ensure that
+ NVCC targets the same ABI as the C++ compiler.
+
+.. note::
+
+ Ignored when using :ref:`Visual Studio Generators`.