diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-09-25 09:24:09 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-09-25 09:24:09 +0200 |
commit | 8618727d5161ab9485248f3135a076e9ae5dd964 (patch) | |
tree | 7341f020aedb040d0a2908eed008a10ed5ebc392 /rtemsbsd | |
parent | Update to FreeBSD stable/12 2019-09-23 (diff) | |
download | rtems-libbsd-8618727d5161ab9485248f3135a076e9ae5dd964.tar.bz2 |
Add compatiblity for older Newlib variants
Diffstat (limited to 'rtemsbsd')
-rw-r--r-- | rtemsbsd/include/machine/rtems-bsd-user-space.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/rtemsbsd/include/machine/rtems-bsd-user-space.h b/rtemsbsd/include/machine/rtems-bsd-user-space.h index ac78b723..67326a0f 100644 --- a/rtemsbsd/include/machine/rtems-bsd-user-space.h +++ b/rtemsbsd/include/machine/rtems-bsd-user-space.h @@ -91,6 +91,42 @@ char *fgetln(FILE *fp, size_t *lenp); /* FIXME: Add to Newlib */ int feature_present(const char *); +/* FIXME: Remove after Newlib update */ +#ifndef timespecclear +#define timespecclear(tvp) ((tvp)->tv_sec = (tvp)->tv_nsec = 0) +#endif +#ifndef timespecisset +#define timespecisset(tvp) ((tvp)->tv_sec || (tvp)->tv_nsec) +#endif +#ifndef timespeccmp +#define timespeccmp(tvp, uvp, cmp) \ + (((tvp)->tv_sec == (uvp)->tv_sec) ? \ + ((tvp)->tv_nsec cmp (uvp)->tv_nsec) : \ + ((tvp)->tv_sec cmp (uvp)->tv_sec)) +#endif +#ifndef timespecadd +#define timespecadd(tsp, usp, vsp) \ + do { \ + (vsp)->tv_sec = (tsp)->tv_sec + (usp)->tv_sec; \ + (vsp)->tv_nsec = (tsp)->tv_nsec + (usp)->tv_nsec; \ + if ((vsp)->tv_nsec >= 1000000000L) { \ + (vsp)->tv_sec++; \ + (vsp)->tv_nsec -= 1000000000L; \ + } \ + } while (0) +#endif +#ifndef timespecsub +#define timespecsub(tsp, usp, vsp) \ + do { \ + (vsp)->tv_sec = (tsp)->tv_sec - (usp)->tv_sec; \ + (vsp)->tv_nsec = (tsp)->tv_nsec - (usp)->tv_nsec; \ + if ((vsp)->tv_nsec < 0) { \ + (vsp)->tv_sec--; \ + (vsp)->tv_nsec += 1000000000L; \ + } \ + } while (0) +#endif + __END_DECLS #endif /* _RTEMS_BSD_MACHINE_RTEMS_BSD_USER_SPACE_H_ */ |