Re: POSIX conformance document

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Bruno!

On Fri, May 31, 2024 at 11:21:28PM GMT, Bruno Haible wrote:
> POSIX [1] specifies that conforming implementations shall come with a
> "conformance document" that describes "implementation-defined" characteristics
> [2]. Two such example conformance documents are [3], [4].
> 
> For Linux (or any Linux distro), I cannot find such a document on the web.

Most Linux distros are not UNIX certified.  There have been a few, from
what I read, but don't know much about them.  I found one that is in
the Wikipedia, and which has links to such a document:

<https://en.wikipedia.org/wiki/Inspur_K-UX>
<https://web.archive.org/web/20151210194928/http://www.opengroup.org/csq/repository/RID%3Dinspur/XY1/1.html>

That one is UNIX 03 certified, which is POSIX.1-2001 + XSI extensions.

Maybe that helps.

> Is such a document only considered useful for business/marketing purposes?

Mostly.

> Isn't there some value in it also for regular users and developers?

The documentation for each API usually documents the implementation-
defined behavior, and differences to other systems.  We don't have it
centralized in a single document, but we have something.

While I don't see much usefulness for myself as a user in having a
centralized document for that, I can't discard usefulness for others, or
for myself at a different time.

> Will there be some effort to create such a document for the upcoming
> POSIX.1-2024 standard, for Linux and the GNU libraries and tools?

Heh, I suppose not, unless some company sponsors it, or some individual
feels a strong need for it.  But just guessing.

> 
> I'm asking because I've collected the answers for all *gettext() functions
> and the msgfmt and xgettext programs (that will be part of this new POSIX),
> but I don't know where to best document them. Likely in the manual of
> GNU libc and GNU gettext, right?

Yeah, that could be a good place for it.  The manual pages are in GNU
gettext:

	$ apt-file find -x 'man/man3/[a-z]*gettext.3'
	gettext-base: /usr/share/man/man3/dcgettext.3.gz
	gettext-base: /usr/share/man/man3/dcngettext.3.gz
	gettext-base: /usr/share/man/man3/dgettext.3.gz
	gettext-base: /usr/share/man/man3/dngettext.3.gz
	gettext-base: /usr/share/man/man3/gettext.3.gz
	gettext-base: /usr/share/man/man3/ngettext.3.gz

In the Linux man-pages project I'm documenting differences with POSIX or
the BSDs in the VERSIONS section (see man-pages(7)); sometimes in
CAVEATS, if it's a tricky detail; it depends.  You could send a patch
for their manual pages adding that section documenting the differences
with POSIX, or the implementation details.

>          Bruno
> 
> [1] https://en.wikipedia.org/wiki/POSIX
> [2] https://pubs.opengroup.org/onlinepubs/9699919799.2018edition/basedefs/V1_chap02.html
> [3] https://empyreal96.github.io/nt-info-depot/SourceLevel/base/subsys/posix/pcd.doc
> [4] https://www.qnx.com/developers/docs/6.5.0SP1.update/com.qnx.doc.neutrino_prog/posix_conformance.html

Have a lovely night!
Alex

-- 
<https://www.alejandro-colomar.es/>

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux