summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2022-01-03 01:38:52 +0100
committerSlávek Banko <slavek.banko@axis.cz>2022-01-03 01:39:18 +0100
commit538040ff2d48561f9503f1ef2e6c0f6018461ecc (patch)
tree02bfb2625f30bc06af346a18528e0911347b0a17
parent81cfcd037927d26c19565325d836cc3c4e99b111 (diff)
downloadcmake-538040ff.tar.gz
cmake-538040ff.zip
Add the ability to specify the necessary CXX features in tde_add_check_executable.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
-rw-r--r--modules/TDEMacros.cmake13
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake
index 15e8ce4..bc65310 100644
--- a/modules/TDEMacros.cmake
+++ b/modules/TDEMacros.cmake
@@ -1487,6 +1487,7 @@ macro( tde_add_check_executable _arg_target )
unset( _test_args )
unset( _meta_includes )
unset( _sources )
+ unset( _cxx_features )
unset( _destination )
unset( _link )
unset( _dependencies )
@@ -1523,6 +1524,12 @@ macro( tde_add_check_executable _arg_target )
set( _storage "_sources" )
endif( "+${_arg}" STREQUAL "+SOURCES" )
+ # found directive "CXX_FEATURES"
+ if( "+${_arg}" STREQUAL "+CXX_FEATURES" )
+ set( _skip_store 1 )
+ set( _storage "_cxx_features" )
+ endif( "+${_arg}" STREQUAL "+CXX_FEATURES" )
+
# found directive "LINK"
if( "+${_arg}" STREQUAL "+LINK" )
set( _skip_store 1 )
@@ -1564,6 +1571,12 @@ macro( tde_add_check_executable _arg_target )
# add target
add_executable( ${_target} EXCLUDE_FROM_ALL ${_sources} )
+ # set cxx features
+ if( TDE_CXX_FEATURES OR PROJECT_CXX_FEATURES OR _cxx_features )
+ target_compile_features( ${_target} PRIVATE
+ ${TDE_CXX_FEATURES} ${PROJECT_CXX_FEATURES} ${_cxx_features} )
+ endif( )
+
# set link libraries
if( _link )
target_link_libraries( ${_target} ${_link} )