mirror of
https://github.com/rust-lang/rust.git
synced 2025-01-09 14:25:24 +00:00
rt: Remove libtime wrappers
They are unused since libtime is gone.
This commit is contained in:
parent
7b87900d72
commit
d2623f2a9c
@ -41,29 +41,6 @@
|
|||||||
//include valgrind.h after stdint.h so that uintptr_t is defined for msys2 w64
|
//include valgrind.h after stdint.h so that uintptr_t is defined for msys2 w64
|
||||||
#include "valgrind/valgrind.h"
|
#include "valgrind/valgrind.h"
|
||||||
|
|
||||||
#ifdef __ANDROID__
|
|
||||||
time_t
|
|
||||||
timegm(struct tm *tm)
|
|
||||||
{
|
|
||||||
time_t ret;
|
|
||||||
char *tz;
|
|
||||||
|
|
||||||
tz = getenv("TZ");
|
|
||||||
if (tz)
|
|
||||||
tz = strdup(tz);
|
|
||||||
setenv("TZ", "", 1);
|
|
||||||
tzset();
|
|
||||||
ret = mktime(tm);
|
|
||||||
if (tz) {
|
|
||||||
setenv("TZ", tz, 1);
|
|
||||||
free(tz);
|
|
||||||
} else
|
|
||||||
unsetenv("TZ");
|
|
||||||
tzset();
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
#if (TARGET_OS_IPHONE)
|
#if (TARGET_OS_IPHONE)
|
||||||
extern char **environ;
|
extern char **environ;
|
||||||
@ -100,121 +77,6 @@ rust_list_dir_val(struct dirent* entry_ptr) {
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t tm_sec;
|
|
||||||
int32_t tm_min;
|
|
||||||
int32_t tm_hour;
|
|
||||||
int32_t tm_mday;
|
|
||||||
int32_t tm_mon;
|
|
||||||
int32_t tm_year;
|
|
||||||
int32_t tm_wday;
|
|
||||||
int32_t tm_yday;
|
|
||||||
int32_t tm_isdst;
|
|
||||||
int32_t tm_gmtoff;
|
|
||||||
int32_t tm_nsec;
|
|
||||||
} rust_tm;
|
|
||||||
|
|
||||||
void rust_tm_to_tm(rust_tm* in_tm, struct tm* out_tm) {
|
|
||||||
memset(out_tm, 0, sizeof(struct tm));
|
|
||||||
out_tm->tm_sec = in_tm->tm_sec;
|
|
||||||
out_tm->tm_min = in_tm->tm_min;
|
|
||||||
out_tm->tm_hour = in_tm->tm_hour;
|
|
||||||
out_tm->tm_mday = in_tm->tm_mday;
|
|
||||||
out_tm->tm_mon = in_tm->tm_mon;
|
|
||||||
out_tm->tm_year = in_tm->tm_year;
|
|
||||||
out_tm->tm_wday = in_tm->tm_wday;
|
|
||||||
out_tm->tm_yday = in_tm->tm_yday;
|
|
||||||
out_tm->tm_isdst = in_tm->tm_isdst;
|
|
||||||
}
|
|
||||||
|
|
||||||
void tm_to_rust_tm(struct tm* in_tm,
|
|
||||||
rust_tm* out_tm,
|
|
||||||
int32_t gmtoff,
|
|
||||||
int32_t nsec) {
|
|
||||||
out_tm->tm_sec = in_tm->tm_sec;
|
|
||||||
out_tm->tm_min = in_tm->tm_min;
|
|
||||||
out_tm->tm_hour = in_tm->tm_hour;
|
|
||||||
out_tm->tm_mday = in_tm->tm_mday;
|
|
||||||
out_tm->tm_mon = in_tm->tm_mon;
|
|
||||||
out_tm->tm_year = in_tm->tm_year;
|
|
||||||
out_tm->tm_wday = in_tm->tm_wday;
|
|
||||||
out_tm->tm_yday = in_tm->tm_yday;
|
|
||||||
out_tm->tm_isdst = in_tm->tm_isdst;
|
|
||||||
out_tm->tm_gmtoff = gmtoff;
|
|
||||||
out_tm->tm_nsec = nsec;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if defined(__WIN32__)
|
|
||||||
#define TZSET() _tzset()
|
|
||||||
#if defined(_MSC_VER) && (_MSC_VER >= 1400)
|
|
||||||
#define GMTIME(clock, result) gmtime_s((result), (clock))
|
|
||||||
#define LOCALTIME(clock, result) localtime_s((result), (clock))
|
|
||||||
#define TIMEGM(result) _mkgmtime64(result)
|
|
||||||
#else
|
|
||||||
struct tm* GMTIME(const time_t *clock, struct tm *result) {
|
|
||||||
struct tm* t = gmtime(clock);
|
|
||||||
if (t == NULL || result == NULL) { return NULL; }
|
|
||||||
*result = *t;
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
struct tm* LOCALTIME(const time_t *clock, struct tm *result) {
|
|
||||||
struct tm* t = localtime(clock);
|
|
||||||
if (t == NULL || result == NULL) { return NULL; }
|
|
||||||
*result = *t;
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
#define TIMEGM(result) mktime((result)) - _timezone
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
#define TZSET() tzset()
|
|
||||||
#define GMTIME(clock, result) gmtime_r((clock), (result))
|
|
||||||
#define LOCALTIME(clock, result) localtime_r((clock), (result))
|
|
||||||
#define TIMEGM(result) timegm(result)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void
|
|
||||||
rust_tzset() {
|
|
||||||
TZSET();
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
rust_gmtime(int64_t sec, int32_t nsec, rust_tm *timeptr) {
|
|
||||||
struct tm tm;
|
|
||||||
time_t s = sec;
|
|
||||||
GMTIME(&s, &tm);
|
|
||||||
|
|
||||||
tm_to_rust_tm(&tm, timeptr, 0, nsec);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
rust_localtime(int64_t sec, int32_t nsec, rust_tm *timeptr) {
|
|
||||||
struct tm tm;
|
|
||||||
time_t s = sec;
|
|
||||||
LOCALTIME(&s, &tm);
|
|
||||||
|
|
||||||
#if defined(__WIN32__)
|
|
||||||
int32_t gmtoff = -timezone;
|
|
||||||
#else
|
|
||||||
int32_t gmtoff = tm.tm_gmtoff;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
tm_to_rust_tm(&tm, timeptr, gmtoff, nsec);
|
|
||||||
}
|
|
||||||
|
|
||||||
int64_t
|
|
||||||
rust_timegm(rust_tm* timeptr) {
|
|
||||||
struct tm t;
|
|
||||||
rust_tm_to_tm(timeptr, &t);
|
|
||||||
return TIMEGM(&t);
|
|
||||||
}
|
|
||||||
|
|
||||||
int64_t
|
|
||||||
rust_mktime(rust_tm* timeptr) {
|
|
||||||
struct tm t;
|
|
||||||
rust_tm_to_tm(timeptr, &t);
|
|
||||||
return mktime(&t);
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifndef _WIN32
|
#ifndef _WIN32
|
||||||
|
|
||||||
DIR*
|
DIR*
|
||||||
|
Loading…
Reference in New Issue
Block a user