Re: [PATCH v6 1/8] Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 move new entries

2025-01-16 Thread Corinna Vinschen
Hi Brian,

On Jan 15 12:39, Brian Inglis wrote:
> +aligned_alloc(ISO C11)
> +assert   (SVID - available in "assert.h" header)
> +at_quick_exit(ISO C11)
> +c16rtomb (ISO C11)
> +c32rtomb (ISO C11)

The source hint in parens should go away.  Everything which *is* in
POSIX *and* part of the newlib/Cygwin package, doesn't need a source
hint.

> +mbrtoc16 (ISO C23 - available in "uchar.h" header)
> +mbrtoc32 (ISO C23 - available in "uchar.h" header)

And these are wrong, btw.  mbrtoc16/mbrtoc32 are C11 just like
c16rtomb/c32rtomb.  Only the c8 variants are C23.  But given they
are POSIX and implemented in Cygwin itself, just scratch the hint.

> +dladdr   (see chapter 
> "Implementation Notes")
>  encrypt  (available in external "crypt" library)

These are still ok and the only type of hints which should be maintained
in the SUS chapter.

> +posix_spawn_file_actions_addchdir(available as 
> posix_spawn_file_actions_addchdir_np)
> +posix_spawn_file_actions_addfchdir   (available as 
> posix_spawn_file_actions_addfchdir_np)

Oh, I missed that these two are defined in POSIX now.  Scratch the hint,
I'll change the header and add matching exports, and...

> -posix_spawn_file_actions_addchdir_np
> -posix_spawn_file_actions_addfchdir_np

...these two should stay where they are.


Thanks,
Corinna


Re: [PATCH v6 2/8] Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 new additions available

2025-01-16 Thread Corinna Vinschen
On Jan 15 12:39, Brian Inglis wrote:
> diff --git a/winsup/doc/posix.xml b/winsup/doc/posix.xml
> index 949333b0c36c..0b23a2251028 100644
> --- a/winsup/doc/posix.xml
> +++ b/winsup/doc/posix.xml
> @@ -16,6 +16,9 @@ ISO/IEC DIS 9945 Information technology
>  - Issue 8.
>  
>  
> +CMPLX(available in "complex.h" header)
> +CMPLXF   (available in "complex.h" header)
> +CMPLXL   (available in "complex.h" header)

As I wrote before, we don't need these hints.  They only make sense
if they are provided by another package than cygwin-devel, and then...

> +atomic_compare_exchange_strong   (available in "stdatomic.h" 
> header)

...it should be noted like this:

> +atomic_compare_exchange_strong   (available in external 
> "gcc-g++" package)
> [...]
> +kill_dependency  (available in GCC "stdatomic.h" header)

However... it's questionable, if the availability via the compiler
itself, is really worth to be mentioned.  After all, you can't build
without that package anyway.  So if you installed cygwin-devel, you
also installed gcc-g++ compulsorily.

So I would not add a hint to standard symbols defined by the compiler
package itself.

> +be16toh  (available in "endian.h" header)
> +be32toh  (available in "endian.h" header)
> [...]

Part of Cygwin, no hint here.

> +bind_textdomain_codeset  (available in external gettext "libintl" 
> library)
> +bindtextdomain   (available in external gettext "libintl" 
> library)
> [...]

Either "gettext" or "libintl", not both.

> +getentropy   (Cygwin DLL)
> +getlocalename_l  (Cygwin DLL)
> +in6addr_any  (Cygwin DLL)
> +in6addr_loopback (Cygwin DLL)
> +posix_getdents   (Cygwin DLL)

Erm?  Why do you mention that?

> +pthread_cleanup_pop  (available in "pthread.h" header)
> +pthread_cleanup_push (available in "pthread.h" header)

No hint here.


Thanks,
Corinna


Re: [PATCH v6 3/8] Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 not implemented new additions

2025-01-16 Thread Corinna Vinschen
On Jan 15 12:39, Brian Inglis wrote:
> Add unavailable POSIX additions to Not Implemented section,
> with mentions of headers and packages where they are expected.
> 
> Signed-off-by: Brian Inglis 
> ---
>  winsup/doc/posix.xml | 20 ++--
>  1 file changed, 18 insertions(+), 2 deletions(-)
> 
> diff --git a/winsup/doc/posix.xml b/winsup/doc/posix.xml
> index 0b23a2251028..89728e050bef 100644
> --- a/winsup/doc/posix.xml
> +++ b/winsup/doc/posix.xml
> @@ -1681,9 +1681,14 @@ ISO/IEC DIS 9945 Information technology
>  
>  
>  
> -NOT implemented system interfaces from the 
> Single Unix Specification, Volume 7:
> +NOT implemented system interfaces from the 
> Single UNIX® Specification Version 5:
>  
>  
> +_Fork(not available in "(sys/)unistd.h" header)
> +dcgettext_l  (not available in external gettext 
> "libintl" library)
> +dcngettext_l (not available in external gettext "libintl" 
> library)
> +dgettext_l   (not available in external gettext 
> "libintl" library)
> +dngettext_l  (not available in external gettext 
> "libintl" library)

Sorry, but they are not available.  It doesn't matter *where* they are
not available.  Please drop the hints.


Thanks,
Corinna


Re: [PATCH v6 5/8] Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 combine multiple notes

2025-01-16 Thread Corinna Vinschen
On Jan 15 12:39, Brian Inglis wrote:
> -<<< HEAD
> -isastream
> -===
> -kill_dependency  (not available in "stdatomic.h" header)
> ->>> 5888275d7f48 (Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 move 
> or remove dropped entries)

Oops.


Corinna


Re: [PATCH v6 4/8] Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 move or remove dropped entries

2025-01-16 Thread Corinna Vinschen
On Jan 15 12:39, Brian Inglis wrote:
> Move entries no longer in POSIX from the SUS/POSIX section to
> Deprecated Interfaces section and mark with (SUSv4).
> Remove entries no longer in POSIX from the NOT Implemented section.
> [...]
> @@ -1558,6 +1533,7 @@ ISO/IEC DIS 9945 Information technology
>  fegetprec
>  fesetprec
>  futimesat
> +getdomainname(NIS)

The hint doesn't make sense in the SUN/Solaris section.  I think this
should be moved to the BSD section since getdomainname was already
available on 4.2BSD.

> +<<< HEAD
>  isastream
> +===
> +kill_dependency  (not available in "stdatomic.h" header)
> +>>> 5888275d7f48 (Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 move 
> or remove dropped entries)

Oops.


Corinna


Re: [PATCH v6 6/8] Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 group variants with base

2025-01-16 Thread Corinna Vinschen
On Jan 15 12:39, Brian Inglis wrote:
> Move circular Ff/Fl and similar functions before hyperbolic Fh? and
> similar entries to keep base entries together with their -f -l variants.

Patches 6 to 8 can go away.  We stick to ASCII order, one function
per line.


Thanks,
Corinna


Re: [PATCH v6 3/8] Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 not implemented new additions

2025-01-16 Thread brian . inglis

On 2025-01-16 11:41, Corinna Vinschen wrote:

On Jan 15 12:39, Brian Inglis wrote:

Add unavailable POSIX additions to Not Implemented section,
with mentions of headers and packages where they are expected.

Signed-off-by: Brian Inglis 
---
  winsup/doc/posix.xml | 20 ++--
  1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/winsup/doc/posix.xml b/winsup/doc/posix.xml
index 0b23a2251028..89728e050bef 100644
--- a/winsup/doc/posix.xml
+++ b/winsup/doc/posix.xml
@@ -1681,9 +1681,14 @@ ISO/IEC DIS 9945 Information technology
  
  
  
-NOT implemented system interfaces from the Single Unix Specification, Volume 7:

+NOT implemented system interfaces from the Single 
UNIX® Specification Version 5:
  
  

+_Fork  (not available in "(sys/)unistd.h" header)
+dcgettext_l(not available in external gettext 
"libintl" library)
+dcngettext_l   (not available in external gettext "libintl" 
library)
+dgettext_l (not available in external gettext "libintl" 
library)
+dngettext_l(not available in external gettext 
"libintl" library)


Sorry, but they are not available.  It doesn't matter *where* they are
not available.  Please drop the hints.


Intended as reminders of work needed for support:

_Fork needs to be async safe and does not call pthread_atfork fork handlers: 
could it not be specialized from _fork?


Ask if gettext project is working on adding those.

--
Take care. Thanks, Brian Inglis  Calgary, Alberta, Canada

La perfection est atteinte   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher  but when there is no more to cut
-- Antoine de Saint-Exupéry


Re: [PATCH v6 2/8] Cygwin: winsup/doc/posix.xml: SUS V5 POSIX 2024 new additions available

2025-01-16 Thread Brian Inglis

On 2025-01-16 11:40, Corinna Vinschen wrote:

On Jan 15 12:39, Brian Inglis wrote:

diff --git a/winsup/doc/posix.xml b/winsup/doc/posix.xml
index 949333b0c36c..0b23a2251028 100644
--- a/winsup/doc/posix.xml
+++ b/winsup/doc/posix.xml
@@ -16,6 +16,9 @@ ISO/IEC DIS 9945 Information technology
  - Issue 8.
  
  

+CMPLX  (available in "complex.h" header)
+CMPLXF (available in "complex.h" header)
+CMPLXL (available in "complex.h" header)


Missing from 3.5 - only available with 3.6 - and no docs, info, man.


+bind_textdomain_codeset(available in external gettext "libintl" 
library)
+bindtextdomain (available in external gettext "libintl" 
library)
[...]


Either "gettext" or "libintl", not both.


Which do you think most useful?


+getentropy (Cygwin DLL)
+getlocalename_l(Cygwin DLL)
+in6addr_any(Cygwin DLL)
+in6addr_loopback   (Cygwin DLL)
+posix_getdents (Cygwin DLL)
+timespec_get   (Cygwin DLL)


Lack of docs, info, man - except getentropy_r is in libc/reent/, should be 
included with others from reent.tex, added to CHEW doc, and getentropy 
implementation and doc could be added?


--
Take care. Thanks, Brian Inglis  Calgary, Alberta, Canada

La perfection est atteinte   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher  but when there is no more to cut
-- Antoine de Saint-Exupéry