2019-12-24 Bruno Haible Update from gnulib. 2019-12-24 Bruno Haible localcharset: Avoid referencing rpl_setlocale on native Windows. * localcharset.c (setlocale): Undefine. 2019-12-22 Bruno Haible Update from gnulib. 2019-12-22 Bruno Haible localcharset: Update support for OpenBSD. * localcharset.c (alias_table): Map "US-ASCII" to "ASCII". 2019-12-17 Bruno Haible localcharset: Fix multithread-safety bug on Windows and OS/2. * localcharset.c (locale_charset): Use a stack-allocated buffer to assemble the result. 2019-12-17 Bruno Haible localcharset: Optimize code for native Windows. * localcharset.c (locale_charset): Don't bother calling setlocale (LC_ALL, NULL) since we're not interested in its result. 2019-09-23 Paul Eggert Update URLs and associated text 2019-08-11 Bruno Haible Update from gnulib. 2019-08-11 Bruno Haible Based on patch by KO Myung-Hun in . * localcharset.c (alias_table) [OS2]: Add more aliases. 2019-07-02 Bruno Haible Update from gnulib. 2019-07-02 Bruno Haible * localcharset.c (locale_charset): Return "UTF-8" instead of "CPutf8". 2019-01-27 Bruno Haible Accommodate a shell that is not in /bin/sh. * Makefile.in (SHELL): Use the value found by configure. 2018-09-22 Bruno Haible Update from gnulib. Move mapping tables into the code. * localcharset.c: Update from gnulib. 2018-05-20 Bruno Haible * localcharset.c (alias_table): Comment out no-op mappings for platforms where these don't matter. This reduces the table size, which in turn reduces the lookup time. 2018-05-19 Bruno Haible * localcharset.c (alias_table): Add mapping for locale encodings found in FreeBSD 11, NetBSD 7, Solaris 10, Openindiana, HP-UX 11.31, IRIX 6.5, Minix 3.3. 2018-05-19 Bruno Haible * localcharset.c: Don't include , , relocatable.h, configmake.h. (O_NOFOLLOW, ISSLASH, DIRECTORY_SEPARATOR, getc, volatile): Remove macros. (charset_aliases): Remove variable. (get_charset_aliases): Remove function. (struct table_entry): New type. (alias_table, locale_table): New constants. (locale_charset): Use the alias_table or locale_table to get the canonicalized encoding name. * config.charset: Remove file. * ref-add.sin: Remove file. * ref-del.sin: Remove file. * relocatable-stub.c: New file. * relocatable.c: Remove file. * relocatable.h: Remove file. * Makefile.in (DEFS): Remove macros only needed for relocatable.[hc]. (SOURCES): Remove relocatable.c. Add relocatable-stub.c. (OBJECTS): Remove relocatable.lo. Add relocatable-stub.lo. (relocatable.lo): Remove target. (relocatable-stub.lo): New target. (charset.alias, ref-add.sed, ref-del.sed): Remove targets. (install-lib, install): Don't install charset.alias. (uninstall): Don't uninstall charset.alias. (clean): Don't remove charset.alias, ref-add.sed, ref-del.sed. (SOURCE_FILES): Add relocatable-stub.c. (GNULIB_SYNCED_FILES): Remove config.charset, ref-add.sin, ref-del.sin, relocatable.h, relocatable.c. 2018-05-04 Bruno Haible * localcharset.c: Update from gnulib. 2018-05-03 Bruno Haible * localcharset.c: Simplify 'defined _WIN32 || defined __WIN32__' to just 'defined _WIN32'. 2018-04-21 Benno Schulenberg (tiny change) * localcharset.c (get_charset_aliases): Add a tautological UTF-8 entry to speed up the search for this case. 2017-09-14 Bruno Haible all: Replace many more http URLs by https URLs. * relocatable.c: Update from gnulib. 2017-05-18 Bruno Haible * localcharset.c: Update from gnulib. 2017-05-16 Bruno Haible * localcharset.c (relocate2): Define fallback. (get_charset_aliases): Invoke relocate2 instead of relocate. Free the allocated memory. 2017-04-21 Bruno Haible * localcharset.c (WINDOWS_NATIVE): Don't define on Cygwin. * relocatable.h: Update from gnulib. * relocatable.c: Update from gnulib. 2016-12-14 Bruno Haible Cleanup useless removals. * Makefile.in (distclean): No need to remove config.* and libtool. 2016-12-03 Bruno Haible Create tarballs through an Automake-like "make dist" command. * Makefile.in (SOURCE_FILES, GNULIB_SYNCED_FILES, IMPORTED_FILES, GENERATED_FILES, DISTRIBUTED_BUILT_FILES, DISTFILES): New macros. (distdir): New target. 2016-12-02 Bruno Haible * config.charset: Update from gnulib. 2015-01-07 KO Myung-Hun * config.charset: Don't output aliases if "$os" is os2*. 2012-06-22 Bruno Haible * connfig.charset: Write "Mac OS X" instead of "MacOS X". * localcharset.c: Update from gnulib. 2016-12-02 Bruno Haible * localcharset.c (locale_charset) [WINDOWS_NATIVE]: Don't use the return value from setlocale if it would lead to a buffer overrun. 2015-01-07 KO Myung-Hun * localcharset.c (get_charset_aliases) [OS2]: Hardcode the result for OS/2. (locale_charset) [OS2]: Use system codepage if codeset is omitted from the locale name which is neither "C" nor "POSIX". 2014-07-15 Eli Zaretskii * localcharset.c (locale_charset) [WINDOWS_NATIVE]: Before falling back on the default system codepage, try extracting the codepage from what 'setlocale' returns. This allows to take into account changes of the codeset due to non-default locale set by a previous call to 'setlocale'. 2013-07-20 Daiki Ueno * localcharset.c (locale_charset) [DARWIN7]: Use MB_CUR_MAX_L instead of MB_CUR_MAX. 2012-09-16 Paul Eggert * localcharset.c (locale_charset) [DARWIN7]: Return "ASCII" if the system reports "UTF-8" and MB_CUR_MAX <= 1, as these two values are incompatible. Problem reported by Max Horn. For more discussion, please see . 2012-06-22 Bruno Haible * localcharset.c: Write "Mac OS X" instead of "MacOS X". * relocatable.c: Update from gnulib. 2016-11-22 Bruno Haible Update support for building with MSVC. * Makefile.in (install-lib, install): Install the .la file with $(INSTALL), not $(INSTALL_DATA). Otherwise the native Windows DLL gets installed without execution permissions, and programs linked to it fail: in a Cygwin shell with exit code 127, or from a cmd.exe window with a dialog "The application was unable to start correctly (0xc0000022)." 2012-01-06 Bruno Haible Talk about "native Windows API", not "Woe32". * localcharset.c: Update comments to mention native Windows. * relocatable.c: Likewise. * config.charset: More comments. 2012-01-04 Bruno Haible Talk about "native Windows API", not "Win32". * localcharset.c: Update comments to mention native Windows. (WINDOWS_NATIVE): Renamed from WIN32_NATIVE. * relocatable.c: Likewise. 2011-10-03 Bruno Haible * relocatable.c: Update from gnulib. 2011-08-07 Bruno Haible * relocatable.c: Update from gnulib. 2011-02-28 Bruno Haible Assume ANSI C behaviour of free(). * localcharset.c (get_charset_aliases): Remove NULL test before calling free(). Suggested by Simon Josefsson . 2011-02-28 Bruno Haible * relocatable.h: Update from gnulib. * relocatable.c: Likewise. 2009-12-13 Bruno Haible * localcharset.c (locale_charset): Fix comment about use of GetACP. 2009-12-12 Bruno Haible * localcharset.c (locale_charset): Add comment about use of GetACP. 2009-12-12 Bruno Haible * config.charset: Untabify. * localcharset.c: Untabify. 2009-10-18 Bruno Haible Avoid symlink attack in localcharset module. * localcharset.c: Include , . (O_NOFOLLOW): Define fallback. (get_charset_aliases): Don't open the file if it is a symbolic link. Reported by Fergal Glynn . 2009-03-26 Bruno Haible * Makefile.in (install, installdir): Ensure that $(DESTDIR)$(libdir) exists, unconditionally. 2009-03-25 Bruno Haible * relocatable.h: Update from gnulib. * relocatable.c: Likewise. 2009-01-25 Bruno Haible Don't install charset.alias on MacOS X >= 10.3. * localcharset.c (DARWIN7): New macro. (get_charset_aliases): Hardcode the result for Darwin7. * Makefile.in (install, installdirs): Don't install charset.alias on MacOS X >= 10.3. 2009-01-25 Bruno Haible Don't install charset.alias on mingw and Cygwin. * Makefile.in (install, installdirs): Don't install charset.alias on mingw and Cygwin, if the file does not yet exist. The result for these platforms is hardcoded in localcharset.c. 2009-01-24 Bruno Haible Add support for non-UTF-8 locales on MacOS X. * config.charset: Add CP1131, ARMSCII-8, PT154 to the list of canonical encodings. For Darwin 7 and newer, don't map traditional encodings to UTF-8. Reported by Vincent Lefevre at . 2008-11-10 Ingo Weinhold * config.charset: Treat Haiku like BeOS. 2009-01-16 Bruno Haible * Makefile.in (install-strip): New target. Reported by Alon Bar-Lev . 2008-04-13 Bruno Haible * localcharset.c (OS2): Don't redefine if already defined. Reported by Elbert Pol . 2007-11-14 Bruno Haible * config.charset: Update for OpenBSD 4.1. Reported and helped by Ben Pfaff . 2006-10-31 Bruno Haible Update from GNU gettext. 2006-09-14 Bruno Haible * lib/relocatable.c: Likewise. 2006-10-17 Paul Eggert * localcharset.c: Do not check HAVE_SETLOCALE. 2006-09-14 Bruno Haible * localcharset.c: Include unconditionally. 2006-08-29 Bruno Haible * localcharset.c: Include configmake.h in order to get LIBDIR defined. 2006-07-29 Bruno Haible * localcharset.c: Assume , , exist. 2006-07-25 Bruno Haible * Makefile.msvc: Remove file. 2006-07-25 Bruno Haible * Makefile.vms: Remove file. 2006-07-23 Bruno Haible * Makefile.in (libcharset.la): Use the CFLAGS during linking. Needed because the CFLAGS can e.g. trigger profiling. Reported by Russell Aspinwall . 2006-07-14 Bruno Haible * Makefile.in (clean): Remove also *.stackdump. 2006-06-17 Bruno Haible * config.charset: Update for NetBSD 3.0. 2006-05-17 Bruno Haible Cygwin portability. * localcharset.c (WIN32_NATIVE): Renamed from WIN32. 2006-05-16 Bruno Haible * localcharset.c [CYGWIN]: Include . (get_charset_aliases): For Cygwin, return the same CPxxx aliases list as under WIN32. (locale_charset) [CYGWIN]: Try to retrieve the encoding from the environment variables. Fall back to GetACP(). 2006-04-05 Bruno Haible * config.charset: Update Juan Manuel Guerrero's address. 2006-01-10 Bruno Haible * localcharset.c: Assume ANSI C. Fixes a gcc warning. Reported by Werner Lemberg . 2005-12-04 Bruno Haible Cygwin portability. * relocatable.c: Include also on Cygwin. (DllMain): Add support for Cygwin. (get_shared_library_fullname): Update. 2005-07-24 Bruno Haible Tidy up exported symbols. * Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@. (DEFS): Also define BUILDING_LIBCHARSET and BUILDING_DLL. * relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]: Define to the gcc visibility attribute. 2005-07-02 Bruno Haible * localcharset.c (get_charset_aliases) [WIN32]: Add CP65001 and others. Reported by via Alain Bench . 2005-03-22 Bruno Haible * Makefile.in (mkinstalldirs): Update. 2005-01-06 Bruno Haible * Makefile.msvc (CFLAGS): Define also INSTALLPREFIX. * Makefile.vms (DEFS): Likewise. Reported by Troels Walsted Hansen . 2004-09-01 Bruno Haible * config.charset: Add support for Darwin 7. 2004-04-28 Bruno Haible * localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now accepts Windows pathnames. 2004-04-23 Bruno Haible * localcharset.c (get_charset_aliases): Allow the CHARSETALIASDIR environment variable to override LIBDIR. Suggested by Matthias Clasen . 2004-04-20 Jim Meyering Bruno Haible * localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak memory when realloc fails. 2004-01-20 Bruno Haible Upgrade from gettext-0.14. 2003-10-09 Bruno Haible * relocatable.c: Include xalloc.h instead of xmalloc.h. 2003-08-24 Bruno Haible * relocatable.h: Make this file includable in C++ mode: add extern "C". 2003-08-01 Bruno Haible * relocatable.c (find_shared_library_fullname): Disable the code on Linux/libc5. Reported by Alain Guibert . 2003-06-27 Bruno Haible Avoid use of *_unlocked functions on Solaris 2.5.1. * localcharset.c: Test HAVE_DECL_GETC_UNLOCKED, not HAVE_GETC_UNLOCKED. Reported by Eric Botcazou . 2003-06-22 Bruno Haible * relocatable.c (compute_curr_prefix): Comment out this function in the case when it is not used. Reported by Pavel Roskin . 2004-01-21 Bruno Haible Upgrade from gettext-0.14. 2004-01-21 Bruno Haible * config.charset: Add support for MacOS X (Darwin). 2003-12-02 Bruno Haible * config.charset: Treat the new country name CS like the old country name YU. 2003-08-20 Bruno Haible * config.charset (linux-gnulibc1*): Change hr_HR, ro_RO to ISO-8859-2. Reported by Alain Guibert . 2003-08-14 Bruno Haible * config.charset: Add support for Linux libc5. Based on data from Alain Guibert . 2003-06-27 Bruno Haible Avoid use of *_unlocked functions on Solaris 2.5.1. * localcharset.c: Test HAVE_DECL_GETC_UNLOCKED, not HAVE_GETC_UNLOCKED. Reported by Eric Botcazou . 2003-08-20 Bruno Haible * config.charset (linux-gnulibc1*): Change hr_HR, ro_RO to ISO-8859-2. Reported by Alain Guibert . 2003-08-14 Bruno Haible * config.charset: Add support for Linux libc5. Based on data from Alain Guibert . 2003-08-01 Bruno Haible * relocatable.c (find_shared_library_fullname): Disable the code on Linux/libc5. Reported by Alain Guibert . 2003-06-22 Bruno Haible Portability to mingw32. * relocatable.c [WIN32]: Include . Reported by Jeff Bonggren . 2003-06-22 Bruno Haible * relocatable.c (compute_curr_prefix): Comment out this function in the case when it is not used. Reported by Pavel Roskin . 2003-06-07 Bruno Haible Support for relocatable data files even on VMS. * Makefile.vms (bindir): New variable. (DEFS): Add flags for relocatability. Reported by Jouk Jansen . 2003-06-07 Bruno Haible Support for relocatable data files even on Woe32. * Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables. (PICFLAGS): Also define PIC. Define BUILDING_* flags here. (CFLAGS): ... not here. Add flags for relocatability. 2003-05-18 Bruno Haible * Makefile.msvc (DEBUGFLAGS): New variable. (charset.lib): Use it. 2003-05-07 Bruno Haible * Makefile.vms: New file. 2003-04-12 Bruno Haible * lib/localcharset.c (get_charset_aliases): Add special case for VMS. 2003-04-05 Bruno Haible Support for relocatable installation. * relocatable.h: New file, from GNU gettext. * relocatable.c: New file, from GNU gettext. * localcharset.c: Update from GNU gettext. 2003-02-28 Bruno Haible * localcharset.c: Include relocatable.h. (get_charset_aliases): Relocate LIBDIR value. * localcharset.c: Drop C linkage declaration. * Makefile.in (DEFS): New variable. (SOURCES): Add relocatable.c. (OBJECTS): Add relocatable.lo. (localcharset.lo): Use $(DEFS). (relocatable.lo): New rule. * Makefile.msvc (CFLAGS): Remove $(PICFLAGS). (INCLUDES): Simplify. (SOURCES): Remove variable. (OBJECTS): Add relocatable.obj. (localcharset.obj): Add $(PICFLAGS). (relocatable.obj): New rule. 2003-04-05 Bruno Haible * Makefile.msvc (PREFIX): New variable. (prefix): Use it. (clean): Drop Unix specific removal. 2003-03-17 Bruno Haible Improved MSVC support. * Makefile.msvc (prefix): Use less Unixy value. (local_prefix): Remove variable. (libdir): Use backslashes. (bindir): New variable. (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values. (RESOURCES): Enable charset.res. (charset.lib): Set the target library name explicitly. (charset.res): New rule. (install, installdirs, uninstall): New rules. Rename libcharset.h to localcharset.h. * localcharset.c: Include localcharset.h. * localcharset.h: Remove file. * Makefile.in (INCLUDES): Add -I../include. * Makefile.msvc (INCLUDES): Add -I../include. 2003-01-29 Bruno Haible * config.charset: Add an alias for CP1251 on Solaris. Reported by Hidetoshi Tajima . 2003-01-12 Bruno Haible * localcharset.h: New file. * localcharset.c: Include it. 2003-01-01 Bruno Haible * Makefile.in (mkinstalldirs): Renamed from MKINSTALLDIRS. (install-lib, install, installdirs): Use it. 2002-05-09 Bruno Haible * config.charset: Update for newest glibc. Add canonical names ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS. 2002-05-09 Bruno Haible * localcharset.c (get_charset_aliases): Add more Windows specific aliases. 2002-05-08 Owen Taylor * config.charset: A few additions for Solaris. 2002-02-15 Bruno Haible * config.charset [msdosdjgpp]: For Russian, use CP866. 2002-02-11 Bruno Haible * config.charset: Add support for NetBSD. 2002-01-10 Andrew Zabolotny Bruno Haible * localcharset.c: Rework OS/2 support. * config.charset: Add OS/2 support. 2001-12-21 Bruno Haible * localcharset.c (ISSLASH): Provide definition for DOS-like systems. 2001-12-15 Bruno Haible * localcharset.c: Add OS/2 support. 2001-12-05 Bruno Haible * localcharset.c (locale_charset): Don't return an empty string. 2001-10-23 Bruno Haible * config.charset: msdos in uk_UA uses CP1125. 2001-08-05 Bruno Haible Make it possible to build libcharset with CC=gcc CFLAGS="-x c++". * localcharset.c (locale_charset): Declare as extern "C". (get_charset_aliases): Cast malloc and realloc results to 'char *'. 2001-06-27 Bruno Haible * Makefile.in (clean): Remove also *.o.lock, left there by libtool on IRIX. 2001-06-25 Bruno Haible * Makefile.in (localcharset.lo): Mention $(INCLUDES) before $(CFLAGS) and $(CPPFLAGS). * Makefile.msvc (localcharset.obj): Likewise. 2001-06-24 Bruno Haible * config.charset: Change canonical name of BIG5HKSCS to BIG5-HKSCS. Change canonical name of SJIS to SHIFT_JIS. 2001-05-06 Bruno Haible * Makefile.msvc (charset.lib): Allow the 'del' command to fail. 2001-05-06 Bruno Haible * Makefile.in (CPPFLAGS, LDFLAGS): New variables. (libcharset.la): Use LDFLAGS. (localcharset.lo): Use CPPFLAGS. 2001-04-30 Bruno Haible Silence "gcc -Wall -Wwrite-strings" warnings. * localcharset.c (charset_aliases): Change type to 'const char *'. (get_charset_aliases): Change type of 'cp' to 'const char *'. 2001-03-10 Bruno Haible * localcharset.c (locale_charset): Allow wildcard syntax. Also resolve alias if codeset is empty. * config.charset (BeOS): Use wildcard syntax. * Makefile.in (libcharset.la): Pass flag -no-undefined. Needed on platforms like BeOS. * Makefile.in (RM): New variable. 2001-01-05 Bruno Haible * localcharset.c (volatile): Define to empty if not using ANSI C. 2001-03-05 Bruno Haible * config.charset: Update for OSF/1 5.1. 2001-03-01 Bruno Haible * config.charset: For DOS/DJGPP, add CP775. 2001-02-24 Bruno Haible * config.charset: Add support for DOS/DJGPP. 2001-02-25 Bruno Haible * localcharset.c (locale_charset): Don't return NULL. 2001-02-24 Bruno Haible * localcharset.c (locale_charset): Don't use setlocale(LC_CTYPE,NULL). 2001-01-30 Bruno Haible * config.charset: Update for FreeBSD 4.2. 2000-12-19 Jim Meyering * localcharset.c: Improve WIN32 macrology. (locale_charset): Increase size of buffer. 2000-12-18 Bruno Haible * config.charset: Add support for BeOS. 2000-12-12 Bruno Haible * Makefile.in (ref-add.sed, ref-del.sed): Don't use $<, not understood by Solaris "make". Reported by Toshimitsu Fujiwara. 2000-12-08 Bruno Haible * Makefile.in (exec_prefix): Use configure's --exec-prefix argument. 2000-12-02 Bruno Haible * Makefile.msvc: Replace STATIC with its opposite flag, DLL. 2000-11-21 Bruno Haible * Makefile.msvc (MFLAGS): New variable. (CFLAGS, charset.lib): Use it. (INCLUDES): Use "..", not "..\include". 2000-10-31 Bruno Haible * Makefile.msvc: New file. 2000-10-31 Bruno Haible * config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB, VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256, CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312. * localcharset.c (locale_charset): Add support for Win32.