zopencommunity / perlport

Port of perl to z/OS
Apache License 2.0
6 stars 3 forks source link

Unable to build Perl using unprivileged id because can't tag /usr/include/errno.h as EBCDIC #21

Closed MikeFultonDev closed 2 years ago

MikeFultonDev commented 2 years ago

The code right now tags untagged files being read as 1047. Instead, we need to copy errno.h, then tag it (longer term, perhaps get the OS to tag their header files)

MikeFultonDev commented 2 years ago

After making a change to copy the errno.h header file to a local file and then tagging it as IBM-1047, I get the following results when running on a restricted general user account:

Failed 29 tests out of 2477, 98.83% okay.
    ../cpan/File-Temp/t/object.t
    ../cpan/File-Temp/t/security.t
    ../cpan/File-Temp/t/tempfile.t
    ../cpan/IO-Compress/t/050interop-gzip.t
    ../cpan/IPC-Cmd/t/01_IPC-Cmd.t
    ../cpan/IPC-Cmd/t/03_run-forked.t
    ../cpan/Socket/t/getnameinfo.t
    ../cpan/Test-Harness/t/harness.t
    ../cpan/Test-Harness/t/source_handler.t
    ../cpan/libnet/t/datasend.t
    ../cpan/libnet/t/ftp.t
    ../cpan/libnet/t/nntp.t
    ../cpan/libnet/t/nntp_ipv6.t
    ../cpan/libnet/t/nntp_ssl.t
    ../cpan/libnet/t/pop3_ipv6.t
    ../cpan/libnet/t/pop3_ssl.t
    ../cpan/libnet/t/require.t
    ../cpan/libnet/t/smtp.t
    ../cpan/libnet/t/smtp_ipv6.t
    ../cpan/libnet/t/smtp_ssl.t
    ../cpan/podlators/t/general/basic.t
    ../cpan/version/t/07locale.t
    ../dist/ExtUtils-CBuilder/t/04-base.t
    ../dist/IO/t/io_pipe.t
    ../lib/ExtUtils/t/Embed.t
    lib/croak.t
    op/magic.t
    porting/pod_rules.t
    porting/podcheck.t
MikeFultonDev commented 2 years ago

Oddly, I get a different number of failures running under IBMUSER (an account with extended privileges):

Failed 33 tests out of 2479, 98.67% okay.
    ../cpan/File-Temp/t/object.t
    ../cpan/File-Temp/t/security.t
    ../cpan/File-Temp/t/tempfile.t
    ../cpan/IO-Compress/t/050interop-gzip.t
    ../cpan/IPC-Cmd/t/01_IPC-Cmd.t
    ../cpan/IPC-Cmd/t/03_run-forked.t
    ../cpan/Socket/t/getnameinfo.t
    ../cpan/Test-Harness/t/harness.t
    ../cpan/Test-Harness/t/source_handler.t
    ../cpan/libnet/t/datasend.t
    ../cpan/libnet/t/ftp.t
    ../cpan/libnet/t/nntp.t
    ../cpan/libnet/t/nntp_ipv6.t
    ../cpan/libnet/t/nntp_ssl.t
    ../cpan/libnet/t/pop3_ipv6.t
    ../cpan/libnet/t/pop3_ssl.t
    ../cpan/libnet/t/require.t
    ../cpan/libnet/t/smtp.t
    ../cpan/libnet/t/smtp_ipv6.t
    ../cpan/libnet/t/smtp_ssl.t
    ../cpan/podlators/t/general/basic.t
    ../cpan/version/t/07locale.t
    ../dist/ExtUtils-CBuilder/t/04-base.t
    ../dist/IO/t/io_pipe.t
    ../dist/Net-Ping/t/520_icmp_ttl.t
    ../ext/POSIX/t/mb.t
    ../lib/ExtUtils/t/Embed.t
    ../lib/locale.t
    lib/croak.t
    op/fork.t
        op/magic.t
        porting/pod_rules.t
        porting/podcheck.t

Additional failures for IBMUSER are:

>   ../dist/Net-Ping/t/520_icmp_ttl.t
>   ../ext/POSIX/t/mb.t
>   ../lib/locale.t
>   op/fork.t
MikeFultonDev commented 2 years ago

Results running 8 builds: blead.64.dynamic.ascii Summary: Failed 33 tests out of 2479, 98.67% okay. blead.64.dynamic.ebcdic Summary: Failed 98 tests out of 1949, 94.97% okay. blead.64.static.ascii Summary: Failed 44 tests out of 2357, 98.13% okay. blead.64.static.ebcdic Summary: Failed 98 tests out of 1829, 94.64% okay. blead.31.dynamic.ascii Summary: Failed 36 tests out of 2475, 98.55% okay. blead.31.dynamic.ebcdic Summary: Failed 98 tests out of 1945, 94.96% okay. blead.31.static.ascii Summary: Failed 47 tests out of 2353, 98.00% okay. blead.31.static.ebcdic Summary: Failed 100 tests out of 1825, 94.52% okay.

MikeFultonDev commented 2 years ago

These are the non cpan failures for EBCDIC dynamic 64-bit:

    ../dist/ExtUtils-ParseXS/t/002-more.t
    ../dist/Net-Ping/t/520_icmp_ttl.t
    ../dist/Unicode-Normalize/t/fcdc.t
    ../dist/Unicode-Normalize/t/func.t
    ../dist/Unicode-Normalize/t/norm.t
    ../dist/Unicode-Normalize/t/split.t
    ../dist/Unicode-Normalize/t/test.t
    comp/require.t
    lib/croak.t
    porting/podcheck.t
    porting/readme.t