From owner-p4-projects@FreeBSD.ORG Fri Jan 22 19:35:01 2010 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 57B70106568D; Fri, 22 Jan 2010 19:35:01 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1ABE3106566B for ; Fri, 22 Jan 2010 19:35:01 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 05C168FC1B for ; Fri, 22 Jan 2010 19:35:01 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id o0MJZ1Dk098986 for ; Fri, 22 Jan 2010 19:35:01 GMT (envelope-from gabor@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id o0MJY3kq098905 for perforce@freebsd.org; Fri, 22 Jan 2010 19:34:03 GMT (envelope-from gabor@freebsd.org) Date: Fri, 22 Jan 2010 19:34:03 GMT Message-Id: <201001221934.o0MJY3kq098905@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@freebsd.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 173533 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Jan 2010 19:35:01 -0000 http://p4web.freebsd.org/chv.cgi?CH=173533 Change 173533 by gabor@gabor_aspire on 2010/01/22 19:33:14 MFHg: LIBRARY ===================================================================== - Support GNU-style alias listing via iconvlist(), while providing the existing interfaces for unsorted listings - Fix a corrupted alias entry - Improved transliteration for the following encodings: HP-ROMAN8 RISCOS-LATIN1 TCVN5712-1 TDS565 KZ-1048 MULELAO-1 NEXTSTEP GEORGIAN-ACADEMY GEORGIAN-PS CP1256 CP1257 CP1258 CP1046 CP1124 CP1125 CP1129 CP1133 CP1161 CP1162 CP1163 CP1250 CP1252 CP1254 CP1255 CP864 CP865 CP869 CP874 CP922 CP856 CP857 CP858 CP860 CP861 CP862 CP863 CP437 CP737 CP775 CP850 CP852 CP853 CP855 JIS_X0201 JIS_X0208-1990 ATARIST KOI8-T - Fix //IGNORE implementation, which is actually the same as __ICONV_F_HIDE_INVALID BIN ===================================================================== - iconv: add long options - iconv: track file position with GNU hooks - iconv: use GNU-style listing and fallbacks instead of __iconv() so that it can be compiled with the GNU library - iconv: add template for substitution options, which have not been implemented yet - iconv: partial style(9) - iconv.h: provide more alternative libiconv*() names for GNU compatibility - iconv.h: swap the aliasing order so that programs can be compiled with this header for GNU libiconv; this might be handy for ports - iconv.h: increase iconv_allocation_t size to cover the space needed for GNU libiconv DOCS ===================================================================== - Document __iconv.3 - Document iconv_open_into.3 - Add MLINKS for __iconv.3 - Add MLINKS for iconv_open_into.3 REGRESSION-TES ===================================================================== - gnu/posix: show error codes on fail - tablegen: add -i and -t switches to control //IGNORE and //TRANSLIT - tablegen: simplify code and provide niced output - tablegen: add support for generating tables between any two encodings - tablegen: improve cmp.sh output Affected files ... .. //depot/projects/soc2009/gabor_iconv/extracted/include/iconv.h#4 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/Makefile#9 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_esdb.c#7 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_none.c#7 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_stdenc_fallbacks.c#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_stdenc_fallbacks.h#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_stdenc_template.h#7 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/iconv.3#7 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/iconv.c#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv_modules/iconv_std/citrus_iconv_std.c#9 edit .. //depot/projects/soc2009/gabor_iconv/extracted/share/i18n/esdb/Makefile.part#8 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/Makefile#7 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/gnu/gnu.c#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/posix/posix.c#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ARMSCII-8#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ARMSCII-8-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ASCII#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ASCII-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ATARIST#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ATARIST-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/BIG5#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/BIG5-2003#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/BIG5-2003-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/BIG5-HKSCS#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/BIG5-HKSCS-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/BIG5-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/C99#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/C99-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1046#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1046-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1124#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1124-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1125#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1125-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1129#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1129-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1131#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1131-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1133#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1133-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1161#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1161-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1162#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1162-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1163#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1163-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1250#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1250-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1251#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1251-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1252#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1252-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1253#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1253-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1254#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1254-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1255#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1255-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1256#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1256-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1257#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1257-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1258#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP1258-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP437#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP437-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP737#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP737-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP775#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP775-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP850#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP850-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP852#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP852-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP853#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP853-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP855#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP855-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP856#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP856-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP857#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP857-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP858#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP858-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP860#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP860-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP861#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP861-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP862#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP862-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP863#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP863-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP864#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP864-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP865#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP865-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP866#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP866-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP869#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP869-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP874#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP874-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP922#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP922-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP932#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP932-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP936#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP936-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP943#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP943-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP949#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP949-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP950#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/CP950-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/DEC-HANYU#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/DEC-HANYU-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-CN#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-CN-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-JIS-2004#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-JIS-2004-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-JP#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-JP-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-KR#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-KR-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-TW#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/EUC-TW-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GB18030#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GB18030-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GB2312#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GB2312-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GBK#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GBK-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GEORGIAN-ACADEMY#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GEORGIAN-ACADEMY-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GEORGIAN-PS#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/GEORGIAN-PS-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/HP-ROMAN8#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/HP-ROMAN8-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/HZ#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/HZ-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-CN#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-CN-EXT#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-CN-EXT-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-CN-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-JP#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-JP-1#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-JP-1-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-JP-2#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-JP-2-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-JP-2004#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-JP-2004-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-JP-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-KR#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-2022-KR-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-IR-14#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-IR-14-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-IR-165#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-IR-165-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-IR-57#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO-IR-57-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-1#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-1-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-10#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-10-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-11#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-11-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-13#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-13-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-14#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-14-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-15#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-15-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-16#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-16-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-2#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-2-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-3#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-3-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-4#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-4-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-5#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-5-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-6#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-6-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-7#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-7-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-8#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-8-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-9#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ISO8859-9-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/JAVA#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/JAVA-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/JIS_X0201#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/JIS_X0201-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/JIS_X0208-1990#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/JIS_X0208-1990-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/JOHAB#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/JOHAB-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KOI8-R#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KOI8-R-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KOI8-RU#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KOI8-RU-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KOI8-T#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KOI8-T-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KOI8-U#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KOI8-U-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KZ-1048#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/KZ-1048-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/MULELAO-1#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/MULELAO-1-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/NEXTSTEP#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/NEXTSTEP-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/PT154#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/PT154-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/RISCOS-LATIN1#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/RISCOS-LATIN1-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/SHIFT_JIS#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/SHIFT_JIS-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/TCVN5712-1#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/TCVN5712-1-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/TDS565#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/TDS565-rev#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/VISCII#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/VISCII-rev#3 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/tablegen/cmp.sh#2 edit .. //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/tablegen/tablegen.c#5 edit .. //depot/projects/soc2009/gabor_iconv/extracted/usr.bin/iconv/iconv.1#8 edit .. //depot/projects/soc2009/gabor_iconv/extracted/usr.bin/iconv/iconv.c#8 edit Differences ... ==== //depot/projects/soc2009/gabor_iconv/extracted/include/iconv.h#4 (text+ko) ==== @@ -37,6 +37,11 @@ #include #include +#define iconv_open libiconv_open +#define iconv_close libiconv_close +#define iconv libiconv +#define iconv_t libiconv_t + #ifdef _BSD_SIZE_T_ typedef _BSD_SIZE_T_ size_t; #undef _BSD_SIZE_T_ @@ -63,19 +68,16 @@ /* * GNU interfaces for iconv */ +#define iconv_open_into libiconv_open_into +#define iconvctl libiconvctl +#define iconvlist libiconvlist -/* Historical versions */ -#define libiconv_open iconv_open -#define libiconv_open_into iconv_open_into -#define libiconv_close iconv_close -#define libiconv iconv - /* We have iconvctl() */ #define _LIBICONV_VERSION 0x0108 extern int _libiconv_version; typedef struct { - void *spaceholder[8]; + void *spaceholder[64]; } iconv_allocation_t; int iconv_open_into(const char *, const char *, iconv_allocation_t *); ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/Makefile#9 (text+ko) ==== @@ -8,7 +8,9 @@ iconvlist.3 \ __iconv_get_list.3 MLINKS= iconv.3 iconv_open.3 \ + iconv.3 iconv_open_into.3 \ iconv.3 iconv_close.3 \ + iconv.3 __iconv.3 \ __iconv_get_list.3 __iconv_free_list.3 SRCS= citrus_bcs.c \ citrus_bcs_strtol.c \ ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_esdb.c#7 (text+ko) ==== @@ -255,7 +255,7 @@ * get esdb entries. */ int -_citrus_esdb_get_list(char ***rlist, size_t *rnum, bool l) +_citrus_esdb_get_list(char ***rlist, size_t *rnum, bool sorted) { int ret; struct _region key, data; @@ -292,17 +292,19 @@ /* get alias entries */ while ((ret = _lookup_seq_next(cla, &key, &data)) == 0) { - if (!l) - snprintf(buf, sizeof(buf), "%.*s", - (int)_region_size(&key), - (const char *)_region_head(&key)); - else + if (sorted) snprintf(buf, sizeof(buf), "%.*s/%.*s", (int)_region_size(&data), (const char *)_region_head(&data), (int)_region_size(&key), (const char *)_region_head(&key)); - _bcs_convert_to_lower(buf); + else + snprintf(buf, sizeof(buf), "%.*s/%.*s", + (int)_region_size(&data), + (const char *)_region_head(&data), + (int)_region_size(&key), + (const char *)_region_head(&key)); + _bcs_convert_to_upper(buf); list[num] = strdup(buf); if (list[num] == NULL) { ret = errno; @@ -314,12 +316,12 @@ goto quit3; /* get dir entries */ while ((ret = _lookup_seq_next(cld, &key, &data)) == 0) { - /* check duplicated entry */ - if (!l) + if (!sorted) { snprintf(buf, sizeof(buf), "%.*s", - (int)_region_size(&key), - (const char *)_region_head(&key)); - else { + (int)_region_size(&key), + (const char *)_region_head(&key)); + } else { + /* check duplicated entry */ char buf1[PATH_MAX]; char *p; @@ -335,7 +337,7 @@ (int)_region_size(&key), (const char *)_region_head(&key)); } - _bcs_convert_to_lower(buf); + _bcs_convert_to_upper(buf); ret = _lookup_seq_lookup(cla, buf, NULL); if (ret) { if (ret != ENOENT) @@ -353,6 +355,8 @@ goto quit3; ret = 0; + /* XXX: why reallocing the list space posteriorly? + shouldn't be done earlier? */ q = realloc(list, num * sizeof(char *)); if (!q) { ret = ENOMEM; ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_none.c#7 (text+ko) ==== @@ -169,7 +169,6 @@ return (0); uc_to_mb_fail: -/* XXX: currently unused if ((fbs != NULL) && (fbs->uc_to_mb_fallback != NULL)) { struct uc_to_mb_data convdata; @@ -180,7 +179,6 @@ fbs->uc_to_mb_fallback((unsigned int)idx, uc_to_mb_replacement, (void *)&convdata, fbs->data); } -*/ return (ret); } @@ -243,7 +241,6 @@ return (0); wc_to_mb_fail: -/* XXX: currently unused if ((fbs != NULL) && (fbs->wc_to_mb_fallback != NULL)) { struct wc_to_mb_data convdata; char *ss = s; @@ -258,7 +255,6 @@ fbs->wc_to_mb_fallback(wc, wc_to_mb_replacement, (void *)&convdata, fbs->data); } -*/ return (ret); } ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_stdenc_fallbacks.c#2 (text+ko) ==== @@ -30,8 +30,6 @@ #include "citrus_stdenc_fallbacks.h" -/* XXX: these actually never used in latest GNU iconv but they might be - a future development option. void wc_to_mb_replacement(const char *buf __unused, size_t len __unused, void *cb_arg __unused) { @@ -73,7 +71,6 @@ *convdata->outbytesleft -= len; *convdata->err = 0; } -*/ void mb_to_uc_replacement(const unsigned int *buf __unused, size_t len __unused, void *cb_arg __unused) ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_stdenc_fallbacks.h#2 (text+ko) ==== @@ -35,13 +35,9 @@ #include "citrus_stdenc.h" #include "citrus_stdenc_local.h" -/* XXX: these actually never used in latest GNU iconv but they might be - a future development option. void wc_to_mb_replacement(const char *, size_t, void *); void mb_to_wc_replacement(const wchar_t *, size_t, void *); void uc_to_mb_replacement(const char *, size_t, void *); -*/ - void mb_to_uc_replacement(const unsigned int *, size_t, void *); struct mb_to_uc_data { @@ -53,8 +49,6 @@ _citrus_stdenc_mbtocs_t mbtouc; }; -/* XXX: these actually never used in latest GNU iconv but they might be - a future development option. struct uc_to_mb_data { char **outbuf; size_t *outbytesleft; @@ -75,5 +69,4 @@ size_t *outbytesleft; int *err; }; -*/ #endif ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/citrus_stdenc_template.h#7 (text+ko) ==== @@ -166,7 +166,6 @@ if (ret == 0) ret = _FUNCNAME(wcrtomb_priv)(_CE_TO_EI(ce), s, n, wc, _TO_STATE(ps), nresult); -/* XXX: currently unused if (ret != 0) if ((fbs != NULL) && (fbs->uc_to_mb_fallback != NULL)) { struct uc_to_mb_data convdata; @@ -178,7 +177,6 @@ fbs->uc_to_mb_fallback((unsigned int)idx, uc_to_mb_replacement, (void *)&convdata, fbs->data); } -*/ return (ret); } @@ -194,7 +192,6 @@ ret = _FUNCNAME(mbrtowc_priv)(_CE_TO_EI(ce), wc, s, n, _TO_STATE(ps), nresult); -/* XXX: currently unused if (ret != 0) { if ((fbs != NULL) && (fbs->mb_to_wc_fallback != NULL)) { struct mb_to_wc_data convdata; @@ -208,7 +205,6 @@ (void *)&convdata, fbs->data); } } else -*/ if ((hooks != NULL) && (hooks->wc_hook != NULL)) hooks->wc_hook(*wc, hooks->data); return (ret); @@ -225,7 +221,6 @@ ret = _FUNCNAME(wcrtomb_priv)(_CE_TO_EI(ce), s, n, wc, _TO_STATE(ps), nresult); -/* XXX: currently unused if (ret != 0) if ((fbs != NULL) && (fbs->wc_to_mb_fallback != NULL)) { struct wc_to_mb_data convdata; @@ -241,7 +236,6 @@ fbs->wc_to_mb_fallback(wc, wc_to_mb_replacement, (void *)&convdata, fbs->data); } -*/ return (ret); } ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/iconv.3#7 (text+ko) ==== @@ -1,6 +1,7 @@ .\" $NetBSD: iconv.3,v 1.12 2004/08/02 13:38:21 tshiozak Exp $ .\" -.\" Copyright (c)2003 Citrus Project, +.\" Copyright (c) 2003 Citrus Project, +.\" Copyright (c) 2009, 2010 Gabor Kovesdan , .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -24,11 +25,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 1, 2004 +.Dd January 18, 2010 .Dt ICONV 3 .Os .Sh NAME .Nm iconv_open , +.Nm iconv_open_into , .Nm iconv_close , .Nm iconv .Nd codeset conversion functions @@ -39,9 +41,13 @@ .Ft iconv_t .Fn iconv_open "const char *dstname" "const char *srcname" .Ft int +.Fn iconv_open_into "const char *dstname" "const char *srcname" "iconv_allocation_t *ptr" +.Ft int .Fn iconv_close "iconv_t cd" .Ft size_t .Fn iconv "iconv_t cd" "const char ** restrict src" "size_t * restrict srcleft" "char ** restrict dst" "size_t * restrict dstleft" +.Ft size_t +.Fn __iconv "iconv_t cd" "const char ** restrict src" "size_t * restrict srcleft" "char ** restrict dst" "size_t * restrict dstleft" "uint32_t flags" "size_t invalids" .Sh DESCRIPTION The .Fn iconv_open @@ -52,6 +58,24 @@ and returns its descriptor. .Pp The +.Fn iconv_open_into +creates a conversion descriptor on a preallocated space. +The +.Ft iconv_allocation_t +is used as a spaceholder type when allocating such space. +The +.Fa dstname +and +.Fa srcname +arguments are the same as in the case of +.Fn iconv_open . +The +.Fa ptr +argument is a pointer of +.Ft iconv_allocation_t +to the preallocated space. +.Pp +The .Fn iconv_close function closes the specified converter .Fa cd . @@ -118,7 +142,6 @@ .Fn iconv : .Bl -tag -width 0123 .It "src == NULL || *src == NULL" -.\" If the source and/or destination codesets are stateful, .Fn iconv places these into their initial state. @@ -147,6 +170,25 @@ .Dv NULL . In this case, the shift sequence for the destination switching to the initial state is discarded. +.Pp +.El +The +.Fn __iconv +function works just like +.Fn iconv +but if +.Fn iconv +fails, the invalid character count is lost there. +This is a not bug rather a limitation of +.St -p1003.1-2008 , +so +.Fn __iconv +is provided as an alternative but non-standard interface. +It also has a flags argument, where currently the following +flags can be passed: +.Bl -tag -width 0123 +.It __ICONV_F_HIDE_INVALID +Skip invalid characters, instead of returning with an error. .El .Sh RETURN VALUES Upon successful completion of @@ -157,6 +199,13 @@ returns (iconv_t)\-1 and sets errno to indicate the error. .Pp Upon successful completion of +.Fn iconv_open_into , +it returns 0. +Otherwise, +.Fn iconv_open_into +returns \-1, and sets errno to indicate the error. +.Pp +Upon successful completion of .Fn iconv_close , it returns 0. Otherwise, @@ -184,6 +233,16 @@ and .Fa dstname . .El +The +.Fn iconv_open_into +function may cause an error in the following cases: +.Bl -tag -width Er +.It Bq Er EINVAL +There is no converter specified by +.Fa srcname +and +.Fa dstname . +.El .Pp The .Fn iconv_close @@ -222,16 +281,19 @@ .Xr mkcsmapper 1 , .Xr mkesdb 1 .Sh STANDARDS +The .Fn iconv_open , .Fn iconv_close , and .Fn iconv -conform to -.St -p1003.1-2001 . -.Sh BUGS -If -.Fn iconv -is aborted due to the occurrence of some error, -the -.Dq invalid conversion -count mentioned above is unfortunately lost. +functions conform to +.St -p1003.1-2008 . +.Pp +The +.Fn iconv_open_into +function is a GNU-specific extension and it is not part of any standard, +thus its use may break portability. +The +.Fn __iconv +function is an own extension and it is not part of any standard, +thus its use may break portability. ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv/iconv.c#2 (text+ko) ==== @@ -40,9 +40,9 @@ #include "netbsdism.h" #ifdef __weak_alias -__weak_alias(iconv, _iconv) -__weak_alias(iconv_open, _iconv_open) -__weak_alias(iconv_close, _iconv_close) +__weak_alias(libiconv, _iconv) +__weak_alias(libiconv_open, _iconv_open) +__weak_alias(libiconv_close, _iconv_close) #endif #include @@ -108,13 +108,13 @@ } iconv_t -iconv_open(const char *out, const char *in) +libiconv_open(const char *out, const char *in) { return _iconv_open(out, in, NULL); } int -iconv_open_into(const char *out, const char *in, iconv_allocation_t *ptr) +libiconv_open_into(const char *out, const char *in, iconv_allocation_t *ptr) { struct _citrus_iconv *handle = (struct _citrus_iconv *)ptr; @@ -122,7 +122,7 @@ } int -iconv_close(iconv_t handle) +libiconv_close(iconv_t handle) { if (ISBADF(handle)) { errno = EBADF; @@ -135,7 +135,7 @@ } size_t -iconv(iconv_t handle, const char **in, size_t *szin, char **out, size_t *szout) +libiconv(iconv_t handle, const char **in, size_t *szin, char **out, size_t *szout) { int err; size_t ret; @@ -182,11 +182,11 @@ } int -__iconv_get_list(char ***rlist, size_t *rsz, bool l) +__iconv_get_list(char ***rlist, size_t *rsz, bool sorted) { int ret; - ret = _citrus_esdb_get_list(rlist, rsz, l); + ret = _citrus_esdb_get_list(rlist, rsz, sorted); if (ret) { errno = ret; return -1; @@ -204,19 +204,57 @@ /* * GNU-compatibile non-standard interfaces. */ +static int +qsort_helper(const void *first, const void *second) +{ + const char * const *s1 = (const char * const *)first; + const char * const *s2 = (const char * const *)second; + + return (strcmp(*s1, *s2)); +} + void -iconvlist(int (*do_one) (unsigned int, const char * const *, +libiconvlist(int (*do_one) (unsigned int, const char * const *, void *), void *data) { char **list; + char *curkey, *curitem, *slashpos; + char **names; size_t sz; + unsigned int i = 0, j; + const char * const *np; if (__iconv_get_list(&list, &sz, true)) list = NULL; - - const char * const * names = (const char * const *)list; - unsigned int i = sz; - do_one(i, names, data); + qsort((void *)list, sz, sizeof(char *), qsort_helper); + while (i < sz) { + j = 0; + slashpos = strchr(list[i], '/'); + curkey = (char *)malloc(slashpos - list[i] + 2); + names = (char **)malloc(sz * sizeof(char *)); + if ((curkey == NULL) || (names == NULL)) { + __iconv_free_list(list, sz); + return; + } + strlcpy(curkey, list[i], slashpos - list[i] + 1); + names[j++] = strdup(curkey); + for (; (i < sz) && (memcmp(curkey, list[i], strlen(curkey)) == 0); i++) { + slashpos = strchr(list[i], '/'); + curitem = (char *)malloc(strlen(slashpos) + 1); + if (curitem == NULL) { + __iconv_free_list(list, sz); + return; + } + strlcpy(curitem, &slashpos[1], strlen(slashpos) + 1); + if (strcmp(curkey, curitem) == 0) { + continue; + } + names[j++] = strdup(curitem); + } + np = (const char * const *)names; + do_one(j, np, data); + free(names); + } __iconv_free_list(list, sz); } @@ -228,7 +266,7 @@ } int -iconvctl(iconv_t cd, int request, void *argument) +libiconvctl(iconv_t cd, int request, void *argument) { int *i = (int *)argument; struct iconv_hooks *hooks = (struct iconv_hooks *)argument; ==== //depot/projects/soc2009/gabor_iconv/extracted/lib/libiconv_modules/iconv_std/citrus_iconv_std.c#9 (text+ko) ==== @@ -304,8 +304,7 @@ static int /*ARGSUSED*/ do_conv(const struct _citrus_iconv_std_shared *is, - _csid_t *csid, _index_t *idx, - bool discard_ilseq) + _csid_t *csid, _index_t *idx) { _index_t tmpidx; int ret; @@ -327,8 +326,6 @@ case _MAPPER_CONVERT_SRC_MORE: /*FALLTHROUGH*/ case _MAPPER_CONVERT_DST_MORE: - if (discard_ilseq) - continue; case _MAPPER_CONVERT_ILSEQ: return EILSEQ; case _MAPPER_CONVERT_FATAL: @@ -543,12 +540,13 @@ goto err; } /* convert the character */ - ret = do_conv(is, &csid, &idx, cv->cv_shared->ci_discard_ilseq); + ret = do_conv(is, &csid, &idx); if (ret) { if (ret == E_NO_CORRESPONDING_CHAR) { inval++; szrout = 0; - if ((flags&_CITRUS_ICONV_F_HIDE_INVALID)==0 && + if ((((flags & _CITRUS_ICONV_F_HIDE_INVALID) == 0) + && !cv->cv_shared->ci_discard_ilseq) && is->is_use_invalid) { ret = wctombx(&sc->sc_dst_encoding, *out, *outbytes, ==== //depot/projects/soc2009/gabor_iconv/extracted/share/i18n/esdb/Makefile.part#8 (text+ko) ==== @@ -54,7 +54,7 @@ echo "# ${CODE}" > $@ .for i in ${PART:S/:/@/} .for j in ${${CODE}_$i_aliases} - printf "%-32s%s\n" "$j" "${EPREFIX}${i:S/@/:/}" >> $@ + printf "%-48s%s\n" "$j" "${EPREFIX}${i:S/@/:/}" >> $@ .endfor .endfor echo >> $@ ==== //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/Makefile#7 (text+ko) ==== @@ -142,10 +142,10 @@ .endif -GEN_FWD?= ${.CURDIR}/tablegen/tablegen -GEN_REV?= ${.CURDIR}/tablegen/tablegen -r -REF_FWD?= ${.CURDIR}/refgen/refgen -REF_REV?= ${.CURDIR}/refgen/refgen -r +GEN_FWD?= ${.CURDIR}/tablegen/tablegen -t +GEN_REV?= ${.CURDIR}/tablegen/tablegen -tr +REF_FWD?= ${.CURDIR}/refgen/refgen -t +REF_REV?= ${.CURDIR}/refgen/refgen -tr CMP?= ${.CURDIR}/tablegen/cmp.sh make-ref: refgen ==== //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/gnu/gnu.c#3 (text+ko) ==== @@ -271,7 +271,7 @@ { struct iconv_hooks hooks; iconv_t cd; - const char *s = "dwef23fwe"; + const char *s = "Hello World!"; const char **inptr = &s; size_t inbytesleft, outbytesleft = 40; char *outbuf; @@ -284,7 +284,7 @@ outptr = &outbuf; inbytesleft = sizeof(s); - cd = iconv_open("Shift_JIS", "UTF-8"); + cd = iconv_open("SHIFT_JIS", "ASCII"); if (cd == (iconv_t)-1) return (-1); if (iconvctl(cd, ICONV_SET_HOOKS, (void *)&hooks) != 0) @@ -408,8 +408,10 @@ static void test(int (tester) (void), const char * label) { - if (tester()) - printf("%s failed\n", label); + int ret; + + if (ret = tester()) + printf("%s failed (%d)\n", label, ret); else printf("%s succeeded\n", label); } ==== //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/posix/posix.c#3 (text+ko) ==== @@ -244,8 +244,10 @@ static void test(int (tester) (void), const char * label) { - if (tester()) - printf("%s failed\n", label); + int ret; + + if (ret = tester()) + printf("%s failed (%d)\n", label, ret); else printf("%s succeeded\n", label); } ==== //depot/projects/soc2009/gabor_iconv/extracted/tools/test/iconv/ref/ARMSCII-8#2 (text+ko) ==== @@ -1,254 +1,254 @@ -0x00 = 0x00000000 -0x01 = 0x00000001 -0x02 = 0x00000002 -0x03 = 0x00000003 -0x04 = 0x00000004 -0x05 = 0x00000005 -0x06 = 0x00000006 -0x07 = 0x00000007 -0x08 = 0x00000008 -0x09 = 0x00000009 -0x0A = 0x0000000A -0x0B = 0x0000000B -0x0C = 0x0000000C -0x0D = 0x0000000D -0x0E = 0x0000000E -0x0F = 0x0000000F -0x10 = 0x00000010 -0x11 = 0x00000011 -0x12 = 0x00000012 -0x13 = 0x00000013 -0x14 = 0x00000014 -0x15 = 0x00000015 -0x16 = 0x00000016 -0x17 = 0x00000017 -0x18 = 0x00000018 -0x19 = 0x00000019 -0x1A = 0x0000001A -0x1B = 0x0000001B -0x1C = 0x0000001C -0x1D = 0x0000001D -0x1E = 0x0000001E -0x1F = 0x0000001F -0x20 = 0x00000020 -0x21 = 0x00000021 -0x22 = 0x00000022 -0x23 = 0x00000023 >>> TRUNCATED FOR MAIL (1000 lines) <<<