diff options
| author | Mattias Andrée <maandree@kth.se> | 2021-03-25 13:20:15 +0100 |
|---|---|---|
| committer | Mattias Andrée <maandree@kth.se> | 2021-03-25 13:20:15 +0100 |
| commit | 71461330a7d343a5bbdd6c2c96d4652f44852030 (patch) | |
| tree | 0fc86c32b17edde3599f0a86411e2da3474728a5 /common.h | |
| download | pdatools-71461330a7d343a5bbdd6c2c96d4652f44852030.tar.gz pdatools-71461330a7d343a5bbdd6c2c96d4652f44852030.tar.bz2 pdatools-71461330a7d343a5bbdd6c2c96d4652f44852030.tar.xz | |
First commit
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'common.h')
| -rw-r--r-- | common.h | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/common.h b/common.h new file mode 100644 index 0000000..0ee870c --- /dev/null +++ b/common.h @@ -0,0 +1,131 @@ +/* See LICENSE file for copyright and license details. */ +#if !defined(_XOPEN_SOURCE) +# define _XOPEN_SOURCE 700 +#elif (_XOPEN_SOURCE + 0 < 700) +# undef _XOPEN_SOURCE +# define _XOPEN_SOURCE 700 +#endif +#ifndef _BSD_SOURCE +# define _BSD_SOURCE +#endif +#ifndef _DEFAULT_SOURCE +# define _DEFAULT_SOURCE +#endif + +#include <libcore.h> +#include <libcore-arg.h> +#include <libcore-aux.h> + +#define malloc2 libcore_malloc2 +#define malloc3 libcore_malloc3 +#define calloc3 libcore_calloc3 +#define realloc2 libcore_realloc2 +#define realloc3 libcore_realloc3 +#define enmalloc libcore_enmalloc +#define enmalloc2 libcore_enmalloc2 +#define enmalloc3 libcore_enmalloc3 +#define encalloc libcore_encalloc +#define encalloc3 libcore_encalloc3 +#define enrealloc libcore_enrealloc +#define enrealloc2 libcore_enrealloc2 +#define enrealloc3 libcore_enrealloc3 +#define emalloc(N1) enmalloc(1, (N1)) +#define emalloc2(N1, N2) enmalloc2(1, (N1), (N2)); +#define emalloc3(N1, N2, N3) enmalloc3(1, (N1), (N2), (N3)); +#define ecalloc(N1, N2) encalloc(1, (N1), (N2)); +#define ecalloc3(N1, N2, N3) encalloc3(1, (N1), (N2), (N3)); +#define erealloc(PTR, N1) enrealloc(1, (PTR), (N1)); +#define erealloc2(PTR, N1, N2) enrealloc2(1, (PTR), (N1), (N2)); +#define erealloc3(PTR, N1, N2, N3) enrealloc3(1, (PTR), (N1), (N2), (N3)); + +#define eprintf libcore_eprintf +#define enprintf libcore_enprintf +#define weprintf libcore_weprintf + +#define fshut libcore_fshut +#define efshut libcore_efshut +#define enfshut libcore_enfshut + +#define toji libcore_toji +#define toju libcore_toju +#define tozi libcore_tozi +#define tozu libcore_tozu +#define tolli libcore_tolli +#define tollu libcore_tollu +#define toli libcore_toli +#define tolu libcore_tolu +#define toi libcore_toi +#define tou libcore_tou +#define entoji_flag libcore_entoji_flag +#define entoju_flag libcore_entoju_flag +#define entozi_flag libcore_entozi_flag +#define entozu_flag libcore_entozu_flag +#define entolli_flag libcore_entolli_flag +#define entollu_flag libcore_entollu_flag +#define entoli_flag libcore_entoli_flag +#define entolu_flag libcore_entolu_flag +#define entoi_flag libcore_entoi_flag +#define entou_flag libcore_entou_flag +#define entoji_arg libcore_entoji_arg +#define entoju_arg libcore_entoju_arg +#define entozi_arg libcore_entozi_arg +#define entozu_arg libcore_entozu_arg +#define entolli_arg libcore_entolli_arg +#define entollu_arg libcore_entollu_arg +#define entoli_arg libcore_entoli_arg +#define entolu_arg libcore_entolu_arg +#define entoi_arg libcore_entoi_arg +#define entou_arg libcore_entou_arg +#define etoji_flag(...) libcore_etoji_flag(__VA_ARGS__) +#define etoju_flag(...) libcore_etoju_flag(__VA_ARGS__) +#define etozi_flag(...) libcore_etozi_flag(__VA_ARGS__) +#define etozu_flag(...) libcore_etozu_flag(__VA_ARGS__) +#define etolli_flag(...) libcore_etolli_flag(__VA_ARGS__) +#define etollu_flag(...) libcore_etollu_flag(__VA_ARGS__) +#define etoli_flag(...) libcore_etoli_flag(__VA_ARGS__) +#define etolu_flag(...) libcore_etolu_flag(__VA_ARGS__) +#define etoi_flag(...) libcore_etoi_flag(__VA_ARGS__) +#define etou_flag(...) libcore_etou_flag(__VA_ARGS__) +#define etoji_arg(...) libcore_etoji_arg(__VA_ARGS__) +#define etoju_arg(...) libcore_etoju_arg(__VA_ARGS__) +#define etozi_arg(...) libcore_etozi_arg(__VA_ARGS__) +#define etozu_arg(...) libcore_etozu_arg(__VA_ARGS__) +#define etolli_arg(...) libcore_etolli_arg(__VA_ARGS__) +#define etollu_arg(...) libcore_etollu_arg(__VA_ARGS__) +#define etoli_arg(...) libcore_etoli_arg(__VA_ARGS__) +#define etolu_arg(...) libcore_etolu_arg(__VA_ARGS__) +#define etoi_arg(...) libcore_etoi_arg(__VA_ARGS__) +#define etou_arg(...) libcore_etou_arg(__VA_ARGS__) +#define tof libcore_tof +#define tolf libcore_tolf +#define tollf libcore_tollf +#define entof_flag libcore_entof_flag +#define entof_arg libcore_entof_arg +#define entolf_flag libcore_entolf_flag +#define entolf_arg libcore_entolf_arg +#define entollf_flag libcore_entollf_flag +#define entollf_arg libcore_entollf_arg +#define etof_flag(...) libcore_etof_flag(__VA_ARGS__) +#define etof_arg(...) libcore_etof_arg(__VA_ARGS__) +#define etolf_flag(...) libcore_etolf_flag(__VA_ARGS__) +#define etolf_arg(...) libcore_etolf_arg(__VA_ARGS__) +#define etollf_flag(...) libcore_etollf_flag(__VA_ARGS__) +#define etollf_arg(...) libcore_etollf_arg(__VA_ARGS__) + + +static inline long int +estrtol(const char *s, int base) +{ + int saved_errno = errno; + long long int ret; + char *end; + errno = 0; + ret = strtol(s, &end, base); + if (errno || *end) { + if (!errno) + errno = EINVAL; + eprintf("strtol %s:", s); + } + errno = saved_errno; + return ret; +} |
