The functions described in this chapter are exported by the library
(vicare glibc)
. The API attempts to create a one–to–one
Scheme functions mapping towards GNU C Library functions, keeping the
same semantics as much as possible; the platform’s own documentation is
relevant at the Scheme level.
NOTE These bindings are included and installed by default and they can be excluded at compile time by giving the option --disable-glibc to the
configure
stript.
All the constants needed to use the interface are available as
identifier syntaxes exported by the (vicare platform constants)
library; if a constant value is not exported file a feature request for
the project. If a constant is not defined on a platform: its value is
set to #f
.
On non–GNU C Library platforms we must avoid calling these functions, else the behaviour is undefined.
The availability of the GNU C Library API can be tested at
run–time with the function vicare-built-with-glibc-enabled
from
(vicare)
((vicare-scheme)vicare-built-with-glibc-enabled), and at expand–time with the clause
glibc-enabled
of cond-expand
from SRFI-0 (see glibc-enabled).
• glibc cond-expand: | Feature-based expansion. | |
• glibc env: | Operating system environment variables. | |
• glibc dir: | File system directories. | |
• glibc temp: | Temporary files and directories. | |
• glibc sync: | File system synchronisation. | |
• glibc socket: | Network sockets. | |
• glibc net: | Networking. | |
• glibc math: | Mathematics. | |
• glibc random: | Pseudo–random numbers. | |
• glibc match: | Pattern matching, globbing and regular expressions. | |
• glibc word: | Performing word expansion. |