scc

simple C compiler
git clone git://git.2f30.org/scc
Log | Files | Refs | README | LICENSE

commit 0f9980fc8dbb5d51b6442f892aa2c31a9c05c768
parent 714865e3490220bae41784c95e0c99c9fcff11d7
Author: Quentin Rameau <quinq@fifth.space>
Date:   Tue, 21 Feb 2017 18:28:19 +0100

[libc] Add time.h

Diffstat:
Alibc/include/bits/amd64-sysv/arch/time.h | 11+++++++++++
Alibc/include/bits/i386-sysv/arch/time.h | 11+++++++++++
Alibc/include/bits/qbe/arch/time.h | 11+++++++++++
Alibc/include/bits/z80/arch/time.h | 11+++++++++++
Alibc/include/time.h | 34++++++++++++++++++++++++++++++++++
5 files changed, 78 insertions(+), 0 deletions(-)

diff --git a/libc/include/bits/amd64-sysv/arch/time.h b/libc/include/bits/amd64-sysv/arch/time.h @@ -0,0 +1,11 @@ +/* See LICENSE file for copyright and license details. */ +#ifndef NULL +#define NULL ((void *) 0) +#endif + +#ifndef _SIZET +typedef unsigned long size_t; +#define _SIZET +#endif + +typedef long int time_t; diff --git a/libc/include/bits/i386-sysv/arch/time.h b/libc/include/bits/i386-sysv/arch/time.h @@ -0,0 +1,11 @@ +/* See LICENSE file for copyright and license details. */ +#ifndef NULL +#define NULL ((void *) 0) +#endif + +#ifndef _SIZET +typedef unsigned long size_t; +#define _SIZET +#endif + +typedef long int time_t; diff --git a/libc/include/bits/qbe/arch/time.h b/libc/include/bits/qbe/arch/time.h @@ -0,0 +1,11 @@ +/* See LICENSE file for copyright and license details. */ +#ifndef NULL +#define NULL ((void *) 0) +#endif + +#ifndef _SIZET +typedef unsigned long size_t; +#define _SIZET +#endif + +typedef long int time_t; diff --git a/libc/include/bits/z80/arch/time.h b/libc/include/bits/z80/arch/time.h @@ -0,0 +1,11 @@ +/* See LICENSE file for copyright and license details. */ +#ifndef NULL +#define NULL ((void *) 0) +#endif + +#ifndef _SIZET +typedef unsigned size_t; +#define _SIZET +#endif + +typedef long time_t; diff --git a/libc/include/time.h b/libc/include/time.h @@ -0,0 +1,34 @@ +#ifndef _TIME_H +#define _TIME_H + +#include <arch/time.h> + +#define CLOCKS_PER_SEC 1000000 + +typedef long int clock_t; + +struct tm { + int tm_sec; + int tm_min; + int tm_hour; + int tm_mday; + int tm_mon; + int tm_year; + int tm_wday; + int tm_yday; + int tm_isdst; +}; + +extern clock_t clock(void); +extern double difftime(time_t time1, time_t time0); +extern time_t mktime(struct tm *timeptr); +extern time_t time(time_t *timer); +extern char *asctime(const struct tm *timeptr); +extern char *ctime(const time_t *timer); +extern struct tm *gmtime(const time_t *timer); +extern struct tm *localtime(const time_t *timer); +extern size_t strftime(char * restrict s, size_t maxsize, + const char * restrict format, + const struct tm * restrict timeptr); + +#endif