Subject: bug#35920: strftime incorrectly assumes that nstrftime will produce UTF-8

From: John Cowan <[email-masked]>
Date: Sun, 30 Jun 2019 21:28:18 -0400

On Sun, Jun 30, 2019 at 7:06 PM Mark H Weaver <[email-masked]> wrote:

Is there a portable way to find the relevant locale files and interpret
> them, on both POSIX and Windows systems?  If so, can you point out the
> relevant documentation?
>

Portable in the sense that the information can be obtained on both Posix
and Windows, but not with exactly the same code.

On Posix, you need the nl_langinfo() and nl_langinfo_l() functions from
<langinfo.h>.  These functions are documented at <
http://pubs.opengroup.org/onlinepubs/9699919799/functions/nl_langinfo.html>,
and the constants d at <
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/langinfo.h.html>.

On Windows, you need to call EnumCalendarInfoExEx if you have dropped
support for Vista and earlier versions, or if not, then follow the links
from the page about it.  The function is documented at <
https://docs.microsoft.com/en-us/windows/desktop/api/Winnls/nf-winnls-enumcalendarinfoexex>,
and the constants that specify particular pieces of information at <
https://docs.microsoft.com/en-us/windows/desktop/Intl/calendar-type-information>.
(I have never used these interfaces myself.)

I hope this is helpful.

John Cowan          http://vrici.lojban.org/~cowan        [email-masked]
Eric Raymond is the Margaret Mead of the Open Source movement.
          --Bruce Perens, a long time ago