2010年8月5日 星期四

timezone in uClibc and glibc

http://lists.uclibc.org/pipermail/uclibc/2002-August/004010.html
glibc 和uclibc對「time zone」處理的方式不同

以下是對uclibc對env「TZ」 or file 「/etc/TZ」的定義
http://www.sonoracomm.com/support/20-voice-support/107-uclibc-tz

這是uclibc對於time zone的部分文件
http://leaf.sourceforge.net/doc/buci-tz3.html
其中「http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html
這個opengroup有定義完整的格式

在x86 pc上的glibc有以下文件
man tzfile(5), gmtime, tzset(3)
gmtime(3): 從time_t轉換struct tm(以UTC only)
localtime(3): 從time_t轉換struct tm,但會call tzset(3)來轉換成當地時間

我在uclibc上的 test 如下

/tmp/rootfs # TZ="" date
Thu Aug  5 02:16:46 UTC 2010


/tmp/rootfs # cat /etc/TZ
XXX-16

/tmp/rootfs # date
Thu Aug  5 18:15:42 XXX 2010
/tmp/rootfs #
看來前三個字元可以自定,以台北的時 差要用-16(少16hrs)

沒有留言: