diff options
Diffstat (limited to 'libc')
-rw-r--r-- | libc/misc/time/Makefile | 2 | ||||
-rw-r--r-- | libc/misc/time/time.c | 38 |
2 files changed, 39 insertions, 1 deletions
diff --git a/libc/misc/time/Makefile b/libc/misc/time/Makefile index 757a77a81..25dbab14e 100644 --- a/libc/misc/time/Makefile +++ b/libc/misc/time/Makefile @@ -26,7 +26,7 @@ LIBC=$(TOPDIR)libc.a CSRC=localtime.c gmtime.c asctime.c ctime.c asc_conv.c tm_conv.c mktime.c \ localtime_r.c gmtime_r.c asctime_r.c ctime_r.c utimes.c adjtime.c \ - clock.c difftime.c strftime.c + clock.c difftime.c strftime.c time.c COBJS=$(patsubst %.c,%.o, $(CSRC)) OBJS=$(COBJS) diff --git a/libc/misc/time/time.c b/libc/misc/time/time.c new file mode 100644 index 000000000..e96ae1cb9 --- /dev/null +++ b/libc/misc/time/time.c @@ -0,0 +1,38 @@ +/* Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#include <time.h> +#include <sys/time.h> + + +/* Return the current time as a `time_t' and also put it in *T if T is + not NULL. Time is represented as seconds from Jan 1 00:00:00 1970. */ +time_t time (time_t *t) +{ + struct timeval tv; + time_t result; + + if (gettimeofday (&tv, (struct timezone *) NULL)) + result = (time_t) -1; + else + result = (time_t) tv.tv_sec; + + if (t != NULL) + *t = result; + return result; +} |