From: Frantisek Sumsal Date: Thu, 21 May 2020 14:59:40 +0000 (+0200) Subject: meson: add fuzz-tests= option X-Git-Tag: v246-rc1~306^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c56463fdb40ba505b807739b023e9489c6ac182d;p=thirdparty%2Fsystemd.git meson: add fuzz-tests= option The slow-tests= option already enables fuzzers as well, however, this option can't be used in the "fully sanitized" runs, as certain slow tests are affected by the performance quite significantly. This option allows us to enable only fuzzers without the slow tests to meet the needs of such runs. --- diff --git a/meson.build b/meson.build index 20cb2b88a21..b87d5c63a35 100644 --- a/meson.build +++ b/meson.build @@ -308,6 +308,7 @@ meson_build_sh = find_program('tools/meson-build.sh') want_tests = get_option('tests') slow_tests = want_tests != 'false' and get_option('slow-tests') +fuzz_tests = want_tests != 'false' and get_option('fuzz-tests') install_tests = get_option('install-tests') if add_languages('cpp', required : fuzzer_build) @@ -3350,7 +3351,7 @@ foreach tuple : sanitizers if name != prev if want_tests == 'false' message('Not compiling @0@ because tests is set to false'.format(name)) - elif slow_tests + elif slow_tests or fuzz_tests exe = custom_target( name, output : name, @@ -3360,12 +3361,12 @@ foreach tuple : sanitizers '@OUTPUT@'], build_by_default : true) else - message('Not compiling @0@ because slow-tests is set to false'.format(name)) + message('Not compiling @0@ because slow-tests/fuzz-tests is set to false'.format(name)) endif endif prev = name - if want_tests != 'false' and slow_tests + if want_tests != 'false' and (slow_tests or fuzz_tests) test('@0@:@1@:@2@'.format(b, c, sanitizer), env, env : ['UBSAN_OPTIONS=print_stacktrace=1:print_summary=1:halt_on_error=1'], diff --git a/meson_options.txt b/meson_options.txt index e9fff1660c8..d5ed2a7a421 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -351,6 +351,8 @@ option('tests', type : 'combo', choices : ['true', 'unsafe', 'false'], description : 'enable extra tests with =unsafe') option('slow-tests', type : 'boolean', value : 'false', description : 'run the slow tests by default') +option('fuzz-tests', type : 'boolean', value : 'false', + description : 'run the fuzzer regression tests by default') option('install-tests', type : 'boolean', value : 'false', description : 'install test executables')