On Wed, 30 Jul 2025, John Ericson wrote:

> This macro deduplicates the
> 
>     $CC -v 2>&1 | sed -n 's/^Thread model: //p'
> 
> check that was occurring in various runtime libs.
> 
> Additionally, as a bit of an Easter egg, this also allows overriding
> what the compiler would return by setting the
> `gcc_cv_target_thread_file` cache variable first. I admit that it is in
> fact this Easter egg that led me to write the patch. The use-case for it
> is for making multilib builds where the library sets do not all share
> the same thread model easier. See also `THREAD_MODEL_SPEC` for more
> about the varying thread models use-case.
> 
> Arguably one could could try to define on `THREAD_MODEL_SPEC` on more
> platforms (besides e.g. AIX) but the ramifications of this are a bit
> unclear. Setting `gcc_cv_target_thread_file` directly is a "low tech"
> solution that will work for now for sure. Of course, since setting a
> cache variable like this a hacky trick, I will not expect this to be at
> all stable/guaranteed to work, going forward.
> 
> Thanks to Arsen who on IRC discussed these things with me, including in
> particular making it a cache var not `--with-model` flag, to not
> prematurely foster expectations that this is stable.
> 
> Suggested-by: Arsen Arsenović <ar...@aarsen.me>
> 
> config/ChangeLog:
> 
>       * gthr.m4: Create new GCC_AC_THREAD_MODEL macro
> 
> libatomic/ChangeLog:
> 
>       * Makefile.in: Regenerate.
>       * aclocal.m4: Regenerate.
>       * configure: Regenerate.
>       * configure.ac: Use GCC_AC_THREAD_MODEL instead of hand-rolled
>       * testsuite/Makefile.in: Regenerate.
> 
> libgcc/ChangeLog:
> 
>       * configure: Regenerate.
>       * configure.ac: Use GCC_AC_THREAD_MODEL instead of hand-rolled
> 
> libphobos/ChangeLog:
> 
>       * configure: Regenerate.
>       * m4/druntime/os.m4: Use AC_MSG_ERROR, not private as_fn_error
> 
> libstdc++-v3/ChangeLog:
> 
>       * acinclude.m4: Use GCC_AC_THREAD_MODEL instead, via AC_REQUIRE
>       * configure: Regenerate.

OK in the absence of build machinery maintainer objections within the next 
week.

-- 
Joseph S. Myers
josmy...@redhat.com

Reply via email to