public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Rical Jasan <ricaljasan@pacific.net>
To: Zack Weinberg <zackw@panix.com>
Cc: Joseph Myers <joseph@codesourcery.com>,
	GNU C Library <libc-alpha@sourceware.org>,
	Carlos O'Donell <carlos@redhat.com>,
	Michael Kerrisk <mtk.manpages@gmail.com>
Subject: Re: [PATCH v3 4/7] manual: Refactor errno @comments.
Date: Thu, 18 May 2017 09:42:00 -0000	[thread overview]
Message-ID: <96efa163-cda4-443e-4182-0ec281517eec@pacific.net> (raw)
In-Reply-To: <CAKCAbMjZhG3fMHQh09rXfJvGc1Z7SAUVOOyZV8Vcsfxf+9Rwfw@mail.gmail.com>

On 05/17/2017 06:21 AM, Zack Weinberg wrote:
> On Wed, May 17, 2017 at 12:44 AM, Rical Jasan <ricaljasan@pacific.net> >
>> I was unaware of these dependencies---thanks for pointing them out.
>> Nothing I've encountered indicated their existence, though "DO NOT
>> REMOVE" makes a little more sense.
>>
>> After hacking on this a bit, I think this patch should be rescinded.
>> Fixing the errlist.awks is easy, but it does nothing to help the screwy,
>> Texinfo @comment-based dependency that is just asking for trouble.  I'd
>> like to propose an @errno{} macro to handle these, and then update the
>> errlist.awks accordingly.  Something like:
>>
>>   @errno{EPERM, 1, Operation not permitted}
>>
>> should make the Awk scripts practically benign...
> 
> This seems like a reasonable plan to me.  Note that
> https://sourceware.org/ml/libc-alpha/2017-05/msg00198.html also makes
> changes in this area.

Thanks for the heads-up on the pending changes.  I've started a patch
for this, adding @errno, converting the @comments in errno.texi, and
updating sysdeps/gnu/errlist.awk so the generated errlist.c is
unchanged, but I also want to add some consistency checking to it.  I
looked at sysdeps/mach/hurd/errnos.awk; seems to be similar.  I'll get
it started and make sure to follow your work.  I'll ignore the NaCl bits
since it sounds like that's going away soon.

> I think the error *numbers* shouldn't be embedded in the manual.  Only

I had the same thought; very surprising to find the sources were being
generated from the manual.  I also thought it was strange because I
remember a conversation a while back where it was pointed out the source
and documentation are under different licences and generally couldn't
cross-reference each other like that. [1]  That conversation should have
been on libc-alpha, but happened on libc-help (my fault).

> Hurd uses these, and so it's not obvious that this part of the manual
> has ABI implications but only for Hurd.  It would be better if those
> came from a sysdeps/ file - sysdeps/mach/hurd/bits/errno.h.in maybe?
> It can't just be sysdeps/mach/hurd/bits/errno.h because the Hurd
> errnos.awk pulls additional error numbers from several other places
> (unfortunately, all of them are Mach headers that aren't in tree,
> IIRC).

This is.. interesting.  If we do make a
sysdeps/mach/hurd/bits/errno.h.in, it seems doing similarly for
sysdeps/gnu/errlist.c would be the way to go, removing the dependency on
the manual entirely (errlist.c is only generated from errno.texi).
Separate input files for each is still quite a bit of duplication though
(E* macros and error strings), so maybe an equivalent to the proposed
@errno in something like misc/errno.? that both scripts could use would
be more suitable?

For now, I'll stick with using @errno in errno.texi, and figure out a
way to validate the generated Hurd errno.h.

Rical

[1] https://sourceware.org/ml/libc-help/2016-10/msg00015.html

  parent reply	other threads:[~2017-05-18  9:42 UTC|newest]

Thread overview: 91+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-06 10:55 [PATCH v2 0/5] Header & Standards Cleanup Rical Jasan
2016-12-06 10:55 ` [PATCH v2 4/5] manual: Enforce header and standard requirements Rical Jasan
2016-12-06 10:55 ` [PATCH v2 2/5] manual: Convert @tables of variables to @vtables Rical Jasan
2016-12-06 13:50   ` Zack Weinberg
2016-12-06 15:46   ` Joseph Myers
2016-12-07 15:18   ` Nix
2016-12-08  1:38     ` Rical Jasan
2016-12-21 10:08       ` Rical Jasan
2016-12-21 12:42         ` Joseph Myers
2016-12-06 10:55 ` [PATCH v2 1/5] manual: Refactor header and standards annotations Rical Jasan
2016-12-06 13:49   ` Zack Weinberg
2016-12-06 15:33   ` Joseph Myers
2016-12-19 10:37     ` Rical Jasan
2016-12-19 13:48       ` Joseph Myers
2017-02-07  6:46   ` Rical Jasan
2016-12-06 10:56 ` [PATCH v2 3/5] manual: Add new " Rical Jasan
2016-12-06 13:23   ` Zack Weinberg
2016-12-06 14:27     ` Andreas Schwab
2016-12-06 16:24     ` Joseph Myers
2016-12-06 19:23       ` Zack Weinberg
2016-12-06 21:42         ` Joseph Myers
2016-12-07 16:32   ` Joseph Myers
2016-12-08  2:56     ` Rical Jasan
2016-12-08 14:02       ` Joseph Myers
2016-12-12  9:01         ` Rical Jasan
2016-12-14 18:18           ` Joseph Myers
2016-12-14 23:30             ` Rical Jasan
2016-12-15  9:58               ` Rical Jasan
2016-12-15 13:01                 ` Joseph Myers
2017-02-07  5:13                   ` Rical Jasan
2017-02-07 16:41                     ` Joseph Myers
2017-02-08  8:50                       ` Rical Jasan
2017-02-08 13:52                         ` Joseph Myers
2017-02-12  6:01                           ` Rical Jasan
2017-04-04  3:58                             ` Rical Jasan
2017-04-04 11:26                               ` Joseph Myers
2017-04-05  3:08                                 ` Rical Jasan
2017-06-16 13:40                                   ` Zack Weinberg
2017-06-16  8:28     ` Rical Jasan
2016-12-06 11:42 ` [PATCH v2 5/5] manual: Clean up miscellaneous standards Rical Jasan
2017-05-16  9:55 ` [PATCH v3 0/7] manual: Header & Standards Cleanup Rical Jasan
2017-05-16  9:55   ` [PATCH v3 3/7] manual: Fix up invalid header and standards syntax Rical Jasan
2017-05-16 11:51     ` Joseph Myers
2017-05-17  4:49       ` Rical Jasan
2017-05-17 10:03         ` Joseph Myers
2017-05-18  8:10       ` Rical Jasan
2017-05-16  9:55   ` [PATCH v3 1/7] manual: Provide one-off standards conversion script Rical Jasan
2017-05-16  9:55   ` [PATCH v3 2/7] manual: Create empty placeholder macros for @standards Rical Jasan
2017-05-16 10:27   ` [PATCH v3 7/7] manual: Replace summary.awk with summary.pl Rical Jasan
2017-05-16 10:28   ` [PATCH v3 6/7] manual: Convert header and standards @comments to @standards Rical Jasan
2017-05-16 10:28   ` [PATCH v3 5/7] manual: Convert @tables of annotated @items to @vtables Rical Jasan
2017-05-16 11:53     ` Joseph Myers
2017-05-18  8:11       ` Rical Jasan
2017-05-16 10:29   ` [PATCH v3 4/7] manual: Refactor errno @comments Rical Jasan
2017-05-16 11:06     ` Joseph Myers
2017-05-17  4:44       ` Rical Jasan
2017-05-17 13:21         ` Zack Weinberg
2017-05-17 13:31           ` Zack Weinberg
2017-05-18  9:42           ` Rical Jasan [this message]
2017-05-18 12:32             ` Zack Weinberg
2017-05-19  9:46               ` Rical Jasan
2017-05-19 20:50                 ` Zack Weinberg
2017-05-19  6:20         ` Rical Jasan
2017-05-18  9:58       ` Rical Jasan
2017-05-19  9:33   ` [PATCH v4 0/5] manual: Header & Standards Cleanup Rical Jasan
2017-05-19  9:33     ` [PATCH v4 2/5] manual: Create empty placeholder macros for @standards Rical Jasan
2017-05-19 21:02       ` Zack Weinberg
2017-05-20  6:05         ` Rical Jasan
2017-05-19  9:34     ` [PATCH v4 3/5] manual: Convert errno @comments to new @errno macro Rical Jasan
2017-05-19 21:03       ` Zack Weinberg
2017-05-20  6:05         ` Rical Jasan
2017-05-19  9:34     ` [PATCH v4 5/5] manual: Replace summary.awk with summary.pl Rical Jasan
2017-05-19  9:34     ` [PATCH v4 1/5] manual: Provide one-off standards conversion script Rical Jasan
2017-05-19  9:36     ` [PATCH v4 4/5] manual: Convert header and standards @comments to @standards Rical Jasan
2017-05-19 21:05     ` [PATCH v4 0/5] manual: Header & Standards Cleanup Zack Weinberg
2017-05-22  9:03       ` Rical Jasan
2017-05-24 13:12         ` Rical Jasan
2017-05-24 13:29           ` Zack Weinberg
2017-05-26  5:01     ` [PATCH v5 0/3] " Rical Jasan
2017-05-26  5:01       ` [PATCH v5 0/3] manual: Header & Standards Cleanup [conversion script] Rical Jasan
2017-05-26  5:01       ` [PATCH v5 3/3] manual: Replace summary.awk with summary.pl Rical Jasan
2017-05-26  5:01       ` [PATCH v5 2/3] manual: Convert header and standards @comments to @standards Rical Jasan
2017-05-26  5:01       ` [PATCH v5 1/3] manual: Create empty placeholder macros for @standards Rical Jasan
2017-05-31  9:23       ` [PATCH v5 0/3] manual: Header & Standards Cleanup Rical Jasan
2017-06-08 11:46         ` [PING] " Rical Jasan
2017-06-08 13:41           ` Zack Weinberg
2017-06-09  2:31             ` Rical Jasan
2017-06-15  8:47               ` Rical Jasan
2017-06-15  8:32           ` Rical Jasan
2017-06-15 18:01             ` Joseph Myers
2017-06-16  4:38               ` Rical Jasan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=96efa163-cda4-443e-4182-0ec281517eec@pacific.net \
    --to=ricaljasan@pacific.net \
    --cc=carlos@redhat.com \
    --cc=joseph@codesourcery.com \
    --cc=libc-alpha@sourceware.org \
    --cc=mtk.manpages@gmail.com \
    --cc=zackw@panix.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).