Add some documentation for libroot
Mainly for features.h and feature defines, which seems to be an ongoing source of confusion and not well understood.
This commit is contained in:
parent
683d891a6b
commit
b966e83785
@ -61,6 +61,7 @@
|
||||
|
||||
\section book_special_topics Special Topics
|
||||
|
||||
- \ref libroot
|
||||
- \ref drivers
|
||||
- \ref keyboard
|
||||
- \ref json
|
||||
@ -583,6 +584,7 @@ snooze_until(time - Latency(), B_SYSTEM_TIMEBASE);
|
||||
|
||||
|
||||
\defgroup libroot (libroot.so)
|
||||
\brief Implements the C and POSIX standard libraries.
|
||||
*/
|
||||
|
||||
///// Subgroups /////
|
||||
|
33
docs/user/posix/_libroot.dox
Normal file
33
docs/user/posix/_libroot.dox
Normal file
@ -0,0 +1,33 @@
|
||||
/*
|
||||
* Copyright 2019 Haiku, Inc. All rights reserved.
|
||||
* Distributed under the terms of the MIT License.
|
||||
*
|
||||
* Authors:
|
||||
* Adrien Destugues, pulkomandy@pulkomandy.tk
|
||||
*/
|
||||
|
||||
/*!
|
||||
\page libroot C, POSIX, GNU and BSD functions
|
||||
|
||||
Haiku implements a standard library containing the standard functions from C
|
||||
(https://www.iso.org/standard/29237.html) and POSIX
|
||||
(https://pubs.opengroup.org/onlinepubs/9699919799/). These functions are
|
||||
available in libroot, which is linked in by default.
|
||||
|
||||
For convenience and POSIX compatibility, empty "m" and "pthread" libraries are
|
||||
also provided, but the math and thread functions are also defined in libroot.
|
||||
|
||||
The C library also contains a number of GNU and BSD extensions to the C and
|
||||
POSIX standards. The BSD extensions are enabled by default unless a specific
|
||||
version of the C standard is requested from the compiler command line (for
|
||||
example by using the --std=c99 switch). In case you want to set the compiler
|
||||
to strict C99 but still use these extensions, you need to define _DEFAULT_SOURCE
|
||||
(with a #define preprocessor directive, or from the command line).
|
||||
|
||||
The GNU extensions are not enabled by default, but can be enabled by defining
|
||||
_GNU_SOURCE.
|
||||
|
||||
The GNU and BSD extensions are in a separate library, so the -lbsd linker flag
|
||||
may be needed to use them.
|
||||
|
||||
*/
|
Loading…
x
Reference in New Issue
Block a user