158166Selan #ifndef time_h 258166Selan 358166Selan extern "C" { 458166Selan 558166Selan #ifdef __time_h_recursive 658166Selan #include_next <time.h> 758166Selan #else 858166Selan #define __time_h_recursive 958166Selan 1058166Selan #include <_G_config.h> 1158166Selan 1258166Selan // A clean way to use and/or define time_t might allow removal of this crud. 1358166Selan #ifndef __sys_time_h_recursive 1458166Selan #define time __hide_time 1558166Selan #define clock __hide_clock 1658166Selan #define difftime __hide_difftime 1758166Selan #define gmtime __hide_gmtime 1858166Selan #define localtime __hide_localtime 1958166Selan #define ctime __hide_ctime 2058166Selan #define asctime __hide_asctime 2158166Selan #define strftime __hide_strftime 2258166Selan #endif 2358166Selan #define mktime __hide_mktime 2458166Selan #define tzset __hide_tzset 2558166Selan #define tzsetwall __hide_tzsetwall 2658166Selan #define getitimer __hide_getitimer 2758166Selan #define setitimer __hide_setitimer 2858166Selan #define gettimeofday __hide_gettimeofday 2958166Selan #define settimeofday __hide_settimeofday 3058166Selan 3158166Selan #ifdef VMS 3258166Selan struct unix_time 3358166Selan { 3458166Selan long int tv_sec; 3558166Selan long int tv_usec; 3658166Selan }; 3758166Selan 3858166Selan struct rusage 3958166Selan { 4058166Selan struct unix_time ru_utime; 4158166Selan }; 4258166Selan 4358166Selan #define RUSAGE_SELF 0 //define it, it will be unused 4458166Selan #else 4558166Selan #ifdef hpux 4658166Selan #define _INCLUDE_POSIX_SOURCE 4758166Selan #endif 4858166Selan 4958166Selan #include_next <time.h> 5058166Selan #endif 5158166Selan #undef __time_h_recursive 5258166Selan 5358166Selan #define time_h 1 5458166Selan 5558166Selan #undef time 5658166Selan #undef clock 5758166Selan #undef difftime 5858166Selan #undef gmtime 5958166Selan #undef localtime 6058166Selan #undef asctime 6158166Selan #undef ctime 6258166Selan #undef mktime 6358166Selan #undef strftime 6458166Selan #undef tzset 6558166Selan #undef tzsetwall 6658166Selan #undef getitimer 6758166Selan #undef setitimer 6858166Selan #undef gettimeofday 6958166Selan #undef settimeofday 7058166Selan 7158166Selan extern char* asctime _G_ARGS((const struct tm*)); 7258166Selan extern char* ctime _G_ARGS((const _G_time_t*)); 7358166Selan double difftime _G_ARGS((_G_time_t, _G_time_t)); 7458166Selan extern struct tm* gmtime _G_ARGS((const _G_time_t*)); 7558166Selan extern struct tm* localtime _G_ARGS((const _G_time_t*)); 7658166Selan extern _G_time_t mktime(struct tm*); 7758166Selan extern _G_size_t strftime _G_ARGS((char*,_G_size_t,const char*,const struct tm*)); 7858166Selan extern void tzset(); 7958166Selan extern void tzsetwall(); 8058166Selan 8158166Selan extern int getitimer(int, struct itimerval*); 8258166Selan extern int setitimer _G_ARGS((int, const struct itimerval*,struct itimerval*)); 8358166Selan extern int gettimeofday(struct timeval*, struct timezone*); 8458166Selan extern int settimeofday _G_ARGS((const struct timeval*,const struct timezone*)); 8558166Selan extern int stime _G_ARGS((const _G_time_t*)); 8658166Selan extern int dysize(int); 8758166Selan 8858166Selan #if defined(___AIX__) 8958166Selan int clock (void); 9058166Selan #elif defined(hpux) 9158166Selan unsigned long clock(void); 9258166Selan #else 9358166Selan long clock(void); 9458166Selan #endif 9558166Selan _G_time_t time(_G_time_t*); 9658166Selan unsigned ualarm(unsigned, unsigned); 97*60384Selan void usleep(unsigned); 98*60384Selan int profil _G_ARGS((char *, int, int, int)); 9958166Selan 10058166Selan #endif 10158166Selan } 10258166Selan #endif 103