xref: /onnv-gate/usr/src/lib/libast/common/features/tvlib (revision 12068:08a39a083754)
14887Schinhdr	time
24887Schinlib	clock_settime,gettimeofday,settimeofday,stime,utimes
34887Schinlib	nanosleep,usleep
4*12068SRoger.Faulkner@Oracle.COMlib	utimensat -D_ATFILE_SOURCE sys/stat.h note{ complete utimensat implementation }end link{
5*12068SRoger.Faulkner@Oracle.COM	#include <fcntl.h>
6*12068SRoger.Faulkner@Oracle.COM	static struct timespec	ts[2];
7*12068SRoger.Faulkner@Oracle.COM	int
8*12068SRoger.Faulkner@Oracle.COM	main()
9*12068SRoger.Faulkner@Oracle.COM	{
10*12068SRoger.Faulkner@Oracle.COM		ts[0].tv_nsec = UTIME_NOW;
11*12068SRoger.Faulkner@Oracle.COM		ts[1].tv_nsec = UTIME_OMIT;
12*12068SRoger.Faulkner@Oracle.COM		return utimensat(AT_FDCWD, ".", ts, AT_SYMLINK_NOFOLLOW) != 0;
13*12068SRoger.Faulkner@Oracle.COM	}
14*12068SRoger.Faulkner@Oracle.COM}end
154887Schin
164887Schinif ! mem timeval.tv_sec sys/time.h {
174887Schin	struct timeval
184887Schin	{
194887Schin		time_t	tv_sec;
204887Schin		time_t	tv_usec;
214887Schin	};
224887Schin}
234887Schinendif
244887Schin
254887Schinlib	clock_gettime execute{
264887Schin	#include <time.h>
27*12068SRoger.Faulkner@Oracle.COM	int
284887Schin	main()
294887Schin	{
304887Schin		struct timespec	tv;
314887Schin		return clock_gettime(CLOCK_REALTIME, &tv) != 0;
324887Schin	}
334887Schin}end
344887Schin
354887Schinlib	utimets link{
364887Schin	#include <time.h>
374887Schin	#include <sys/time.h>
384887Schin	static struct timespec	tv;
39*12068SRoger.Faulkner@Oracle.COM	int
404887Schin	main()
414887Schin	{
424887Schin		return utimets(".", &tv) != 0;
434887Schin	}
444887Schin}end
454887Schin
464887Schintst	- -DN=1 - -DN=2 - -DN=3 - -DN=4 output{
474887Schin	#include <sys/types.h>
484887Schin	#include <sys/time.h>
494887Schin	int
504887Schin	main()
514887Schin	{
524887Schin		struct timeval	tv;
534887Schin#if N == 1
544887Schin		struct timezone	tz;
554887Schin		if (gettimeofday(&tv, (struct timezone*)0) < 0)
564887Schin			return 1;
574887Schin		printf("#define tmgettimeofday(p)	gettimeofday(p,(struct timezone*)0)\n");
584887Schin#if _lib_settimeofday
594887Schin		printf("#define tmsettimeofday(p)	settimeofday(p,(struct timezone*)0)\n");
604887Schin#endif
614887Schin#endif
624887Schin#if N == 2
634887Schin		if (gettimeofday(&tv, (void*)0) < 0)
644887Schin			return 1;
654887Schin		printf("#define tmgettimeofday(p)	gettimeofday(p,(void*)0)\n");
664887Schin#if _lib_settimeofday
674887Schin		printf("#define tmsettimeofday(p)	gettimeofday(p,(void*)0)\n");
684887Schin#endif
694887Schin#endif
704887Schin#if N == 3
714887Schin		if (gettimeofday(&tv) < 0)
724887Schin			return 1;
734887Schin		printf("#define tmgettimeofday(p)	gettimeofday(p)\n");
744887Schin#if _lib_settimeofday
754887Schin		printf("#define tmsettimeofday(p)	settimeofday(p)\n");
764887Schin#endif
774887Schin#endif
784887Schin		return 0;
794887Schin	}
804887Schin}end
81