Add compatiblity for older Newlib variants

This commit is contained in:
Sebastian Huber
2019-09-25 09:24:09 +02:00
parent 37323bb819
commit 8618727d51

View File

@@ -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_ */