With the addition of "-ltbb" to the v3_target_compile flags (so as to,
you know, actually try to link tbb).
Tested x86_64-linux, committed to trunk.
Thomas Rodgers writes:
> PR libstdc++/90252
> * testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
> Changed v3_target_compile check from preprocess to executable.
> ---
> libstdc++-v3/testsuite/lib/libstdc++.exp | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp
> b/libstdc++-v3/testsuite/lib/libstdc++.exp
> index c48b4d78bbb..fa61bccc9f6 100644
> --- a/libstdc++-v3/testsuite/lib/libstdc++.exp
> +++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
> @@ -1612,15 +1612,20 @@ proc check_effective_target_tbb-backend { } {
> # Set up and preprocess a C++ test program that depends
> # on tbb
> set src tbb_backend[pid].cc
> -
> + set exe tbb_backend[pid].x
> +
> set f [open $src "w"]
> puts $f "#include <tbb/tbb.h>"
> puts $f "#if TBB_INTERFACE_VERSION < 10000"
> puts $f "# error Intel(R) Threading Building Blocks 2018 is required;
> older versions are not supported."
> puts $f "#endif"
> + puts $f "int main ()"
> + puts $f "{"
> + puts $f " return 0;"
> + puts $f "}"
> close $f
>
> - set lines [v3_target_compile $src /dev/null preprocess ""]
> + set lines [v3_target_compile $src $exe executable ""]
> file delete $src
>
> if [string match "" $lines] {