summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@google.com>2010-03-05 14:17:35 -0800
committerDavid 'Digit' Turner <digit@google.com>2010-03-05 14:17:35 -0800
commitd7ed1ae98249af8a58ce97784a29f048d77789a9 (patch)
tree0effedac191d00aadd7ceb7887a7eab62b95bfb7
parentcb58a8221c678299a6be9403136c6f348bd9dbdc (diff)
downloadbionic-d7ed1ae98249af8a58ce97784a29f048d77789a9.zip
bionic-d7ed1ae98249af8a58ce97784a29f048d77789a9.tar.gz
bionic-d7ed1ae98249af8a58ce97784a29f048d77789a9.tar.bz2
Fix timezone management in the C library
Define 'timezone' and 'daylight' global variables that are already defined in <time.h> Properly update the 'tm_gmtoff' field in 'struct tm' values.
-rw-r--r--libc/Android.mk8
-rw-r--r--libc/docs/CHANGES.TXT6
2 files changed, 14 insertions, 0 deletions
diff --git a/libc/Android.mk b/libc/Android.mk
index 97f4011..a6f2c83 100644
--- a/libc/Android.mk
+++ b/libc/Android.mk
@@ -408,6 +408,14 @@ libc_common_cflags := \
-DUSE_DL_PREFIX \
-DPOSIX_MISTAKE
+# these macro definitions are required to implement the
+# 'timezone' and 'daylight' global variables, as well as
+# properly update the 'tm_gmtoff' field in 'struct tm'.
+#
+libc_common_cflags += \
+ -DTM_GMTOFF=tm_gmtoff \
+ -DUSG_COMPAT=1
+
ifeq ($(strip $(DEBUG_BIONIC_LIBC)),true)
libc_common_cflags += -DDEBUG
endif
diff --git a/libc/docs/CHANGES.TXT b/libc/docs/CHANGES.TXT
index d7f54ba..c053714 100644
--- a/libc/docs/CHANGES.TXT
+++ b/libc/docs/CHANGES.TXT
@@ -70,6 +70,12 @@ Differences between current and Android 2.1:
- add sigaltstack() implementation for ARM.
+- <time.h>: Properly implement the 'timezone' and 'daylight' global variables
+ (they were not defined previously, though declared in the header).
+
+- <time.h>: Fix timezone management implementation to properly update
+ 'tm_gmtoff' field in 'struct tm' structure.
+
-------------------------------------------------------------------------------
Differences between Android 2.1 and 2.0.1: