* localtime.cc: Define TM_GMTOFF and TM_ZONE based on __TM_GMTOFF and
__TM_ZONE being defined. Throughout, write to these struct tm members only if CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS is true. * libc/strptime.cc: Ditto. * include/cygwin/version.h (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS): Define. (CYGWIN_VERSION_API_MINOR): Bump to 272.
This commit is contained in:
parent
07be216aab
commit
27afe3a4ab
|
@ -1,3 +1,13 @@
|
||||||
|
2014-03-05 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* localtime.cc: Define TM_GMTOFF and TM_ZONE based on __TM_GMTOFF and
|
||||||
|
__TM_ZONE being defined. Throughout, write to these struct tm members
|
||||||
|
only if CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS is true.
|
||||||
|
* libc/strptime.cc: Ditto.
|
||||||
|
* include/cygwin/version.h (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS):
|
||||||
|
Define.
|
||||||
|
(CYGWIN_VERSION_API_MINOR): Bump to 272.
|
||||||
|
|
||||||
2014-03-04 Corinna Vinschen <corinna@vinschen.de>
|
2014-03-04 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* exception.h (exception::handler_installed): Remove.
|
* exception.h (exception::handler_installed): Remove.
|
||||||
|
|
|
@ -104,6 +104,9 @@ details. */
|
||||||
#define CYGWIN_VERSION_USE_PSEUDO_RELOC_IN_DLL(u) \
|
#define CYGWIN_VERSION_USE_PSEUDO_RELOC_IN_DLL(u) \
|
||||||
(CYGWIN_VERSION_PER_PROCESS_API_VERSION_COMBINED (u) >= 227)
|
(CYGWIN_VERSION_PER_PROCESS_API_VERSION_COMBINED (u) >= 227)
|
||||||
|
|
||||||
|
#define CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS \
|
||||||
|
(CYGWIN_VERSION_USER_API_VERSION_COMBINED >= 272)
|
||||||
|
|
||||||
#define CYGWIN_VERSION_CYGWIN_CONV 181
|
#define CYGWIN_VERSION_CYGWIN_CONV 181
|
||||||
|
|
||||||
/* API_MAJOR 0.0: Initial version. API_MINOR changes:
|
/* API_MAJOR 0.0: Initial version. API_MINOR changes:
|
||||||
|
@ -442,12 +445,13 @@ details. */
|
||||||
270: Redefine mtget.mt_resid field to contain current partition as well
|
270: Redefine mtget.mt_resid field to contain current partition as well
|
||||||
as number of partitions on tape.
|
as number of partitions on tape.
|
||||||
271: Export posix_spawn, posix_spawnp, and helper functions.
|
271: Export posix_spawn, posix_spawnp, and helper functions.
|
||||||
|
272: Export tm_gmtoff and tm_zone members.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Note that we forgot to bump the api for ualarm, strtoll, strtoull */
|
/* Note that we forgot to bump the api for ualarm, strtoll, strtoull */
|
||||||
|
|
||||||
#define CYGWIN_VERSION_API_MAJOR 0
|
#define CYGWIN_VERSION_API_MAJOR 0
|
||||||
#define CYGWIN_VERSION_API_MINOR 271
|
#define CYGWIN_VERSION_API_MINOR 272
|
||||||
|
|
||||||
/* There is also a compatibity version number associated with the
|
/* There is also a compatibity version number associated with the
|
||||||
shared memory regions. It is incremented when incompatible
|
shared memory regions. It is incremented when incompatible
|
||||||
|
|
|
@ -48,6 +48,13 @@ __RCSID("$NetBSD: strptime.c,v 1.28 2008/04/28 20:23:01 martin Exp $");
|
||||||
#include <tzfile.h>
|
#include <tzfile.h>
|
||||||
#include "../locale/timelocal.h"
|
#include "../locale/timelocal.h"
|
||||||
|
|
||||||
|
#ifdef __TM_GMTOFF
|
||||||
|
# define TM_GMTOFF __TM_GMTOFF
|
||||||
|
#endif
|
||||||
|
#ifdef __TM_ZONE
|
||||||
|
# define TM_ZONE __TM_ZONE
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef __weak_alias
|
#ifdef __weak_alias
|
||||||
__weak_alias(strptime,_strptime)
|
__weak_alias(strptime,_strptime)
|
||||||
#endif
|
#endif
|
||||||
|
@ -653,10 +660,12 @@ literal:
|
||||||
if (strncmp((const char *)bp, gmt, 3) == 0) {
|
if (strncmp((const char *)bp, gmt, 3) == 0) {
|
||||||
tm->tm_isdst = 0;
|
tm->tm_isdst = 0;
|
||||||
#ifdef TM_GMTOFF
|
#ifdef TM_GMTOFF
|
||||||
tm->TM_GMTOFF = 0;
|
if (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS)
|
||||||
|
tm->TM_GMTOFF = 0;
|
||||||
#endif
|
#endif
|
||||||
#ifdef TM_ZONE
|
#ifdef TM_ZONE
|
||||||
tm->TM_ZONE = gmt;
|
if (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS)
|
||||||
|
tm->TM_ZONE = gmt;
|
||||||
#endif
|
#endif
|
||||||
bp += 3;
|
bp += 3;
|
||||||
} else {
|
} else {
|
||||||
|
@ -668,10 +677,12 @@ literal:
|
||||||
if (ep != NULL) {
|
if (ep != NULL) {
|
||||||
tm->tm_isdst = i;
|
tm->tm_isdst = i;
|
||||||
#ifdef TM_GMTOFF
|
#ifdef TM_GMTOFF
|
||||||
tm->TM_GMTOFF = -(timezone);
|
if (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS)
|
||||||
|
tm->TM_GMTOFF = -(timezone);
|
||||||
#endif
|
#endif
|
||||||
#ifdef TM_ZONE
|
#ifdef TM_ZONE
|
||||||
tm->TM_ZONE = tzname[i];
|
if (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS)
|
||||||
|
tm->TM_ZONE = tzname[i];
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
bp = ep;
|
bp = ep;
|
||||||
|
|
|
@ -344,6 +344,13 @@ struct tzhead {
|
||||||
|
|
||||||
#include "fcntl.h"
|
#include "fcntl.h"
|
||||||
|
|
||||||
|
#ifdef __TM_GMTOFF
|
||||||
|
# define TM_GMTOFF __TM_GMTOFF
|
||||||
|
#endif
|
||||||
|
#ifdef __TM_ZONE
|
||||||
|
# define TM_ZONE __TM_ZONE
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** SunOS 4.1.1 headers lack O_BINARY.
|
** SunOS 4.1.1 headers lack O_BINARY.
|
||||||
*/
|
*/
|
||||||
|
@ -1740,7 +1747,8 @@ localsub(const timezone_t sp, const time_t * const timep, const long offset,
|
||||||
if (sp == lclptr)
|
if (sp == lclptr)
|
||||||
tzname[tmp->tm_isdst] = &sp->chars[ttisp->tt_abbrind];
|
tzname[tmp->tm_isdst] = &sp->chars[ttisp->tt_abbrind];
|
||||||
#ifdef TM_ZONE
|
#ifdef TM_ZONE
|
||||||
tmp->TM_ZONE = &sp->chars[ttisp->tt_abbrind];
|
if (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS)
|
||||||
|
tmp->TM_ZONE = &sp->chars[ttisp->tt_abbrind];
|
||||||
#endif /* defined TM_ZONE */
|
#endif /* defined TM_ZONE */
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
@ -1793,13 +1801,16 @@ gmtsub(const timezone_t sp, const time_t *const timep, const long offset,
|
||||||
** "UTC+xxxx" or "UTC-xxxx" if offset is non-zero,
|
** "UTC+xxxx" or "UTC-xxxx" if offset is non-zero,
|
||||||
** but this is no time for a treasure hunt.
|
** but this is no time for a treasure hunt.
|
||||||
*/
|
*/
|
||||||
if (offset != 0)
|
if (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS)
|
||||||
tmp->TM_ZONE = wildabbr;
|
{
|
||||||
else {
|
if (offset != 0)
|
||||||
if (gmtptr == NULL)
|
tmp->TM_ZONE = wildabbr;
|
||||||
tmp->TM_ZONE = gmt;
|
else {
|
||||||
else tmp->TM_ZONE = gmtptr->chars;
|
if (gmtptr == NULL)
|
||||||
}
|
tmp->TM_ZONE = gmt;
|
||||||
|
else tmp->TM_ZONE = gmtptr->chars;
|
||||||
|
}
|
||||||
|
}
|
||||||
#endif /* defined TM_ZONE */
|
#endif /* defined TM_ZONE */
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
@ -1978,7 +1989,8 @@ timesub(const timezone_t sp, const time_t *const timep, const long offset,
|
||||||
tmp->tm_mday = (int) (idays + 1);
|
tmp->tm_mday = (int) (idays + 1);
|
||||||
tmp->tm_isdst = 0;
|
tmp->tm_isdst = 0;
|
||||||
#ifdef TM_GMTOFF
|
#ifdef TM_GMTOFF
|
||||||
tmp->TM_GMTOFF = offset;
|
if (CYGWIN_VERSION_CHECK_FOR_EXTRA_TM_MEMBERS)
|
||||||
|
tmp->TM_GMTOFF = offset;
|
||||||
#endif /* defined TM_GMTOFF */
|
#endif /* defined TM_GMTOFF */
|
||||||
return tmp;
|
return tmp;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue