Test for __cxa_thread_atexit_impl when cross-compiling libstdc++ for GNU targets
Bernd Schmidt
bschmidt@redhat.com
Mon Oct 12 17:04:00 GMT 2015
On 10/10/2015 01:18 AM, Joseph Myers wrote:
> I noticed that when testing glibc with a cross compiler I got
>
> UNSUPPORTED: nptl/tst-thread_local1
>
> because the libstdc++-v3 configuration for cross compiling defaulted
> to __cxa_thread_atexit_impl not being available. This patch fixes
> GLIBCXX_CROSSCONFIG to run the same test (for the case covering
> targets with glibc) for __cxa_thread_atexit_impl as for native
> compilation, just as it runs most of the other tests done for native
> compilation (for these targets, it's not possible to build libstdc++
> without already having built libc, so link tests are OK).
>
> Tested with no regressions for cross to arm-none-linux-gnueabi. OK to
> commit?
>
> 2015-10-09 Joseph Myers <joseph@codesourcery.com>
>
> * crossconfig.m4 (GLIBCXX_CROSSCONFIG) <*-linux* | *-uclinux* |
> *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu | *-cygwin*>: Check for
> __cxa_thread_atexit_impl.
> * configure: Regenerate.
That looks ok.
> Index: libstdc++-v3/crossconfig.m4
> ===================================================================
> --- libstdc++-v3/crossconfig.m4 (revision 228601)
> +++ libstdc++-v3/crossconfig.m4 (working copy)
> @@ -156,6 +156,7 @@
> GLIBCXX_CHECK_STDLIB_SUPPORT
> AC_DEFINE(_GLIBCXX_USE_RANDOM_TR1)
> GCC_CHECK_TLS
> + AC_CHECK_FUNCS(__cxa_thread_atexit_impl)
> AM_ICONV
A similar sequence of tests also occurs for *-aix*. I don't suppose the
function is likely to exist there or on other non-glibc targets?
Bernd
More information about the Libstdc++
mailing list