| .\" Man page generated from reStructuredText. |
| . |
| .TH "CMAKE-ENV-VARIABLES" "7" "Apr 12, 2022" "3.23.1" "CMake" |
| .SH NAME |
| cmake-env-variables \- CMake Environment Variables Reference |
| . |
| .nr rst2man-indent-level 0 |
| . |
| .de1 rstReportMargin |
| \\$1 \\n[an-margin] |
| level \\n[rst2man-indent-level] |
| level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] |
| - |
| \\n[rst2man-indent0] |
| \\n[rst2man-indent1] |
| \\n[rst2man-indent2] |
| .. |
| .de1 INDENT |
| .\" .rstReportMargin pre: |
| . RS \\$1 |
| . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] |
| . nr rst2man-indent-level +1 |
| .\" .rstReportMargin post: |
| .. |
| .de UNINDENT |
| . RE |
| .\" indent \\n[an-margin] |
| .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] |
| .nr rst2man-indent-level -1 |
| .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] |
| .in \\n[rst2man-indent\\n[rst2man-indent-level]]u |
| .. |
| .sp |
| This page lists environment variables that have special |
| meaning to CMake. |
| .sp |
| For general information on environment variables, see the |
| Environment Variables |
| section in the cmake\-language manual. |
| .SH ENVIRONMENT VARIABLES THAT CHANGE BEHAVIOR |
| .SS CMAKE_PREFIX_PATH |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| The \fBCMAKE_PREFIX_PATH\fP environment variable may be set to a list of |
| directories specifying installation \fIprefixes\fP to be searched by the |
| \fBfind_package()\fP, \fBfind_program()\fP, \fBfind_library()\fP, |
| \fBfind_file()\fP, and \fBfind_path()\fP commands. Each command will |
| add appropriate subdirectories (like \fBbin\fP, \fBlib\fP, or \fBinclude\fP) |
| as specified in its own documentation. |
| .sp |
| This variable may hold a single prefix or a list of prefixes separated |
| by \fB:\fP on UNIX or \fB;\fP on Windows (the same as the \fBPATH\fP environment |
| variable convention on those platforms). |
| .sp |
| See also the \fBCMAKE_PREFIX_PATH\fP CMake variable. |
| .SH ENVIRONMENT VARIABLES THAT CONTROL THE BUILD |
| .SS CMAKE_APPLE_SILICON_PROCESSOR |
| .sp |
| New in version 3.19.2. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| On Apple Silicon hosts running macOS, set this environment variable to tell |
| CMake what architecture to use for \fBCMAKE_HOST_SYSTEM_PROCESSOR\fP\&. |
| The value must be either \fBarm64\fP or \fBx86_64\fP\&. |
| .sp |
| The \fBCMAKE_APPLE_SILICON_PROCESSOR\fP normal variable, if set, |
| overrides this environment variable. |
| .SS CMAKE_BUILD_PARALLEL_LEVEL |
| .sp |
| New in version 3.12. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Specifies the maximum number of concurrent processes to use when building |
| using the \fBcmake \-\-build\fP command line |
| Build Tool Mode\&. |
| .sp |
| If this variable is defined empty the native build tool\(aqs default number is |
| used. |
| .SS CMAKE_BUILD_TYPE |
| .sp |
| New in version 3.22. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| The \fBCMAKE_BUILD_TYPE\fP environment variable specifies a default value |
| for the \fBCMAKE_BUILD_TYPE\fP variable when there is no explicit |
| configuration given on the first run while creating a new build tree. |
| .SS CMAKE_CONFIGURATION_TYPES |
| .sp |
| New in version 3.22. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| The \fBCMAKE_CONFIGURATION_TYPES\fP environment variable specifies a |
| default value for the \fBCMAKE_CONFIGURATION_TYPES\fP variable |
| when there is no explicit configuration given on the first run while |
| creating a new build tree. |
| .SS CMAKE_CONFIG_TYPE |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| The default build configuration for Build Tool Mode and |
| \fBctest\fP build handler when there is no explicit configuration given. |
| .SS CMAKE_EXPORT_COMPILE_COMMANDS |
| .sp |
| New in version 3.17. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| The default value for \fBCMAKE_EXPORT_COMPILE_COMMANDS\fP when there |
| is no explicit configuration given on the first run while creating a new |
| build tree. On later runs in an existing build tree the value persists in |
| the cache as \fBCMAKE_EXPORT_COMPILE_COMMANDS\fP\&. |
| .SS CMAKE_GENERATOR |
| .sp |
| New in version 3.15. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Specifies the CMake default generator to use when no generator is supplied |
| with \fB\-G\fP\&. If the provided value doesn\(aqt name a generator known by CMake, |
| the internal default is used. Either way the resulting generator selection |
| is stored in the \fBCMAKE_GENERATOR\fP variable. |
| .sp |
| Some generators may be additionally configured using the environment |
| variables: |
| .INDENT 0.0 |
| .IP \(bu 2 |
| \fBCMAKE_GENERATOR_PLATFORM\fP |
| .IP \(bu 2 |
| \fBCMAKE_GENERATOR_TOOLSET\fP |
| .IP \(bu 2 |
| \fBCMAKE_GENERATOR_INSTANCE\fP |
| .UNINDENT |
| .SS CMAKE_GENERATOR_INSTANCE |
| .sp |
| New in version 3.15. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default value for \fBCMAKE_GENERATOR_INSTANCE\fP if no Cache entry is |
| present. This value is only applied if \fBCMAKE_GENERATOR\fP is set. |
| .SS CMAKE_GENERATOR_PLATFORM |
| .sp |
| New in version 3.15. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default value for \fBCMAKE_GENERATOR_PLATFORM\fP if no Cache entry |
| is present and no value is specified by \fBcmake(1)\fP \fB\-A\fP option. |
| This value is only applied if \fBCMAKE_GENERATOR\fP is set. |
| .SS CMAKE_GENERATOR_TOOLSET |
| .sp |
| New in version 3.15. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default value for \fBCMAKE_GENERATOR_TOOLSET\fP if no Cache entry |
| is present and no value is specified by \fBcmake(1)\fP \fB\-T\fP option. |
| This value is only applied if \fBCMAKE_GENERATOR\fP is set. |
| .SS CMAKE_INSTALL_MODE |
| .sp |
| New in version 3.22. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| The \fBCMAKE_INSTALL_MODE\fP environment variable allows users to operate |
| CMake in an alternate mode of \fBfile(INSTALL)\fP and \fBinstall()\fP\&. |
| .sp |
| The default behavior for an installation is to copy a source file from a |
| source directory into a destination directory. This environment variable |
| however allows the user to override this behavior, causing CMake to create |
| symbolic links instead. |
| .SS Usage Scenarios |
| .sp |
| Installing symbolic links rather than copying files can help in the following |
| ways: |
| .INDENT 0.0 |
| .IP \(bu 2 |
| Conserving storage space because files do not have to be duplicated on disk. |
| .IP \(bu 2 |
| Changes to the source of the symbolic link are seen at the install |
| destination without having to re\-run the install step. |
| .IP \(bu 2 |
| Editing through the link at the install destination will modify the source |
| of the link. This may be useful when dealing with CMake project hierarchies, |
| i.e. using \fBExternalProject\fP and consistent source navigation and |
| refactoring is desired across projects. |
| .UNINDENT |
| .SS Allowed Values |
| .sp |
| The following values are allowed for \fBCMAKE_INSTALL_MODE\fP: |
| .INDENT 0.0 |
| .TP |
| .B \fBCOPY\fP, empty or unset |
| Duplicate the file at its destination. This is the default behavior. |
| .TP |
| .B \fBABS_SYMLINK\fP |
| Create an \fIabsolute\fP symbolic link to the source file at the destination. |
| Halt with an error if the link cannot be created. |
| .TP |
| .B \fBABS_SYMLINK_OR_COPY\fP |
| Like \fBABS_SYMLINK\fP but fall back to silently copying if the symlink |
| couldn\(aqt be created. |
| .TP |
| .B \fBREL_SYMLINK\fP |
| Create a \fIrelative\fP symbolic link to the source file at the destination. |
| Halt with an error if the link cannot be created. |
| .TP |
| .B \fBREL_SYMLINK_OR_COPY\fP |
| Like \fBREL_SYMLINK\fP but fall back to silently copying if the symlink |
| couldn\(aqt be created. |
| .TP |
| .B \fBSYMLINK\fP |
| Try as if through \fBREL_SYMLINK\fP and fall back to \fBABS_SYMLINK\fP if the |
| referenced file cannot be expressed using a relative path. |
| Halt with an error if the link cannot be created. |
| .TP |
| .B \fBSYMLINK_OR_COPY\fP |
| Like \fBSYMLINK\fP but fall back to silently copying if the symlink couldn\(aqt |
| be created. |
| .UNINDENT |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| A symbolic link consists of a reference file path rather than contents of its |
| own, hence there are two ways to express the relation, either by a \fIrelative\fP |
| or an \fIabsolute\fP path. |
| .UNINDENT |
| .UNINDENT |
| .SS When To Set The Environment Variable |
| .sp |
| For the environment variable to take effect, it must be set during the correct |
| build phase(s). |
| .INDENT 0.0 |
| .IP \(bu 2 |
| If the project calls \fBfile(INSTALL)\fP directly, the environment |
| variable must be set during the configuration phase. |
| .IP \(bu 2 |
| In order to apply to \fBinstall()\fP, the environment variable must be |
| set during installation. This could be during a build if using the |
| \fBinstall\fP or \fBpackage\fP build targets, or separate from the build when |
| invoking an install or running \fBcpack\fP from the command |
| line. |
| .IP \(bu 2 |
| When using \fBExternalProject\fP, it might be required during the build |
| phase, since the external project\(aqs own configure, build and install steps |
| will execute during the main project\(aqs build phase. |
| .UNINDENT |
| .sp |
| Given the above, it is recommended to set the environment variable consistently |
| across all phases (configure, build and install). |
| .SS Caveats |
| .sp |
| Use this environment variable with caution. The following highlights some |
| points to be considered: |
| .INDENT 0.0 |
| .IP \(bu 2 |
| \fBCMAKE_INSTALL_MODE\fP only affects files, not directories. |
| .IP \(bu 2 |
| Symbolic links are not available on all platforms. |
| .IP \(bu 2 |
| The way this environment variable interacts with the install step of |
| \fBExternalProject\fP is more complex. For further details, see that |
| module\(aqs documentation. |
| .IP \(bu 2 |
| A symbolic link ties the destination to the source in a persistent way. |
| Writing to either of the two affects both file system objects. |
| This is in contrast to normal install behavior which only copies files as |
| they were at the time the install was performed, with no enduring |
| relationship between the source and destination of the install. |
| .IP \(bu 2 |
| Combining \fBCMAKE_INSTALL_MODE\fP with \fBIOS_INSTALL_COMBINED\fP is |
| not supported. |
| .IP \(bu 2 |
| Changing \fBCMAKE_INSTALL_MODE\fP from what it was on a previous run can lead |
| to unexpected results. Moving from a non\-symlinking mode to a symlinking |
| mode will discard any previous file at the destination, but the reverse is |
| not true. Once a symlink exists at the destination, even if you switch to a |
| non\-symlink mode, the symlink will continue to exist at the destination and |
| will not be replaced by an actual file. |
| .UNINDENT |
| .SS CMAKE_<LANG>_COMPILER_LAUNCHER |
| .sp |
| New in version 3.17. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compiler launcher to use for the specified language. Will only be used |
| by CMake to initialize the variable on the first configuration. Afterwards, it |
| is available through the cache setting of the variable of the same name. For |
| any configuration run (including the first), the environment variable will be |
| ignored if the \fBCMAKE_<LANG>_COMPILER_LAUNCHER\fP variable is defined. |
| .SS CMAKE_<LANG>_LINKER_LAUNCHER |
| .sp |
| New in version 3.21. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default launcher to use when linking a target of the specified language. Will |
| only be used by CMake to initialize the variable on the first configuration. |
| Afterwards, it is available through the cache setting of the variable of the |
| same name. For any configuration run (including the first), the environment |
| variable will be ignored if the \fBCMAKE_<LANG>_LINKER_LAUNCHER\fP |
| variable is defined. |
| .SS CMAKE_MSVCIDE_RUN_PATH |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Extra PATH locations for custom commands when using |
| \fBVisual Studio 9 2008\fP (or above) generators. |
| .sp |
| The \fBCMAKE_MSVCIDE_RUN_PATH\fP environment variable sets the default value for |
| the \fBCMAKE_MSVCIDE_RUN_PATH\fP variable if not already explicitly set. |
| .SS CMAKE_NO_VERBOSE |
| .sp |
| New in version 3.14. |
| |
| .sp |
| Disables verbose output from CMake when \fBVERBOSE\fP environment variable |
| is set. |
| .sp |
| Only your build tool of choice will still print verbose output when you start |
| to actually build your project. |
| .SS CMAKE_OSX_ARCHITECTURES |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Target specific architectures for macOS. |
| .sp |
| The \fBCMAKE_OSX_ARCHITECTURES\fP environment variable sets the default value for |
| the \fBCMAKE_OSX_ARCHITECTURES\fP variable. See |
| \fBOSX_ARCHITECTURES\fP for more information. |
| .SS CMAKE_TOOLCHAIN_FILE |
| .sp |
| New in version 3.21. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| The \fBCMAKE_TOOLCHAIN_FILE\fP environment variable specifies a default value |
| for the \fBCMAKE_TOOLCHAIN_FILE\fP variable when there is no explicit |
| configuration given on the first run while creating a new build tree. |
| On later runs in an existing build tree the value persists in the cache |
| as \fBCMAKE_TOOLCHAIN_FILE\fP\&. |
| .SS DESTDIR |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| On UNIX one can use the \fBDESTDIR\fP mechanism in order to relocate the |
| whole installation. \fBDESTDIR\fP means DESTination DIRectory. It is |
| commonly used by packagers to install software in a staging directory. |
| .sp |
| For example, running |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| make DESTDIR=/package/stage install |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .sp |
| will install the software using the installation prefix, e.g. \fB/usr/local\fP, |
| prepended with the \fBDESTDIR\fP value which gives \fB/package/stage/usr/local\fP\&. |
| The packaging tool may then construct the package from the content of the |
| \fB/package/stage\fP directory. |
| .sp |
| See the \fBCMAKE_INSTALL_PREFIX\fP variable to control the |
| installation prefix when configuring a build tree. Or, when using |
| the \fBcmake(1)\fP command\-line tool\(aqs \fB\-\-install\fP mode, |
| one may specify a different prefix using the \fB\-\-prefix\fP option. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| \fBDESTDIR\fP may not be used on Windows because installation |
| prefix usually contains a drive letter like in \fBC:/Program Files\fP |
| which cannot be prepended with some other prefix. |
| .UNINDENT |
| .UNINDENT |
| .SS LDFLAGS |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Will only be used by CMake on the first configuration to determine the default |
| linker flags, after which the value for \fBLDFLAGS\fP is stored in the cache |
| as \fBCMAKE_EXE_LINKER_FLAGS_INIT\fP, |
| \fBCMAKE_SHARED_LINKER_FLAGS_INIT\fP, and |
| \fBCMAKE_MODULE_LINKER_FLAGS_INIT\fP\&. For any configuration run |
| (including the first), the environment variable will be ignored if the |
| equivalent \fBCMAKE_<TYPE>_LINKER_FLAGS_INIT\fP variable is defined. |
| .SS MACOSX_DEPLOYMENT_TARGET |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Specify the minimum version of macOS on which the target binaries are |
| to be deployed. |
| .sp |
| The \fBMACOSX_DEPLOYMENT_TARGET\fP environment variable sets the default value for |
| the \fBCMAKE_OSX_DEPLOYMENT_TARGET\fP variable. |
| .SS <PackageName>_ROOT |
| .sp |
| New in version 3.12. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Calls to \fBfind_package(<PackageName>)\fP will search in prefixes |
| specified by the \fB<PackageName>_ROOT\fP environment variable, where |
| \fB<PackageName>\fP is the name given to the \fBfind_package()\fP call |
| and \fB_ROOT\fP is literal. For example, \fBfind_package(Foo)\fP will search |
| prefixes specified in the \fBFoo_ROOT\fP environment variable (if set). |
| See policy \fBCMP0074\fP\&. |
| .sp |
| This variable may hold a single prefix or a list of prefixes separated |
| by \fB:\fP on UNIX or \fB;\fP on Windows (the same as the \fBPATH\fP environment |
| variable convention on those platforms). |
| .sp |
| See also the \fB<PackageName>_ROOT\fP CMake variable. |
| .SS VERBOSE |
| .sp |
| New in version 3.14. |
| |
| .sp |
| Activates verbose output from CMake and your build tools of choice when |
| you start to actually build your project. |
| .sp |
| Note that any given value is ignored. It\(aqs just checked for existence. |
| .sp |
| See also Build Tool Mode and |
| \fBCMAKE_NO_VERBOSE\fP environment variable |
| .SH ENVIRONMENT VARIABLES FOR LANGUAGES |
| .SS ASM<DIALECT> |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling a specific dialect of assembly language |
| files. \fBASM<DIALECT>\fP can be \fBASM\fP, \fBASM_NASM\fP (Netwide Assembler), |
| \fBASM_MASM\fP (Microsoft Assembler) or \fBASM\-ATT\fP (Assembler AT&T). |
| Will only be used by CMake on the first configuration to determine |
| \fBASM<DIALECT>\fP compiler, after which the value for \fBASM<DIALECT>\fP is stored |
| in the cache as |
| \fBCMAKE_ASM<DIALECT>_COMPILER\fP\&. For subsequent |
| configuration runs, the environment variable will be ignored in favor of |
| \fBCMAKE_ASM<DIALECT>_COMPILER\fP\&. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| Options that are required to make the compiler work correctly can be included; |
| they can not be changed. |
| .UNINDENT |
| .UNINDENT |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| $ export ASM="custom\-compiler \-\-arg1 \-\-arg2" |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .SS ASM<DIALECT>FLAGS |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling a specific dialect of an |
| assembly language. \fBASM<DIALECT>FLAGS\fP can be \fBASMFLAGS\fP, \fBASM_NASMFLAGS\fP, |
| \fBASM_MASMFLAGS\fP or \fBASM\-ATTFLAGS\fP\&. Will only be used by CMake on the |
| first configuration to determine \fBASM_<DIALECT>\fP default compilation |
| flags, after which the value for \fBASM<DIALECT>FLAGS\fP is stored in the cache |
| as \fBCMAKE_ASM<DIALECT>_FLAGS <CMAKE_<LANG>_FLAGS>\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored, if the |
| \fBCMAKE_ASM<DIALECT>_FLAGS <CMAKE_<LANG>_FLAGS>\fP variable is defined. |
| .sp |
| See also \fBCMAKE_ASM<DIALECT>_FLAGS_INIT\fP\&. |
| .SS CC |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBC\fP language files. Will only be used by |
| CMake on the first configuration to determine \fBC\fP compiler, after which the |
| value for \fBCC\fP is stored in the cache as |
| \fBCMAKE_C_COMPILER\fP\&. For any configuration run |
| (including the first), the environment variable will be ignored if the |
| \fBCMAKE_C_COMPILER\fP variable is defined. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| Options that are required to make the compiler work correctly can be included; |
| they can not be changed. |
| .UNINDENT |
| .UNINDENT |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| $ export CC="custom\-compiler \-\-arg1 \-\-arg2" |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .SS CFLAGS |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling \fBC\fP files. Will only be |
| used by CMake on the first configuration to determine \fBCC\fP default compilation |
| flags, after which the value for \fBCFLAGS\fP is stored in the cache |
| as \fBCMAKE_C_FLAGS\fP\&. For any configuration run |
| (including the first), the environment variable will be ignored if the |
| \fBCMAKE_C_FLAGS\fP variable is defined. |
| .sp |
| See also \fBCMAKE_C_FLAGS_INIT\fP\&. |
| .SS CSFLAGS |
| .sp |
| New in version 3.9.2. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling \fBCSharp\fP files. Will only be |
| used by CMake on the first configuration to determine \fBCSharp\fP default |
| compilation flags, after which the value for \fBCSFLAGS\fP is stored in the cache |
| as \fBCMAKE_CSharp_FLAGS\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if the |
| \fBCMAKE_CSharp_FLAGS\fP variable is defined. |
| .sp |
| See also \fBCMAKE_CSharp_FLAGS_INIT\fP\&. |
| .SS CUDAARCHS |
| .sp |
| New in version 3.20. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Value used to initialize \fBCMAKE_CUDA_ARCHITECTURES\fP on the first |
| configuration. Subsequent runs will use the value stored in the cache. |
| .sp |
| This is a semicolon\-separated list of architectures as described in |
| \fBCUDA_ARCHITECTURES\fP\&. |
| .SS CUDACXX |
| .sp |
| New in version 3.8. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBCUDA\fP language files. Will only be used by |
| CMake on the first configuration to determine \fBCUDA\fP compiler, after which the |
| value for \fBCUDA\fP is stored in the cache as |
| \fBCMAKE_CUDA_COMPILER\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if the |
| \fBCMAKE_CUDA_COMPILER\fP variable is defined. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| Options that are required to make the compiler work correctly can be included; |
| they can not be changed. |
| .UNINDENT |
| .UNINDENT |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| $ export CUDACXX="custom\-compiler \-\-arg1 \-\-arg2" |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .SS CUDAFLAGS |
| .sp |
| New in version 3.8. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling \fBCUDA\fP files. Will only be |
| used by CMake on the first configuration to determine \fBCUDA\fP default |
| compilation flags, after which the value for \fBCUDAFLAGS\fP is stored in the |
| cache as \fBCMAKE_CUDA_FLAGS\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if |
| the \fBCMAKE_CUDA_FLAGS\fP variable is defined. |
| .sp |
| See also \fBCMAKE_CUDA_FLAGS_INIT\fP\&. |
| .SS CUDAHOSTCXX |
| .sp |
| New in version 3.8. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling host code when compiling \fBCUDA\fP |
| language files. Will only be used by CMake on the first configuration to |
| determine \fBCUDA\fP host compiler, after which the value for \fBCUDAHOSTCXX\fP is |
| stored in the cache as \fBCMAKE_CUDA_HOST_COMPILER\fP\&. This environment |
| variable is preferred over \fBCMAKE_CUDA_HOST_COMPILER\fP\&. |
| .sp |
| This environment variable is primarily meant for use with projects that |
| enable \fBCUDA\fP as a first\-class language. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| Ignored when using Visual Studio Generators\&. |
| .UNINDENT |
| .UNINDENT |
| .sp |
| New in version 3.13: The \fBFindCUDA\fP |
| module will use this variable to initialize its \fBCUDA_HOST_COMPILER\fP setting. |
| |
| .SS CXX |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBCXX\fP language files. Will only be used by |
| CMake on the first configuration to determine \fBCXX\fP compiler, after which the |
| value for \fBCXX\fP is stored in the cache as |
| \fBCMAKE_CXX_COMPILER\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if the |
| \fBCMAKE_CXX_COMPILER\fP variable is defined. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| Options that are required to make the compiler work correctly can be included; |
| they can not be changed. |
| .UNINDENT |
| .UNINDENT |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| $ export CXX="custom\-compiler \-\-arg1 \-\-arg2" |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .SS CXXFLAGS |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling \fBCXX\fP (C++) files. Will |
| only be used by CMake on the first configuration to determine \fBCXX\fP default |
| compilation flags, after which the value for \fBCXXFLAGS\fP is stored in the cache |
| as \fBCMAKE_CXX_FLAGS\fP\&. For any configuration run ( |
| including the first), the environment variable will be ignored if |
| the \fBCMAKE_CXX_FLAGS\fP variable is defined. |
| .sp |
| See also \fBCMAKE_CXX_FLAGS_INIT\fP\&. |
| .SS FC |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBFortran\fP language files. Will only be used |
| by CMake on the first configuration to determine \fBFortran\fP compiler, after |
| which the value for \fBFortran\fP is stored in the cache as |
| \fBCMAKE_Fortran_COMPILER\fP\&. For any |
| configuration run (including the first), the environment variable will be |
| ignored if the \fBCMAKE_Fortran_COMPILER\fP |
| variable is defined. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| Options that are required to make the compiler work correctly can be included; |
| they can not be changed. |
| .UNINDENT |
| .UNINDENT |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| $ export FC="custom\-compiler \-\-arg1 \-\-arg2" |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .SS FFLAGS |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling \fBFortran\fP files. Will only |
| be used by CMake on the first configuration to determine \fBFortran\fP default |
| compilation flags, after which the value for \fBFFLAGS\fP is stored in the cache |
| as \fBCMAKE_Fortran_FLAGS\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if |
| the \fBCMAKE_Fortran_FLAGS\fP variable is defined. |
| .sp |
| See also \fBCMAKE_Fortran_FLAGS_INIT\fP\&. |
| .SS HIPCXX |
| .sp |
| New in version 3.21. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBHIP\fP language files. Will only be used by |
| CMake on the first configuration to determine \fBHIP\fP compiler, after which the |
| value for \fBHIP\fP is stored in the cache as |
| \fBCMAKE_HIP_COMPILER\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if the |
| \fBCMAKE_HIP_COMPILER\fP variable is defined. |
| .SS HIPFLAGS |
| .sp |
| New in version 3.21. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling \fBHIP\fP files. Will only be |
| used by CMake on the first configuration to determine \fBHIP\fP default |
| compilation flags, after which the value for \fBHIPFLAGS\fP is stored in the |
| cache as \fBCMAKE_HIP_FLAGS\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if |
| the \fBCMAKE_HIP_FLAGS\fP variable is defined. |
| .sp |
| See also \fBCMAKE_HIP_FLAGS_INIT\fP\&. |
| .SS ISPC |
| .sp |
| New in version 3.19. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBISPC\fP language files. Will only be used by |
| CMake on the first configuration to determine \fBISPC\fP compiler, after which the |
| value for \fBISPC\fP is stored in the cache as |
| \fBCMAKE_ISPC_COMPILER\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if the |
| \fBCMAKE_ISPC_COMPILER\fP variable is defined. |
| .SS ISPCFLAGS |
| .sp |
| New in version 3.19. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling \fBISPC\fP files. Will only be |
| used by CMake on the first configuration to determine \fBISPC\fP default |
| compilation flags, after which the value for \fBISPCFLAGS\fP is stored in the |
| cache as \fBCMAKE_ISPC_FLAGS\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if |
| the \fBCMAKE_ISPC_FLAGS\fP variable is defined. |
| .sp |
| See also \fBCMAKE_ISPC_FLAGS_INIT\fP\&. |
| .SS OBJC |
| .sp |
| New in version 3.16.7. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBOBJC\fP language files. Will only be used |
| by CMake on the first configuration to determine \fBOBJC\fP compiler, after |
| which the value for \fBOBJC\fP is stored in the cache as |
| \fBCMAKE_OBJC_COMPILER\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if the |
| \fBCMAKE_OBJC_COMPILER\fP variable is defined. |
| .sp |
| If \fBOBJC\fP is not defined, the \fBCC\fP environment variable will |
| be checked instead. |
| .SS OBJCXX |
| .sp |
| New in version 3.16.7. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBOBJCXX\fP language files. Will only be used |
| by CMake on the first configuration to determine \fBOBJCXX\fP compiler, after |
| which the value for \fBOBJCXX\fP is stored in the cache as |
| \fBCMAKE_OBJCXX_COMPILER\fP\&. For any configuration |
| run (including the first), the environment variable will be ignored if the |
| \fBCMAKE_OBJCXX_COMPILER\fP variable is defined. |
| .sp |
| If \fBOBJCXX\fP is not defined, the \fBCXX\fP environment variable will |
| be checked instead. |
| .SS RC |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBresource\fP files. Will only be used by CMake |
| on the first configuration to determine \fBresource\fP compiler, after which the |
| value for \fBRC\fP is stored in the cache as |
| \fBCMAKE_RC_COMPILER\fP\&. For any configuration run |
| (including the first), the environment variable will be ignored if the |
| \fBCMAKE_RC_COMPILER\fP variable is defined. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| Options that are required to make the compiler work correctly can be included; |
| they can not be changed. |
| .UNINDENT |
| .UNINDENT |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| $ export RC="custom\-compiler \-\-arg1 \-\-arg2" |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .SS RCFLAGS |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Default compilation flags to be used when compiling \fBresource\fP files. Will |
| only be used by CMake on the first configuration to determine \fBresource\fP |
| default compilation flags, after which the value for \fBRCFLAGS\fP is stored in |
| the cache as \fBCMAKE_RC_FLAGS\fP\&. For any |
| configuration run (including the first), the environment variable will be ignored |
| if the \fBCMAKE_RC_FLAGS\fP variable is defined. |
| .sp |
| See also \fBCMAKE_RC_FLAGS_INIT\fP\&. |
| .SS SWIFTC |
| .sp |
| New in version 3.15. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Preferred executable for compiling \fBSwift\fP language files. Will only be used by |
| CMake on the first configuration to determine \fBSwift\fP compiler, after which the |
| value for \fBSWIFTC\fP is stored in the cache as |
| \fBCMAKE_Swift_COMPILER\fP\&. For any configuration run |
| (including the first), the environment variable will be ignored if the |
| \fBCMAKE_Swift_COMPILER\fP variable is defined. |
| .sp |
| \fBNOTE:\fP |
| .INDENT 0.0 |
| .INDENT 3.5 |
| Options that are required to make the compiler work correctly can be included; |
| they can not be changed. |
| .UNINDENT |
| .UNINDENT |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| $ export SWIFTC="custom\-compiler \-\-arg1 \-\-arg2" |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .SH ENVIRONMENT VARIABLES FOR CTEST |
| .SS CTEST_INTERACTIVE_DEBUG_MODE |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Environment variable that will exist and be set to \fB1\fP when a test executed |
| by \fBctest(1)\fP is run in interactive mode. |
| .SS CTEST_OUTPUT_ON_FAILURE |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Boolean environment variable that controls if the output should be logged for |
| failed tests. Set the value to \fB1\fP, \fBTrue\fP, or \fBON\fP to enable output on failure. |
| See \fBctest(1)\fP for more information on controlling output of failed |
| tests. |
| .SS CTEST_PARALLEL_LEVEL |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Specify the number of tests for CTest to run in parallel. See \fBctest(1)\fP |
| for more information on parallel test execution. |
| .SS CTEST_PROGRESS_OUTPUT |
| .sp |
| New in version 3.13. |
| |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Boolean environment variable that affects how \fBctest\fP |
| command output reports overall progress. When set to \fB1\fP, \fBTRUE\fP, \fBON\fP or anything |
| else that evaluates to boolean true, progress is reported by repeatedly |
| updating the same line. This greatly reduces the overall verbosity, but is |
| only supported when output is sent directly to a terminal. If the environment |
| variable is not set or has a value that evaluates to false, output is reported |
| normally with each test having its own start and end lines logged to the |
| output. |
| .sp |
| The \fB\-\-progress\fP option to \fBctest\fP overrides this |
| environment variable if both are given. |
| .SS CTEST_USE_LAUNCHERS_DEFAULT |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Initializes the \fBCTEST_USE_LAUNCHERS\fP variable if not already defined. |
| .SS DASHBOARD_TEST_FROM_CTEST |
| .sp |
| This is a CMake Environment Variable\&. Its initial value is taken from |
| the calling process environment. |
| .sp |
| Environment variable that will exist when a test executed by \fBctest(1)\fP |
| is run in non\-interactive mode. The value will be equal to |
| \fBCMAKE_VERSION\fP\&. |
| .SH ENVIRONMENT VARIABLES FOR THE CMAKE CURSES INTERFACE |
| .SS CCMAKE_COLORS |
| .sp |
| New in version 3.18. |
| |
| .sp |
| Determines what colors are used by the CMake curses interface, |
| when run on a terminal that supports colors. |
| The syntax follows the same conventions as \fBLS_COLORS\fP; |
| that is, a list of key/value pairs separated by \fB:\fP\&. |
| .sp |
| Keys are a single letter corresponding to a CMake cache variable type: |
| .INDENT 0.0 |
| .IP \(bu 2 |
| \fBs\fP: A \fBSTRING\fP\&. |
| .IP \(bu 2 |
| \fBp\fP: A \fBFILEPATH\fP\&. |
| .IP \(bu 2 |
| \fBc\fP: A value which has an associated list of choices. |
| .IP \(bu 2 |
| \fBy\fP: A \fBBOOL\fP which has a true\-like value (e.g. \fBON\fP, \fBYES\fP). |
| .IP \(bu 2 |
| \fBn\fP: A \fBBOOL\fP which has a false\-like value (e.g. \fBOFF\fP, \fBNO\fP). |
| .UNINDENT |
| .sp |
| Values are an integer number that specifies what color to use. |
| \fB0\fP is black (you probably don\(aqt want to use that). |
| Others are determined by your terminal\(aqs color support. |
| Most (color) terminals will support at least 8 or 16 colors. |
| Some will support up to 256 colors. The colors will likely match |
| \fI\%this chart\fP, |
| although the first 16 colors may match the original |
| \fI\%CGA color palette\fP\&. |
| (Many modern terminal emulators also allow their color palette, |
| at least for the first 16 colors, to be configured by the user.) |
| .sp |
| Note that fairly minimal checking is done for bad colors |
| (although a value higher than what curses believes your terminal supports |
| will be silently ignored) or bad syntax. |
| .sp |
| For example: |
| .INDENT 0.0 |
| .INDENT 3.5 |
| .sp |
| .nf |
| .ft C |
| CCMAKE_COLORS=\(aqs=39:p=220:c=207:n=196:y=46\(aq |
| .ft P |
| .fi |
| .UNINDENT |
| .UNINDENT |
| .SH COPYRIGHT |
| 2000-2022 Kitware, Inc. and Contributors |
| .\" Generated by docutils manpage writer. |
| . |