Module Name: src Committed By: riastradh Date: Sat Jul 11 14:29:50 UTC 2015
Modified Files: src/lib/libc: README Log Message: Add section headings. Match order in table of contents. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/lib/libc/README Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/libc/README diff -u src/lib/libc/README:1.3 src/lib/libc/README:1.4 --- src/lib/libc/README:1.3 Fri Mar 20 14:10:40 2015 +++ src/lib/libc/README Sat Jul 11 14:29:50 2015 @@ -1,4 +1,4 @@ - $NetBSD: README,v 1.3 2015/03/20 14:10:40 riastradh Exp $ + $NetBSD: README,v 1.4 2015/07/11 14:29:50 riastradh Exp $ libc: The C library. @@ -8,8 +8,10 @@ libc contains symbols for: (a) standard library routines in C and POSIX, (b) published NetBSD-specific nonstandard extensions, -(c) old versions of library routines, and -(d) internal symbols. +(c) internal symbols, and +(d) old versions of any published library routines. + +** Standard library routines If a library routine is standard and its signature has never changed, it is defined as an ELF global symbol. Its name is declared normally @@ -19,6 +21,8 @@ in the appropriate header file. standard C memory allocator routines. The names `malloc' and `free' are declared normally in <stdlib.h> (src/include/stdlib.h). +** NetBSD-specific nonstandard extensions + If a library routine is nonstandard but published and its signature has never changed, it is defined as an ELF weak symbol aliasing an ELF global symbol of the same name with an underscore prefix. @@ -57,6 +61,8 @@ create the ELF weak symbol alias. to provide `consttime_memequal' as an ELF weak symbol aliasing `_consttime_memequal'. +** Internal symbols + If a library routine is internal to libc, it is defined as an ELF global symbol with an underscore prefix. Its name is declared in the appropriate internal header file. @@ -67,6 +73,8 @@ appropriate internal header file. src/lib/libc/gen/dirent_private.h, and defined normally in src/lib/libc/gen/initdir.c. +** Old versions of library routines + If the signature or semantics of a library routine foo changed in (for example) NetBSD 6.0, then libc provides