X-Authentication-Warning: delorie.com: mail set sender to djgpp-workers-bounces using -f X-Recipient: djgpp-workers AT delorie DOT com Date: Sat, 27 Jul 2013 12:24:07 +0300 From: Eli Zaretskii Subject: Re: zoneinfo not able to recognize if daylight saving time is in effect. In-reply-to: <51F38E96.8030203@gmx.de> X-012-Sender: halo1 AT inter DOT net DOT il To: djgpp-workers AT delorie DOT com Message-id: <83d2q4z77s.fsf@gnu.org> References: <51F2C9B5 DOT 3090202 AT gmx DOT de> <51F38E96 DOT 8030203 AT gmx DOT de> Reply-To: djgpp-workers AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp-workers AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > Date: Sat, 27 Jul 2013 11:10:46 +0200 > From: Juan Manuel Guerrero > > The real reason why the zoneinfo handling of djgpp does not work seems to be it > assumes that the file and encoding format of the files in /zoneinfo have never > changed. But this is not longer true. The new version is version 2 as introduced > in 2005. If the file is a version 2 file can be checked by inspecting the byte > following the "TZiF" string. If the byte is 2 or greater then it uses the new > format that is unknown to djgpp. Why can't you use the old code (old zic.exe, AFAIR) to produce zoneinfo files in the old format using the new tzdata source files? If this can work, it should be a good interim solution, no? Why are version 2 files needed? What can they express that the old files could not? IOW, can you elaborate on the meaning of this comment: > ** If tzh_version is '2' or greater, the above is followed by a second instance > ** of tzhead and a second instance of the data in which each coded transition > ** time uses 8 rather than 4 chars, > ** then a POSIX-TZ-environment-variable-style string for use in handling > ** instants after the last transition time stored in the file > ** (with nothing between the newlines if there is no POSIX representation for > ** such instants). > */ What does this mean, in practical terms, for the time zones we need to support? Are there some rules that cannot be expressed in the old format, and if so, which ones? > I have found no information if it would be possible to still produce version 0 > files using zic and the other tools. If someone knows how this can be done > please let me know. Just run the zic compiler on the updated files, I'd say. Does that fail? If so, what are the error messages or other manifestations of the failure?