From: Ingo Schwarze Subject: Re: mandoc: add POSIX 2024 To: Theo de Raadt Cc: Job Snijders , Jason McIntyre , tech@openbsd.org Date: Mon, 17 Jun 2024 19:56:11 +0200 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