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} )