summaryrefslogtreecommitdiffstats
path: root/Help/variable
Commit message (Collapse)AuthorAgeFilesLines
* Help: CMAKE_APPLE_SILICON_PROCESSOR cannot be set in a toolchain fileBrad King2021-04-011-3/+2
| | | | | | | `CMakeDetermineSystem` determines the host system information before loading the toolchain file. Issue: #22012
* VS: Accept and translate '-T version=' values with three componentsBrad King2021-03-121-0/+12
| | | | | | | | The VS 16.8 and VS 16.9 toolset versions differ only in their third component. The `vcvarsall` option `-vcvars_ver=` accepts a three component version, so accept this format for VS toolset selection too. Issue: #21922
* VS: Fix '-T version=14.28' under VS 16.9Brad King2021-03-121-0/+8
| | | | | | | | | | | | | | | | | | CMake accepts the toolset version that is default in the current VS version by matching the name later VS versions will use for the SxS props files. It predicts the future name based on the first two components of the current VS version's default toolset. However, this heuristic breaks naming the VS 16.8 toolset version 14.28 under VS 16.9 because the latter's default toolset version is 14.28.29910, which did not increment the second version component (unprecedented in VS). Fix this by always using the requested version's SxS props file when it exists, even if it matches the first two components of the current VS version's default toolset. Also add a special case for the name VS 16.10 will use for VS 16.9's default toolset, so that it can be used with VS 16.9 too. Fixes: #21922
* VS: Generalize Win10 max SDK version to all VS generatorsjonathan molinatto2021-01-201-1/+1
| | | | | | | | | | | The `CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM` variable added in CMake 3.19 by commit ba497111f6 (VS: Add option for custom Win10 SDK version maximum, 2020-08-20, v3.19.0-rc1~262^2) was documented as if it worked for all generators but implemented only to override CMake's builtin default for the VS 2015 max SDK version. Generalize the variable to set a custom max SDK version for later VS versions too. Fixes: #21720
* ISPC: Generated Headers suffix configurable with a better defaultRobert Maynard2020-12-141-0/+10
| | | | | | | | | The target property `ISPC_HEADER_SUFFIX` and associated global variable now can control the suffix used when generating the C/C++ interoperability ISPC headers. In addition the default suffix is now "_ispc.h" which matches the common convention that the ISPC compiler team uses and recommends.
* macOS: Offer control over host architecture on Apple Silicon hostsBrad King2020-12-102-3/+45
| | | | | | | | | | | | | | | | | | | | | | | | | Since commit b6c60f14b6 (macOS: Default to arm64 architecture on Apple Silicon hosts, 2020-09-28, v3.19.0-rc1~63^2) we use `sysctl` to detect that we are running on Apple Silicon in a way that pierces Rosetta. This always sets `CMAKE_HOST_SYSTEM_PROCESSOR` to be `arm64` on such hosts. However, macOS offers strong support for running processes under an emulated `x86_64` architecture. Teach CMake to select either `arm64` or `x86_64` as the host architecture on Apple Silicon based on the architecture of its own process. When CMake is built as a universal binary, macOS will select whichever slice (architecture) is appropriate under the user's shell, and `CMAKE_HOST_SYSTEM_PROCESSOR` will match. Also offer a `CMAKE_APPLE_SILICON_PROCESSOR` variable and environment variable to provide users with explicit control over the host architecture selection regardless of CMake's own architecture. Finally, if `CMAKE_OSX_ARCHITECTURES` is not set, pass explicit flags to the toolchain to use selected host architecture instead of letting the toolchain pick. Fixes: #21554
* Revert "Intel: Add Intel DPC++ compiler identification"Brad King2020-12-071-1/+0
| | | | | | | | | | Revert commit 887f3a88a6 (Intel: Add Intel DPC++ compiler identification, 2020-09-21, v3.19.0-rc1~124^2). The compiler has already been released, and is more usable with CMake by pretending to be upstream Clang than by identifying it as a compiler for which we have not implemented support. Fixes: #21551
* Revert "Intel: Add Intel Clang compiler identification"Brad King2020-12-071-1/+0
| | | | | | | | | | Revert commit 5c3a93ab88 (Intel: Add Intel Clang compiler identification, 2020-09-29, v3.19.0-rc1~68^2). The compiler has already been released, and is more usable with CMake by pretending to be upstream Clang than by identifying it as a compiler for which we have not implemented support. Issue: #21551
* Help: Fix `.. versionadded` directives for CTEST_CUSTOM_* variablesNikita Nemkin2020-11-2117-34/+0
| | | | | | CTEST_CUSTOM_* variables predate 3.0, but the docs were only added in 3.4. Issue: #19715
* CTest: Rename CudaMemcheck to CudaSanitizerTobias Ribizel2020-11-171-1/+1
|
* Help: Fix `.. versionadded` directives in environment variable docsNikita Nemkin2020-11-111-1/+1
| | | | | | | | Many environment variables were documented late and got assigned wrong versions by the script. (The whole Help/envvar section was only added in 3.10). Issue: #19715
* Help: Add cuda-memcheck to CTest documentationTobias Ribizel2020-11-051-3/+3
| | | | Issue: #21388
* Help: Update Sphinx versionadded directives for 3.19 releaseBrad King2020-10-083-0/+6
| | | | | | Run the script: Utilities/Sphinx/update_versions.py --since v3.18.0 --overwrite
* Merge topic 'genexpr-for-mfc-flag'Brad King2020-10-011-0/+3
|\ | | | | | | | | | | | | c1f1eaf7a4 VS: Teach CMAKE_MFC_FLAG to support generator expressions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5283
| * VS: Teach CMAKE_MFC_FLAG to support generator expressionsAndrey Starodubtsev2020-09-301-0/+3
| |
* | Merge topic 'intel-clang'Brad King2020-10-011-0/+1
|\ \ | | | | | | | | | | | | | | | | | | 5c3a93ab88 Intel: Add Intel Clang compiler identification Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5300
| * | Intel: Add Intel Clang compiler identificationHarini Chilamantula2020-09-291-0/+1
| |/ | | | | | | | | The compiler identifies itself with the `__INTEL_CLANG_COMPILER` preprocessor definition.
* | cmake_language: Add signature to DEFER calls to later timesBrad King2020-09-291-0/+4
|/ | | | Fixes: #19575
* Intel: Add Intel DPC++ compiler identificationHarini Chilamantula2020-09-221-0/+1
| | | | | The compiler identifies itself with the `__INTEL_DPCPP_COMPILER__` preprocessor definition.
* Xcode: Switch to the "new build system" for Xcode 12 and aboveBrad King2020-09-181-1/+6
| | | | | | | Provide an option to switch back to the original build system via `-T buildsystem=1`. Fixes: #18088
* Xcode: Add option to specify build system variantBrad King2020-09-181-0/+17
| | | | | | Extend the `-T <toolset>` option to support a `buildsystem=` field with the Xcode generator. Add a `CMAKE_XCODE_BUILD_SYSTEM` variable to inform project code about the selected build system variant.
* Merge topic 'pch-instantiate-templates'Brad King2020-09-101-0/+7
|\ | | | | | | | | | | | | | | | | | | 8c8f03422e PCH: Template instantiation support Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Acked-by: Cristian Adam <cristian.adam@gmail.com> Tested-by: Raul Tambre <raul@tambre.ee> Merge-request: !5168
| * PCH: Template instantiation supportTobias Hieta2020-09-021-0/+7
| | | | | | | | | | | | | | | | Adds PCH_INSTANTIATE_TEMPLATES target property for enabling template instantiation in precompiled headers. Enabled by default. Currently only supported for Clang 11 and newer. Implements #21133.
* | ISPC: Support generation for multiple instruction setsRobert Maynard2020-09-041-0/+9
| |
* | ISPC: Add compiler launcher supportRobert Maynard2020-09-031-1/+1
| |
* | Merge topic 'target_genex_dependency'Brad King2020-09-011-0/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | f14b390198 GenEx: Remove unneeded dependencies from target info queries Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Merge-request: !5127
| * | GenEx: Remove unneeded dependencies from target info queriesRobert Maynard2020-09-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only generate a graph dependency between a custom command and a target when the custom command queries for the file path of an artifact of the target. This makes generator expressions such as `TARGET_FILE_DIR` behave the same way as `TARGET_PROPERTY` which never generated a graph dependency.
* | | Merge topic 'xcode-link-phase-all'Craig Scott2020-09-011-0/+7
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 525464ed2a Xcode: Use "Link Binary With Libraries" build phase in some cases dc0898205c Xcode: Add special case for file type extension map for .xcassets 7b3d8411a2 Xcode: Refactor build setting append code and attribute getter naming Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5036
| * | | Xcode: Use "Link Binary With Libraries" build phase in some casesGusts Kaksis2020-08-311-0/+7
| |/ / | | | | | | | | | | | | | | | | | | OBJECT and STATIC libraries (framework or non-framework) do not use this build phase. Not all items to be linked use this build phase either. Co-Authored-By: Craig Scott <craig.scott@crascit.com>
* | | Merge topic 'ispc_lang_support'Brad King2020-09-011-0/+10
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5ece12b7e4 gitlab-ci: add ISPC to the Fedora CI image 8976817d6d ISPC: Update help documentation to include ISPC 2368f46ba4 ISPC: Support building with the MSVC toolchain e783bf8aa6 ISPC: Support ISPC header generation byproducts and parallel builds 34cc6acc81 Add ISPC compiler support to CMake 419d70d490 Refactor some swift only logic to be re-used by other languages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5065
| * | ISPC: Support ISPC header generation byproducts and parallel buildsRobert Maynard2020-08-281-0/+10
| | |
* | | Help: Reference CMAKE_CUDA_COMPILER_ID not CMAKE_CUDA_COMPILERRaul Tambre2020-08-291-6/+6
| |/ |/| | | | | | | We should refer to the compiler ID in the documentation to avoid users checking compiler executable names, since that seems fragile.
* | VS: Add option for custom Win10 SDK version maximumjonathan molinatto2020-08-252-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 83ddc4d289 (VS: Do not select a Windows SDK too high for current VS version, 2017-08-07, v3.13.0-rc1~72^2~2) we enforce a maximum SDK version for the VS 2015 generator. The blog post linked in the original commit is no longer available, but it can be seen here: * https://web.archive.org/web/20190108032520/https://blogs.msdn.microsoft.com/chuckw/2018/10/02/windows-10-october-2018-update/ In particular, it states: > VS 2015 Users: The Windows 10 SDK (15063, 16299, 17134, 17763) > is officially only supported for VS 2017. However, in some circumstances a higher version can be used. Add a `CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM` to override the generator's default maximum SDK version. Fixes: #20633
* | Add option to optimize link dependencies for static librariesKyle Edwards2020-08-121-0/+4
| | | | | | | | | | | | | | | | | | Add an `OPTIMIZE_DEPENDENCIES` target property and supporting `CMAKE_OPTIMIZE_DEPENDENCIES` variable to optionally enable pruning and flattening of outgoing dependencies from static libraries. Since they do not actually link, they only depend on side effects of their dependencies. Therefore we can drop dependencies that contribute no side effects.
* | Merge topic 'automoc-path-prefix-off'Brad King2020-08-111-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 5b5be34811 Help: Add 3.18.2 release note about AUTOMOC_PATH_PREFIX default change db659e18bc Merge branch 'backport-3.17-automoc-path-prefix-off' e503fbe38a Merge branch 'backport-3.16-automoc-path-prefix-off' 4c33b305a0 Autogen: Turn off moc path prefix generation by default Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5105
| * \ Merge branch 'backport-3.17-automoc-path-prefix-off'Brad King2020-08-101-1/+1
| |\ \
| | * \ Merge branch 'backport-3.16-automoc-path-prefix-off'Brad King2020-08-101-1/+1
| | |\ \
| | | * | Autogen: Turn off moc path prefix generation by defaultJoerg Bornemann2020-08-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the default value of `CMAKE_AUTOMOC_PATH_PREFIX` to `OFF` to restore compatibility with behavior of CMake 3.15 and below. C++ source files that are generated by Qt's meta object compiler (moc) include the header file that was passed as input argument to moc. This is usually a path relative to the source directory, for example #include "../../source/dir/myobject.h" That is problematic for reproducible builds as described in #18815. To cope with that, the target property AUTOMOC_PATH_PREFIX was introduced in CMake 3.16 by commit d018d27c10 (Autogen: Add moc path prefix generation (AUTOMOC_PATH_PREFIX), 2019-09-13, v3.16.0-rc1~94^2~4). The property is default-initialized from the variable `CMAKE_AUTOMOC_PATH_PREFIX`, which defaults to `ON`. If this property is ON, and myobject.h is located in an include directory of the target, moc-generated C++ files include the file without the "path prefix": #include "myobject.h" This behavior, however, can break projects that have equally named header files in different include directories. As "not breaking existing projects" trumps "have reproducible builds by default" we change the default of `CMAKE_AUTOMOC_PATH_PREFIX` to `OFF`. Also, it is now possible to pass `-DCMAKE_AUTOMOC_PATH_PREFIX=ON` on the CMake command line. Before, it was overridden in `CMakeGenericSystem`. Fixes: #20598 Issue: #18815
| | | * | ObjC: Add _COMPILE_LAUNCHER supportCristian Adam2020-01-091-1/+1
| | | | | | | | | | | | | | | | | | | | Fixes: #20178
* | | | | Merge topic 'clang-cl-vfs'Brad King2020-08-101-0/+9
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 20ebaed972 Clang: Add support for passing VFS arguments d993ebd4ca clang-cl: Add '--' before source file a94672b919 cmake: Change cmake_llvm_rc separator from -- to ++ to avoid conflict Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5087
| * | | | Clang: Add support for passing VFS argumentsThomas Bernard2020-08-071-0/+9
| | | | |
* | | | | Toolchain: Update documentation for initial compiler flagsFred Baksik2020-08-031-0/+25
|/ / / /
* | | | Help: Document CMAKE_CUDA_HOST_COMPILER as specific to NVIDIA nvccBrad King2020-07-141-5/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explain the purpose of this variable and the conditions under which it can be set. Point out that it should not be set explicitly without also setting `CMAKE_CUDA_COMPILER` explicitly. Issue: #20826
* | | | Merge topic 'ctest-resource-spec-file-doc'Craig Scott2020-07-081-0/+5
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | c57695a2f4 Help: Clarify search order for resource spec file Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4983
| * | | Help: Clarify search order for resource spec fileKyle Edwards2020-07-071-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clarify the order in which --resource-spec-file, RESOURCE_SPEC_FILE, and CTEST_RESOURCE_SPEC_FILE are searched, and add tests to enforce this. Fixes: #20914
* | | | Help: Add Sphinx 'versionadded' directives to each top-level documentKitware Robot2020-07-06346-0/+692
|/ / / | | | | | | | | | | | | | | | | | | Run the `Utilities/Sphinx/update_versions.py` script to add initial markup to every top-level document and find module. Issue: #19715
* | | Help: Clarify how env vars and ..._INIT variables interactCraig Scott2020-05-241-1/+5
| | | | | | | | | Fixes: #20358
* | | Merge topic 'fortran-preprocess-property'Brad King2020-05-221-0/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3888de23da Ninja: Skip Fortran preprocessing if Fortran_PREPROCESS is OFF 66c4e87282 Ninja: Add helper functions to generate Fortran build 5cca1ec893 Ninja: Add helper functions to generate Fortran preprocess rule b0a6161190 Fortran: Add Fortran_PREPROCESS property Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4659
| * | | Fortran: Add Fortran_PREPROCESS propertyPeter Hill2020-05-211-0/+8
| | | | | | | | | | | | | | | | Issue: #18870
* | | | Merge topic 'support_conda_env'Brad King2020-05-221-0/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 50879ce412 Conda: Add CONDA_PREFIX as an acceptable system prefix path cd9c3c000f Tests: Update QtAutogen codeeditor test only include headers needed d806bd2e8c Tests: Update test suite to run in an Anaconda environment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4773