summaryrefslogtreecommitdiff
path: root/sysdeps/gnu
diff options
context:
space:
mode:
authorRical Jasan <ricaljasan@pacific.net>2017-05-19 22:44:25 -0700
committerRical Jasan <ricaljasan@pacific.net>2017-05-19 22:47:53 -0700
commita429d2ff07fcb6620269fc0ee46ea5066451fdff (patch)
treeb331d57677d3181b3d025a22682fd1fd0d4b3443 /sysdeps/gnu
parent0bcec5321f7d31c31e4fd601d4e0922862d87b14 (diff)
manual: Convert errno @comments to new @errno macro.
errno.texi documents error macros, their values, and error strings in Texinfo @comments, some of which are also used for @standards. The purpose of this commit is to separate the standards from the error strings so that both the @standards conversion script picks up clean @standards and the errno documentation framework is improved. The error names, values, and messages are consolidated in a new custom macro, @errno. It is not clear that scripts within the sources rely on the special Texinfo @comment-based format to generate files used throughout the library, so the definition of @errno in macros.texi now provides a comment indicating the dependency. The dependent scripts are updated to use @errno, which also simplifies them a bit. The files those scripts generate were verified to be unchanged. The @errno macro is not visibly rendered in any way at this time, but it does use an @cindex command to add the error string to the Concept Index, to facilitate searching on error messages. * manual/errno.texi: Convert @comment-based errno documentation to @errno. * manual/macros.texi (@errno): New macro. Consolidate errors, their values, and messages, adding the error string to the Concept Index. Provide a warning in the comment about external (to the manual) dependencies. * sysdeps/gnu/errlist.awk: Use @errno instead of @comments. * sysdeps/mach/hurd/errnos.awk: Likewise.
Diffstat (limited to 'sysdeps/gnu')
-rw-r--r--sysdeps/gnu/errlist.awk21
1 files changed, 5 insertions, 16 deletions
diff --git a/sysdeps/gnu/errlist.awk b/sysdeps/gnu/errlist.awk
index c91da60694..d5a0555114 100644
--- a/sysdeps/gnu/errlist.awk
+++ b/sysdeps/gnu/errlist.awk
@@ -16,10 +16,8 @@
# <http://www.gnu.org/licenses/>.
# errno.texi contains lines like:
-# @comment errno.h
-# @comment POSIX.1: Function not implemented
# @deftypevr Macro int ENOSYS
-# @comment errno 78
+# @errno{ENOSYS, 78, Function not implemented}
# Descriptive paragraph...
# @end deftypevr
@@ -61,22 +59,14 @@ BEGIN {
print " [0] = N_(\"Success\"),"
}
-$1 == "@comment" && $2 == "errno.h" { errnoh=1; next }
-errnoh == 1 && $1 == "@comment" \
+/^@errno\{/ \
{
- ++errnoh;
etext = $3;
for (i = 4; i <= NF; ++i)
etext = etext " " $i;
- next;
- }
-errnoh == 2 && $1 == "@deftypevr" && $2 == "Macro" && $3 == "int" \
- {
- e = $4; errnoh++; next;
- }
-errnoh == 3 && $1 == "@comment" && $2 == "errno" \
- {
- errno = $3 + 0;
+ etext = substr(etext, 1, length(etext)-1)
+ e = substr($1, 8, length($1)-8)
+ errno = substr($2, 1, length($2)-1) + 0
if (alias[e])
printf "#if defined (%s) && %s != %s\n", e, e, alias[e];
else
@@ -102,7 +92,6 @@ errnoh == 4 \
# This magic tag in C comments gets them copied into libc.pot.
desc = desc "\nTRANS" ($0 != "" ? " " : "") $0; next
}
-{ errnoh=0 }
END {
print " };";
print "";