CMAKE-GENERATOR-EXPRESSIONS(7) CMake CMAKE-GENERATOR-EXPRESSIONS(7)
NAME
cmake-generator-expressions - CMake Generator Expressions
INTRODUCTION
Generator expressions are evaluated during build system generation to
produce information specific to each build configuration.
Generator expressions are allowed in the context of many target proper-
ties, such as LINK_LIBRARIES, INCLUDE_DIRECTORIES, COMPILE_DEFINITIONS
and others. They may also be used when using commands to populate
those properties, such as target_link_libraries(), target_include_di-
rectories(), target_compile_definitions() and others.
They enable conditional linking, conditional definitions used when com-
piling, conditional include directories, and more. The conditions may
be based on the build configuration, target properties, platform infor-
mation or any other queryable information.
Generator expressions have the form $<...>. To avoid confusion, this
page deviates from most of the CMake documentation in that it omits an-
gular brackets <...> around placeholders like condition, string, tar-
get, among others.
Generator expressions can be nested, as shown in most of the examples
below.
BOOLEAN GENERATOR EXPRESSIONS
Boolean expressions evaluate to either 0 or 1. They are typically used
to construct the condition in a conditional generator expression.
Available boolean expressions are:
Logical Operators
$<BOOL:string>
Converts string to 0 or 1. Evaluates to 0 if any of the follow-
ing is true:
o string is empty,
o string is a case-insensitive equal of 0, FALSE, OFF, N, NO,
IGNORE, or NOTFOUND, or
o string ends in the suffix -NOTFOUND (case-sensitive).
Otherwise evaluates to 1.
$<AND:conditions>
where conditions is a comma-separated list of boolean expres-
sions. Evaluates to 1 if all conditions are 1. Otherwise eval-
uates to 0.
$<OR:conditions>
where conditions is a comma-separated list of boolean expres-
sions. Evaluates to 1 if at least one of the conditions is 1.
Otherwise evaluates to 0.
$<NOT:condition>
0 if condition is 1, else 1.
String Comparisons
$<STREQUAL:string1,string2>
1 if string1 and string2 are equal, else 0. The comparison is
case-sensitive. For a case-insensitive comparison, combine with
a string transforming generator expression,
$<STREQUAL:$<UPPER_CASE:${foo}>,"BAR"> # "1" if ${foo} is any of "BAR", "Bar", "bar", ...
$<EQUAL:value1,value2>
1 if value1 and value2 are numerically equal, else 0.
$<IN_LIST:string,list>
1 if string is member of the semicolon-separated list, else 0.
Uses case-sensitive comparisons.
$<VERSION_LESS:v1,v2>
1 if v1 is a version less than v2, else 0.
$<VERSION_GREATER:v1,v2>
1 if v1 is a version greater than v2, else 0.
$<VERSION_EQUAL:v1,v2>
1 if v1 is the same version as v2, else 0.
$<VERSION_LESS_EQUAL:v1,v2>
1 if v1 is a version less than or equal to v2, else 0.
$<VERSION_GREATER_EQUAL:v1,v2>
1 if v1 is a version greater than or equal to v2, else 0.
Variable Queries
$<TARGET_EXISTS:target>
1 if target exists, else 0.
$<CONFIG:cfg>
1 if config is cfg, else 0. This is a case-insensitive compari-
son. The mapping in MAP_IMPORTED_CONFIG_<CONFIG> is also con-
sidered by this expression when it is evaluated on a property on
an IMPORTED target.
$<PLATFORM_ID:platform_ids>
where platform_ids is a comma-separated list. 1 if the CMakes
platform id matches any one of the entries in platform_ids, oth-
erwise 0. See also the CMAKE_SYSTEM_NAME variable.
$<C_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the C compiler matches any one of the entries in
compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<CXX_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the CXX compiler matches any one of the entries
in compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<CUDA_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the CUDA compiler matches any one of the entries
in compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<OBJC_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Objective-C compiler matches any one of the
entries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<OBJCXX_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Objective-C++ compiler matches any one of the
entries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<Fortran_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Fortran compiler matches any one of the en-
tries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<C_COMPILER_VERSION:version>
1 if the version of the C compiler matches version, otherwise 0.
See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<CXX_COMPILER_VERSION:version>
1 if the version of the CXX compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<CUDA_COMPILER_VERSION:version>
1 if the version of the CXX compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<OBJC_COMPILER_VERSION:version>
1 if the version of the OBJC compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<OBJCXX_COMPILER_VERSION:version>
1 if the version of the OBJCXX compiler matches version, other-
wise 0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<Fortran_COMPILER_VERSION:version>
1 if the version of the Fortran compiler matches version, other-
wise 0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<TARGET_POLICY:policy>
1 if the policy was NEW when the head target was created, else
0. If the policy was not set, the warning message for.
CMAKE-GENERATOR-EXPRESSIONS(7) CMake CMAKE-GENERATOR-EXPRESSIONS(7)
NAME
cmake-generator-expressions - CMake Generator Expressions
INTRODUCTION
Generator expressions are evaluated during build system generation to
produce information specific to each build configuration.
Generator expressions are allowed in the context of many target proper-
ties, such as LINK_LIBRARIES, INCLUDE_DIRECTORIES, COMPILE_DEFINITIONS
and others. They may also be used when using commands to populate
those properties, such as target_link_libraries(), target_include_di-
rectories(), target_compile_definitions() and others.
They enable conditional linking, conditional definitions used when com-
piling, conditional include directories, and more. The conditions may
be based on the build configuration, target properties, platform infor-
mation or any other queryable information.
Generator expressions have the form $<...>. To avoid confusion, this
page deviates from most of the CMake documentation in that it omits an-
gular brackets <...> around placeholders like condition, string, tar-
get, among others.
Generator expressions can be nested, as shown in most of the examples
below.
BOOLEAN GENERATOR EXPRESSIONS
Boolean expressions evaluate to either 0 or 1. They are typically used
to construct the condition in a conditional generator expression.
Available boolean expressions are:
Logical Operators
$<BOOL:string>
Converts string to 0 or 1. Evaluates to 0 if any of the follow-
ing is true:
o string is empty,
o string is a case-insensitive equal of 0, FALSE, OFF, N, NO,
IGNORE, or NOTFOUND, or
o string ends in the suffix -NOTFOUND (case-sensitive).
Otherwise evaluates to 1.
$<AND:conditions>
where conditions is a comma-separated list of boolean expres-
sions. Evaluates to 1 if all conditions are 1. Otherwise eval-
uates to 0.
$<OR:conditions>
where conditions is a comma-separated list of boolean expres-
sions. Evaluates to 1 if at least one of the conditions is 1.
Otherwise evaluates to 0.
$<NOT:condition>
0 if condition is 1, else 1.
String Comparisons
$<STREQUAL:string1,string2>
1 if string1 and string2 are equal, else 0. The comparison is
case-sensitive. For a case-insensitive comparison, combine with
a string transforming generator expression,
$<STREQUAL:$<UPPER_CASE:${foo}>,"BAR"> # "1" if ${foo} is any of "BAR", "Bar", "bar", ...
$<EQUAL:value1,value2>
1 if value1 and value2 are numerically equal, else 0.
$<IN_LIST:string,list>
1 if string is member of the semicolon-separated list, else 0.
Uses case-sensitive comparisons.
$<VERSION_LESS:v1,v2>
1 if v1 is a version less than v2, else 0.
$<VERSION_GREATER:v1,v2>
1 if v1 is a version greater than v2, else 0.
$<VERSION_EQUAL:v1,v2>
1 if v1 is the same version as v2, else 0.
$<VERSION_LESS_EQUAL:v1,v2>
1 if v1 is a version less than or equal to v2, else 0.
$<VERSION_GREATER_EQUAL:v1,v2>
1 if v1 is a version greater than or equal to v2, else 0.
Variable Queries
$<TARGET_EXISTS:target>
1 if target exists, else 0.
$<CONFIG:cfg>
1 if config is cfg, else 0. This is a case-insensitive compari-
son. The mapping in MAP_IMPORTED_CONFIG_<CONFIG> is also con-
sidered by this expression when it is evaluated on a property on
an IMPORTED target.
$<PLATFORM_ID:platform_ids>
where platform_ids is a comma-separated list. 1 if the CMakes
platform id matches any one of the entries in platform_ids, oth-
erwise 0. See also the CMAKE_SYSTEM_NAME variable.
$<C_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the C compiler matches any one of the entries in
compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<CXX_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the CXX compiler matches any one of the entries
in compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<CUDA_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the CUDA compiler matches any one of the entries
in compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<OBJC_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Objective-C compiler matches any one of the
entries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<OBJCXX_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Objective-C++ compiler matches any one of the
entries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<Fortran_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Fortran compiler matches any one of the en-
tries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<C_COMPILER_VERSION:version>
1 if the version of the C compiler matches version, otherwise 0.
See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<CXX_COMPILER_VERSION:version>
1 if the version of the CXX compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<CUDA_COMPILER_VERSION:version>
1 if the version of the CXX compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<OBJC_COMPILER_VERSION:version>
1 if the version of the OBJC compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<OBJCXX_COMPILER_VERSION:version>
1 if the version of the OBJCXX compiler matches version, other-
wise 0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<Fortran_COMPILER_VERSION:version>
1 if the version of the Fortran compiler matches version, other-
wise 0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<TARGET_POLICY:policy>
1 if the policy was NEW when the head target was created, else
0. If the policy was not set, the warning message for.
CMAKE-GENERATOR-EXPRESSIONS(7) CMake CMAKE-GENERATOR-EXPRESSIONS(7)
NAME
cmake-generator-expressions - CMake Generator Expressions
INTRODUCTION
Generator expressions are evaluated during build system generation to
produce information specific to each build configuration.
Generator expressions are allowed in the context of many target proper-
ties, such as LINK_LIBRARIES, INCLUDE_DIRECTORIES, COMPILE_DEFINITIONS
and others. They may also be used when using commands to populate
those properties, such as target_link_libraries(), target_include_di-
rectories(), target_compile_definitions() and others.
They enable conditional linking, conditional definitions used when com-
piling, conditional include directories, and more. The conditions may
be based on the build configuration, target properties, platform infor-
mation or any other queryable information.
Generator expressions have the form $<...>. To avoid confusion, this
page deviates from most of the CMake documentation in that it omits an-
gular brackets <...> around placeholders like condition, string, tar-
get, among others.
Generator expressions can be nested, as shown in most of the examples
below.
BOOLEAN GENERATOR EXPRESSIONS
Boolean expressions evaluate to either 0 or 1. They are typically used
to construct the condition in a conditional generator expression.
Available boolean expressions are:
Logical Operators
$<BOOL:string>
Converts string to 0 or 1. Evaluates to 0 if any of the follow-
ing is true:
o string is empty,
o string is a case-insensitive equal of 0, FALSE, OFF, N, NO,
IGNORE, or NOTFOUND, or
o string ends in the suffix -NOTFOUND (case-sensitive).
Otherwise evaluates to 1.
$<AND:conditions>
where conditions is a comma-separated list of boolean expres-
sions. Evaluates to 1 if all conditions are 1. Otherwise eval-
uates to 0.
$<OR:conditions>
where conditions is a comma-separated list of boolean expres-
sions. Evaluates to 1 if at least one of the conditions is 1.
Otherwise evaluates to 0.
$<NOT:condition>
0 if condition is 1, else 1.
String Comparisons
$<STREQUAL:string1,string2>
1 if string1 and string2 are equal, else 0. The comparison is
case-sensitive. For a case-insensitive comparison, combine with
a string transforming generator expression,
$<STREQUAL:$<UPPER_CASE:${foo}>,"BAR"> # "1" if ${foo} is any of "BAR", "Bar", "bar", ...
$<EQUAL:value1,value2>
1 if value1 and value2 are numerically equal, else 0.
$<IN_LIST:string,list>
1 if string is member of the semicolon-separated list, else 0.
Uses case-sensitive comparisons.
$<VERSION_LESS:v1,v2>
1 if v1 is a version less than v2, else 0.
$<VERSION_GREATER:v1,v2>
1 if v1 is a version greater than v2, else 0.
$<VERSION_EQUAL:v1,v2>
1 if v1 is the same version as v2, else 0.
$<VERSION_LESS_EQUAL:v1,v2>
1 if v1 is a version less than or equal to v2, else 0.
$<VERSION_GREATER_EQUAL:v1,v2>
1 if v1 is a version greater than or equal to v2, else 0.
Variable Queries
$<TARGET_EXISTS:target>
1 if target exists, else 0.
$<CONFIG:cfg>
1 if config is cfg, else 0. This is a case-insensitive compari-
son. The mapping in MAP_IMPORTED_CONFIG_<CONFIG> is also con-
sidered by this expression when it is evaluated on a property on
an IMPORTED target.
$<PLATFORM_ID:platform_ids>
where platform_ids is a comma-separated list. 1 if the CMakes
platform id matches any one of the entries in platform_ids, oth-
erwise 0. See also the CMAKE_SYSTEM_NAME variable.
$<C_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the C compiler matches any one of the entries in
compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<CXX_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the CXX compiler matches any one of the entries
in compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<CUDA_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the CUDA compiler matches any one of the entries
in compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<OBJC_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Objective-C compiler matches any one of the
entries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<OBJCXX_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Objective-C++ compiler matches any one of the
entries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<Fortran_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Fortran compiler matches any one of the en-
tries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<C_COMPILER_VERSION:version>
1 if the version of the C compiler matches version, otherwise 0.
See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<CXX_COMPILER_VERSION:version>
1 if the version of the CXX compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<CUDA_COMPILER_VERSION:version>
1 if the version of the CXX compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<OBJC_COMPILER_VERSION:version>
1 if the version of the OBJC compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<OBJCXX_COMPILER_VERSION:version>
1 if the version of the OBJCXX compiler matches version, other-
wise 0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<Fortran_COMPILER_VERSION:version>
1 if the version of the Fortran compiler matches version, other-
wise 0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<TARGET_POLICY:policy>
1 if the policy was NEW when the head target was created, else
0. If the policy was not set, the warning message for.
CMAKE-GENERATOR-EXPRESSIONS(7) CMake CMAKE-GENERATOR-EXPRESSIONS(7)
NAME
cmake-generator-expressions - CMake Generator Expressions
INTRODUCTION
Generator expressions are evaluated during build system generation to
produce information specific to each build configuration.
Generator expressions are allowed in the context of many target proper-
ties, such as LINK_LIBRARIES, INCLUDE_DIRECTORIES, COMPILE_DEFINITIONS
and others. They may also be used when using commands to populate
those properties, such as target_link_libraries(), target_include_di-
rectories(), target_compile_definitions() and others.
They enable conditional linking, conditional definitions used when com-
piling, conditional include directories, and more. The conditions may
be based on the build configuration, target properties, platform infor-
mation or any other queryable information.
Generator expressions have the form $<...>. To avoid confusion, this
page deviates from most of the CMake documentation in that it omits an-
gular brackets <...> around placeholders like condition, string, tar-
get, among others.
Generator expressions can be nested, as shown in most of the examples
below.
BOOLEAN GENERATOR EXPRESSIONS
Boolean expressions evaluate to either 0 or 1. They are typically used
to construct the condition in a conditional generator expression.
Available boolean expressions are:
Logical Operators
$<BOOL:string>
Converts string to 0 or 1. Evaluates to 0 if any of the follow-
ing is true:
o string is empty,
o string is a case-insensitive equal of 0, FALSE, OFF, N, NO,
IGNORE, or NOTFOUND, or
o string ends in the suffix -NOTFOUND (case-sensitive).
Otherwise evaluates to 1.
$<AND:conditions>
where conditions is a comma-separated list of boolean expres-
sions. Evaluates to 1 if all conditions are 1. Otherwise eval-
uates to 0.
$<OR:conditions>
where conditions is a comma-separated list of boolean expres-
sions. Evaluates to 1 if at least one of the conditions is 1.
Otherwise evaluates to 0.
$<NOT:condition>
0 if condition is 1, else 1.
String Comparisons
$<STREQUAL:string1,string2>
1 if string1 and string2 are equal, else 0. The comparison is
case-sensitive. For a case-insensitive comparison, combine with
a string transforming generator expression,
$<STREQUAL:$<UPPER_CASE:${foo}>,"BAR"> # "1" if ${foo} is any of "BAR", "Bar", "bar", ...
$<EQUAL:value1,value2>
1 if value1 and value2 are numerically equal, else 0.
$<IN_LIST:string,list>
1 if string is member of the semicolon-separated list, else 0.
Uses case-sensitive comparisons.
$<VERSION_LESS:v1,v2>
1 if v1 is a version less than v2, else 0.
$<VERSION_GREATER:v1,v2>
1 if v1 is a version greater than v2, else 0.
$<VERSION_EQUAL:v1,v2>
1 if v1 is the same version as v2, else 0.
$<VERSION_LESS_EQUAL:v1,v2>
1 if v1 is a version less than or equal to v2, else 0.
$<VERSION_GREATER_EQUAL:v1,v2>
1 if v1 is a version greater than or equal to v2, else 0.
Variable Queries
$<TARGET_EXISTS:target>
1 if target exists, else 0.
$<CONFIG:cfg>
1 if config is cfg, else 0. This is a case-insensitive compari-
son. The mapping in MAP_IMPORTED_CONFIG_<CONFIG> is also con-
sidered by this expression when it is evaluated on a property on
an IMPORTED target.
$<PLATFORM_ID:platform_ids>
where platform_ids is a comma-separated list. 1 if the CMakes
platform id matches any one of the entries in platform_ids, oth-
erwise 0. See also the CMAKE_SYSTEM_NAME variable.
$<C_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the C compiler matches any one of the entries in
compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<CXX_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the CXX compiler matches any one of the entries
in compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<CUDA_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the CUDA compiler matches any one of the entries
in compiler_ids, otherwise 0. See also the CMAKE_<LANG>_COM-
PILER_ID variable.
$<OBJC_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Objective-C compiler matches any one of the
entries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<OBJCXX_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Objective-C++ compiler matches any one of the
entries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<Fortran_COMPILER_ID:compiler_ids>
where compiler_ids is a comma-separated list. 1 if the CMakes
compiler id of the Fortran compiler matches any one of the en-
tries in compiler_ids, otherwise 0. See also the
CMAKE_<LANG>_COMPILER_ID variable.
$<C_COMPILER_VERSION:version>
1 if the version of the C compiler matches version, otherwise 0.
See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<CXX_COMPILER_VERSION:version>
1 if the version of the CXX compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<CUDA_COMPILER_VERSION:version>
1 if the version of the CXX compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<OBJC_COMPILER_VERSION:version>
1 if the version of the OBJC compiler matches version, otherwise
0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<OBJCXX_COMPILER_VERSION:version>
1 if the version of the OBJCXX compiler matches version, other-
wise 0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<Fortran_COMPILER_VERSION:version>
1 if the version of the Fortran compiler matches version, other-
wise 0. See also the CMAKE_<LANG>_COMPILER_VERSION variable.
$<TARGET_POLICY:policy>
1 if the policy was NEW when the head target was created, else
0. If the policy was not set, the warning message for.
CMAKE-GENERATOR-EXPRESSIONS(7) CMake CMAKE-GENERATOR-EXPRESSIONS(7)
NAME
cmake-generator-expressions - CMake Generator Expressions
INTRODUCTION
Generator expressions are evaluated during build system generation to
produce information specific to each build configuration.
Generator expressions are allowed in the context of many target proper-
ties, such as LINK_LIBRARIES, INCLUDE_DIRECTORIES, COMPILE_DEFINITIONS
and others. They may also be used when using commands to populate
those properties, such as target_link_libraries(), target_include_di-
rectories(), target_compile_definitions() and others.
They enable conditional linking, conditional definitions used when com-
piling, conditional include directories, and more. The conditions may
be based on the build configuration, target properties, platform infor-
mation or any other queryable information.
Generator expressions have the form $<...>. To avoid confusion, this
page deviates from most of the CMake documentation in that it omits an-
gular brackets <...
3.18.4 September 13, 2021CMAKE-GENERATOR-EXPRESSIONS(7)
Czas wygenerowania: 0.00048 sek.
Created with the man page lookup class by Andrew Collington.
Based on a C man page viewer by Vadim Pavlov
Unicode soft-hyphen fix (as used by RedHat) by Dan Edwards
Some optimisations by Eli Argon
Caching idea and code contribution by James Richardson
Copyright © 2003-2025 Linux.pl
Hosted by Hosting Linux.pl