diff --git a/apps/fsearch/meson.build b/apps/fsearch/meson.build index 9dc41f5cd371ce8b35e49e38a193e21a98c557d1..68a9fd104a57380a525bb2171d2fc5a071682cfc 100644 --- a/apps/fsearch/meson.build +++ b/apps/fsearch/meson.build @@ -1,11 +1,18 @@ -fsearch_exe = executable( - 'fsearch', - 'fsearch.cpp', - dependencies: emper_dep, -) +walk_dir_code = '''#include <filesystem> +int main() { auto it = std::filesystem::recursive_directory_iterator("."); } +''' -fsearch_callback_exe = executable( - 'fsearch_callback', - 'fsearch_callback.cpp', - dependencies: emper_dep, -) +does_link = cpp_compiler.links(walk_dir_code, args: '--std=c++2a', name : 'walk_dir') +if does_link + fsearch_exe = executable( + 'fsearch', + 'fsearch.cpp', + dependencies: emper_dep, + ) + + fsearch_callback_exe = executable( + 'fsearch_callback', + 'fsearch_callback.cpp', + dependencies: emper_dep, + ) +endif