diff options
Diffstat (limited to 'libshouldbeinlibc/maptime.h')
-rw-r--r-- | libshouldbeinlibc/maptime.h | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/libshouldbeinlibc/maptime.h b/libshouldbeinlibc/maptime.h index 244cbcf1..947ad640 100644 --- a/libshouldbeinlibc/maptime.h +++ b/libshouldbeinlibc/maptime.h @@ -1,8 +1,8 @@ /* Support for mach's mapped time - Copyright (C) 1996 Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 2000, 2007 Free Software Foundation, Inc. - Written by Miles Bader <miles@gnu.ai.mit.edu> + Written by Miles Bader <miles@gnu.org> This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as @@ -22,17 +22,30 @@ #define __MAPTIME_H__ #include <mach/time_value.h> +#include <sys/time.h> +#include <errno.h> +#include <features.h> + +#ifdef MAPTIME_DEFINE_EI +#define MAPTIME_EI +#else +#define MAPTIME_EI __extern_inline +#endif /* Return the mach mapped time page in MTIME. If USE_MACH_DEV is false, then - the hurd uptime device DEV_NAME, or "/dev/uptime" if DEV_NAME is 0, is + the hurd time device DEV_NAME, or "/dev/time" if DEV_NAME is 0, is used. If USE_MACH_DEV is true, the mach device DEV_NAME, or "time" if - DEV_NAME is 0, is used; this is a privileged operation. The mapped uptime - may be converted to a struct timeval at any time using read_uptime. */ + DEV_NAME is 0, is used; this is a privileged operation. The mapped time + may be converted to a struct timeval at any time using maptime_read. */ error_t maptime_map (int use_mach_dev, char *dev_name, volatile struct mapped_time_value **mtime); +extern void maptime_read (volatile struct mapped_time_value *mtime, struct timeval *tv); + +#if defined(__USE_EXTERN_INLINES) || defined(MAPTIME_DEFINE_EI) + /* Read the current time from MTIME into TV. This should be very fast. */ -static inline void +MAPTIME_EI void maptime_read (volatile struct mapped_time_value *mtime, struct timeval *tv) { do @@ -43,4 +56,6 @@ maptime_read (volatile struct mapped_time_value *mtime, struct timeval *tv) while (tv->tv_sec != mtime->check_seconds); } +#endif /* Use extern inlines. */ + #endif /* __MAPTIME_H__ */ |