A (WIP) collection of portable, strict C99, single-header implementations of common libc extensions.
A (WIP) collection of portable, strict C99, single-header implementations of common libc extensions.
+All functions are implemented as macros expanding to an internal function reference, this allows to use the headers with no meta build system - it compiles even if the extensions are already present, see _How to_ on disabling this behaviour.
+
### How to
Include the header in every file needed as usual:
### How to
Include the header in every file needed as usual:
@@ -42,7+44,7 @@ includes `vasprintf()` and `asprintf()`
includes `getopt()`, `getsubopt()`, `getopt_long()` and `getopt_long_only()`
`getopt_long.h` has additional macros related to argument
includes `getopt()`, `getsubopt()`, `getopt_long()` and `getopt_long_only()`
`getopt_long.h` has additional macros related to argument
-permuting, defining those enables it (GNU behaviour, can still be disabled by setting `$POSIXLY_CORRECT`):
+permuting, defining those enables it per function (GNU behaviour, can still be disabled at runtime by setting `$POSIXLY_CORRECT`):
```
#define GETOPT_PERMUTE_ARGS
```
#define GETOPT_PERMUTE_ARGS
@@ -52,3+54,8 @@ permuting, defining those enables it (GNU behaviour, can still be disabled by se