mirror of
https://github.com/rust-lang/rust.git
synced 2025-01-07 21:35:39 +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/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__
|
||||
#if (TARGET_OS_IPHONE)
|
||||
extern char **environ;
|
||||
@ -100,121 +77,6 @@ rust_list_dir_val(struct dirent* entry_ptr) {
|
||||
}
|
||||
#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
|
||||
|
||||
DIR*
|
||||
|
Loading…
Reference in New Issue
Block a user