Branch data Line data Source code
1 : : /* 2 : : * Copyright (c) 2017 Intel Corporation 3 : : * Copyright (c) 2019 Peter Bigot Consulting, LLC 4 : : * 5 : : * SPDX-License-Identifier: Apache-2.0 6 : : */ 7 : : 8 : : #ifndef ZEPHYR_LIB_LIBC_MINIMAL_INCLUDE_TIME_H_ 9 : : #define ZEPHYR_LIB_LIBC_MINIMAL_INCLUDE_TIME_H_ 10 : : 11 : : #include <stdint.h> 12 : : #include <toolchain.h> 13 : : #include <sys/_types.h> 14 : : #include <sys/_timespec.h> 15 : : 16 : : /* Minimal time.h to fulfill the requirements of certain libraries 17 : : * like mbedTLS and to support time APIs. 18 : : */ 19 : : 20 : : #ifdef __cplusplus 21 : : extern "C" { 22 : : #endif 23 : : 24 : : struct tm { 25 : : int tm_sec; 26 : : int tm_min; 27 : : int tm_hour; 28 : : int tm_mday; 29 : : int tm_mon; 30 : : int tm_year; 31 : : int tm_wday; 32 : : int tm_yday; 33 : : int tm_isdst; 34 : : }; 35 : : 36 : : #if !defined(__time_t_defined) 37 : : #define __time_t_defined 38 : : typedef _TIME_T_ time_t; 39 : : #endif 40 : : 41 : : #if !defined(__suseconds_t_defined) 42 : : #define __suseconds_t_defined 43 : : typedef _SUSECONDS_T_ suseconds_t; 44 : : #endif 45 : : 46 : : /* 47 : : * Conversion between civil time and UNIX time. The companion 48 : : * localtime() and inverse mktime() are not provided here since they 49 : : * require access to time zone information. 50 : : */ 51 : 0 : struct tm *gmtime(const time_t *timep); 52 [ # # ]: 0 : struct tm *gmtime_r(const time_t *ZRESTRICT timep, 53 : : struct tm *ZRESTRICT result); 54 : : 55 : : time_t time(time_t *tloc); 56 : : 57 : : #ifdef __cplusplus 58 : : } 59 : : #endif 60 : : 61 : : #endif /* ZEPHYR_LIB_LIBC_MINIMAL_INCLUDE_STDIO_H_ */