[RFC][PATCH] * bits/confname.h: Define _CS_POSIX_V7_THREADS_CFLAGS, _CS_POSIX_V7_THREADS_LDFLAGS

Adhemerval Zanella adhemerval.zanella@linaro.org
Tue Mar 8 16:31:17 GMT 2022



On 08/03/2022 13:29, Adhemerval Zanella wrote:
> 
> 
> On 26/10/2020 20:33, Érico Nogueira via Libc-alpha wrote:
>> From: Érico Rolim <ericonr@disroot.org>
>>
>> I would like to add these enums in order to conform to the POSIX
>> specification: https://www.man7.org/linux/man-pages/man0/unistd.h.0p.html
>>
>> This change also helps musl-libc, since they want to have these defines
>> with the same values as glibc.
>>
>> I tried to add them for the bits/confname.h and
>> conform/data/unistd.h-data files following the example of the other
>> values, but didn't know how to plug them into the confstr / __sysconf
>> implementations.
> 
> I think since we do not export _SC_POSIX_THREADS and now that libpthread
> symbols were all moved to libc, there is no need return the libpthread
> for LDFLAGS.  However it requires to be handled on confstr and getconf:
> 
> diff --git a/posix/confstr.c b/posix/confstr.c
> index 6e3c264462..95fb0f6abc 100644
> --- a/posix/confstr.c
> +++ b/posix/confstr.c
> @@ -249,6 +249,11 @@ __confstr (int name, char *buf, size_t len)
>        /* GNU libc does not require special actions to use LFS functions.  */
>        break;
>  
> +    case _CS_POSIX_V7_THREADS_CFLAGS:
> +    case _CS_POSIX_V7_THREADS_LDFLAGS:
> +      /* GNU libc does not require special actions to use thread functions.  */
> +      break;
> +
>      case _CS_GNU_LIBC_VERSION:
>        string = "glibc " VERSION;
>        string_len = sizeof ("glibc " VERSION);
> diff --git a/posix/getconf.c b/posix/getconf.c
> index a1adbc4b50..6a5363ad49 100644
> --- a/posix/getconf.c
> +++ b/posix/getconf.c
> @@ -310,6 +310,8 @@ static const struct conf vars[] =
>      { "POSIX_V7_LPBIG_OFFBIG_LDFLAGS", _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS, CONFSTR },
>      { "POSIX_V7_LPBIG_OFFBIG_LIBS", _CS_POSIX_V7_LPBIG_OFFBIG_LIBS, CONFSTR },
>      { "POSIX_V7_LPBIG_OFFBIG_LINTFLAGS", _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS, CONFSTR },
> +    { "POSIX_V7_THREADS_CFLAGS", _CS_POSIX_V7_THREADS_CFLAGS, CONFSTR },
> +    { "POSIX_V7_THREADS_LDFLAGS", _CS_POSIX_V7_THREADS_LDFLAGS, CONFSTR },
>  
>      { "_POSIX_ADVISORY_INFO", _SC_ADVISORY_INFO, SYSCONF },
>      { "_POSIX_BARRIERS", _SC_BARRIERS, SYSCONF },
> 
> Also now that we do not require a copyright assignment, you just need to add 
> a sign-off on the email submission.
> 

Also, reference the BZ#25003 [1] on title.

https://sourceware.org/bugzilla/show_bug.cgi?id=25003


More information about the Libc-alpha mailing list