On 04/15/2014 03:47 AM, Yaroslav Kuzmin wrote:
The approach use in 5.19 is to get miniperl compiled, and then use that to regen each file for the current platform, before doing the full Perl compile.Then it turns looping : not correct *.h file -> not correct miniperl -> not correct regen *.h file for EBCIDC system. bad situation. Should at once *.h files create based on system EBCDIC. using #ifdef EBCDIC ... #else. Of course you need to change the scripts perl in catalog regen, to crerate correctly *.h file.
I have now pushed a branch http://perl5.git.perl.org/perl.git/shortlog/refs/heads/khw/ebcdicthat has all the header files compile correctly (I hope) for the platform being run on. It is based on current blead, 5.19.12, and I expect it will give >90% pass rate of the tests it performs, if the ASCII UTF-8 files are properly converted to UTF-EBCDIC. Attached is a perl script that does that translation.
------------------------------------------------------------------------ Yaroslav Kuzmin Developer C/C++ ,z/OS , Linux 3 Zhukovskiy Street · Miass, Chelyabinsk region 456318 · Russia Tel: +7.922.2.38.33.38 Email: [email protected] Web: www.rocketsoftware.com ________________________________________ From: Karl Williamson <[email protected]> Sent: 15 April 2014 9:08 To: Yaroslav Kuzmin; demerphq; [email protected] Cc: [email protected]; [email protected]; Perl5 Porters Subject: Re: НА: Fwd: Re: USSP-37: Info Request for Perl Fwd: EBCDIC support is onthe chopping block On 04/14/2014 07:08 AM, Yaroslav Kuzmin wrote:so file must be created to work correctly in ASCII and EBCDIC system.I'm having trouble following who said what in this discussion and what if anything I'm being asked. So I hope the following helps. charclass_invlists.h is one of 4 files that need to be modified depending on the local platform's character set. The others are l1_char_class_tab.h regcharclass.h and unicode_constants.h. All are regen'd by scripts in the regen directory. Thus it is wrong to patch these directly. Any such changes will be lost by the next regen, as the comments at the top of each file say. Also, there are 4 versions of each file, one for ASCII, and one for each of the three EBCDIC code pages that Perl supports. Using #ifdef EBCDIC ... #else only gets two potential versions. The approach use in 5.19 is to get miniperl compiled, and then use that to regen each file for the current platform, before doing the full Perl compile. The git branch mentioned has the versions of each file suitable for 1047, though there are bugs in regcharclass.h concerning multi-char folds.------------------------------------------------------------------------ Yaroslav Kuzmin Developer C/C++ ,z/OS , Linux 3 Zhukovskiy Street · Miass, Chelyabinsk region 456318 · Russia Tel: +7.922.2.38.33.38 Email: [email protected] Web: www.rocketsoftware.com ________________________________________ From: [email protected] <[email protected]> on behalf of Jarkko Hietaniemi <[email protected]> Sent: 11 April 2014 18:41 To: Yaroslav Kuzmin; demerphq Cc: [email protected]; [email protected]; Perl5 Porters Subject: Re: НА: Fwd: Re: USSP-37: Info Request for Perl Fwd: EBCDIC support is onthe chopping block On Friday-201404-11, 7:29, Yaroslav Kuzmin wrote:miniperl not correctly process scripts. When analyzing found the incorrect processing of input data. Two possible solutions the problem first: convert input data EBCDIC<>ASCII. Converting input data is using macros NATIVE_TO_UTF, UTF_TO_NATIVE and array PL_e2utf , PL_utf2e in file utfebcdic.h But the converting is strongly scattered by the source code in one place and had a double converting EBCDIC > EBCDIC . second: Changed array verification of input data in file charclass_invlists.h.Can you share the changes you had to make, e.g. just simply "diff -u old new" (or diff -c, depending on what diff tool you have available).------------------------------------------------------------------------ Yaroslav Kuzmin Developer C/C++ ,z/OS , Linux 3 Zhukovskiy Street · Miass, Chelyabinsk region 456318 · Russia Tel: +7.922.2.38.33.38 Email: [email protected] Web: www.rocketsoftware.com ________________________________________ From: [email protected] <[email protected]> on behalf of Jarkko Hietaniemi <[email protected]> Sent: 10 April 2014 18:12 To: Yaroslav Kuzmin; demerphq Cc: [email protected]; [email protected]; Perl5 Porters Subject: Re: НА: Fwd: Re: USSP-37: Info Request for Perl Fwd: EBCDIC support is onthe chopping block On Thursday-201404-10, 8:05, Jarkko Hietaniemi wrote:I edit the file charclass_invlist.h manuallyWhile you e.g. think about setting up an automated periodic build, one simple thing to get the dialogue started would be that you show (email to perl5-porters) these diffs you had to make for this file. (And detail why exactly you had to do the diffs... to be able to build at all? or to get more tests passing?)
translate_to_native.pl
Description: Perl program
