1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00

sys/tiny_strerror: add tiny_strerror_minimal

This commit is contained in:
Benjamin Valentin 2022-10-18 22:03:00 +02:00
parent 07c04bc0e3
commit 8553c8ff55
3 changed files with 15 additions and 0 deletions

View File

@ -477,6 +477,7 @@ PSEUDOMODULES += suit_transport_%
PSEUDOMODULES += suit_storage_% PSEUDOMODULES += suit_storage_%
PSEUDOMODULES += sys_bus_% PSEUDOMODULES += sys_bus_%
PSEUDOMODULES += tiny_strerror_as_strerror PSEUDOMODULES += tiny_strerror_as_strerror
PSEUDOMODULES += tiny_strerror_minimal
PSEUDOMODULES += vdd_lc_filter_% PSEUDOMODULES += vdd_lc_filter_%
## @defgroup pseudomodule_vfs_auto_format vfs_auto_format ## @defgroup pseudomodule_vfs_auto_format vfs_auto_format
## @brief Format mount points at startup unless they can be mounted ## @brief Format mount points at startup unless they can be mounted

View File

@ -24,6 +24,13 @@
* @note Using module `tiny_strerror_as_strerror` will replace all calls * @note Using module `tiny_strerror_as_strerror` will replace all calls
* to `strerror()` by calls to `tiny_strerror()`, which may safe * to `strerror()` by calls to `tiny_strerror()`, which may safe
* a bit of ROM. * a bit of ROM.
*
* @note Using module `tiny_strerror_minimal` will just print the error
* code value.
* This will save ~1k of ROM, but won't provide much more information.
*
* @warning The module `tiny_strerror_minimal` is not thread-safe.
*
* @{ * @{
* *
* *

View File

@ -18,6 +18,7 @@
*/ */
#include <errno.h> #include <errno.h>
#include <stdio.h>
#include <string.h> #include <string.h>
#include "kernel_defines.h" #include "kernel_defines.h"
@ -112,6 +113,12 @@ const char *tiny_strerror(int errnum)
const char *retval = "-unknown"; const char *retval = "-unknown";
unsigned offset = 1; unsigned offset = 1;
if (IS_USED(MODULE_TINY_STRERROR_MINIMAL)) {
static char buf[4];
snprintf(buf, sizeof(buf), "%d", errnum);
return buf;
}
if (errnum <= 0) { if (errnum <= 0) {
offset = 0; offset = 0;
errnum = -errnum; errnum = -errnum;