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:40:26 +0100
commitf7402b3bc9bc2460928c81ee4e866c90ee549b35 (patch)
tree8847237b77de11e985536a506284153676589343
parentd967cc135826e22fbf003230dfc28e4a2625054b (diff)
downloadtde-cmake-f7402b3bc9bc2460928c81ee4e866c90ee549b35.tar.gz
tde-cmake-f7402b3bc9bc2460928c81ee4e866c90ee549b35.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> (cherry picked from commit 538040ff2d48561f9503f1ef2e6c0f6018461ecc)
-rw-r--r--modules/TDEMacros.cmake13
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake
index b425184..e35f51a 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} )