Download raw body.
mandoc: add POSIX 2024
Hello Theo,
Theo de Raadt wrote on Sun, Jun 16, 2024 at 05:06:38PM -0600:
> Well we can't be Unix, right, because we don't pay anyone so
> how does SUS even apply? Best way to make it irrelevant is to
> not refer to it.
In this mail, i consider documentation only.
Removing support for legacy arguments from mandoc and groff is trickier
than it may seem, so i may consider that later, if at all; that certainly
would not be an urgent matter.
Rationale for the following patch:
1. Version numbers of these standards are confusing because XPG/POSIX
and SUS use conflicting numbering schemes. So try to pick one of
the schemes and stick to it as much as possible.
2. There are many reasons to prefer the XPG/POSIX over the SUS scheme:
2.1. That brings us closer to the above goal set by deraadt@.
2.2. The current standard POSIX.1-2024 calls itself "Issue 8"
which follows the XPG/POSIX numbering scheme.
2.3. The current standard POSIX.1-2024 does not call
itself "Version 5", so calling it SUSv5 would be unusual.
2.4. The XPG/POSIX numbering scheme can be used for the entire
history, while the SUS scheme only became available with XPG4.2.
3. Unify the wording of the pre-XPG4.2 paragraph headers.
4. Consistently use "Issue" for XPG and POSIX.
Note that the patch makes some replacements where the meaning of the
replacing term is not identical to the meaning of what it replaces.
For example, SUSv1 is not identical to XPG4.2. But that does not
matter because after the replacements, the text is still correct and
easy to understand.
Also note that the term XPG5 is somewhat casual because starting with
XPG4, XPG was officially renamed to CAE (Common Applications Environment).
All the same, talking about XPG4 and XPG5 remained widespread, and
seven .St arguments were added to the mdoc(7) language in this vein.
Nobody is talking about CAE nowadays, so introducing that official term
now would merely cause confusion for almost no benefit.
To keep the patch readable, i intentionally preserved the order of entries.
OK?
Ingo
Index: mdoc.7
===================================================================
RCS file: /cvs/src/share/man/man7/mdoc.7,v
diff -u -r1.184 mdoc.7
--- mdoc.7 17 Jun 2024 15:35:33 -0000 1.184
+++ mdoc.7 17 Jun 2024 17:36:44 -0000
@@ -2418,7 +2418,7 @@
.br
The third major version of the C language standard.
.El
-.It POSIX.1 before the Single UNIX Specification
+.It POSIX.1 before XPG4.2
.Pp
.Bl -tag -width "-p1003.1g-2000" -compact
.It \-p1003.1-88
@@ -2459,7 +2459,7 @@
.br
Includes POSIX.1-1990, 1b, 1c, and 1i.
.El
-.It X/Open Portability Guide version 4 and related standards
+.It X/Open Portability Guide before XPG4.2
.Pp
.Bl -tag -width "-p1003.1g-2000" -compact
.It \-xpg3
@@ -2486,7 +2486,7 @@
.br
Based on POSIX.1 and POSIX.2, published in 1992.
.El
-.It Single UNIX Specification version 1 and related standards
+.It X/Open Portability Guide Issue 4 Version 2 and related standards
.Pp
.Bl -tag -width "-p1003.1g-2000" -compact
.It \-susv1
@@ -2511,13 +2511,14 @@
.br
Published in 1995.
.El
-.It Single UNIX Specification version 2 and related standards
+.It X/Open Portability Guide Issue 5 and related standards
.Pp
.Bl -tag -width "-p1003.1g-2000" -compact
.It \-susv2
.St -susv2
+.br
This Standard was published in 1997
-and is also called X/Open Portability Guide version 5.
+and is also called X/Open Portability Guide Issue 5.
It was used as the basis for UNIX 98 certification.
The following refer to parts of it.
.Pp
@@ -2535,7 +2536,7 @@
.It \-xns5.2
.St -xns5.2
.El
-.It Single UNIX Specification version 3
+.It POSIX Issue 6
.Pp
.Bl -tag -width "-p1003.1-2001" -compact
.It \-p1003.1-2001
@@ -2544,7 +2545,7 @@
.St -susv3
.br
This standard is based on C99, SUSv2, POSIX.1-1996, 1d, and 1j.
-It is also called X/Open Portability Guide version 6.
+It is also called X/Open Portability Guide Issue 6.
It is used as the basis for UNIX 03 certification.
.Pp
.It \-p1003.1-2004
@@ -2552,7 +2553,7 @@
.br
The second and last Technical Corrigendum.
.El
-.It POSIX issues 7 and 8
+.It POSIX Issues 7 and 8
.Pp
.Bl -tag -width "-p1003.1g-2000" -compact
.It \-p1003.1-2008
mandoc: add POSIX 2024