Re: Cygwin smoke

[email protected] (alian)
Newsgroups perl.perl5.porters,perl.daily-build
Message-ID <[email protected]>
>>>>    lib/Test/Harness/t/strap-analyze.....FAILED at test 2
>>>>    lib/warnings.........................FAILED at test 414
>>>>../lib/Test/Harness/t/strap-analyze....dubiousD. FAILED test 2

>>I think I find something ...
>>I find a shortcut to see them:
>>PERLIO=perlio ./perl -Ilib lib/warnings.t
>>...
>>ok 412
>>ok 413
>>...
>>EXPECTED:
>>Insecure dependency in chdir while running with -T switch at - line 5.
>>GOT:
>>Insecure dependency in chdir while running with -T switch at - line 5.
>>not ok 414
>>...
>>
>>It's very strange as perlio is the default for perl-5.9 no ?
> 
> No, "-Duseperlio" is now default for Configure in perl-5.9, and -Uuseperlio is
> unofficially unsupported

It's what I want say. "perlio is the default" == "-Duseperlio is default".

> I've bugged Schwern with such long time ago, but he didn't see where. So if
> you can supply the patch, I guess he would be willing to apply :)

Here a solution for Test-Smoke-1.16_20, who can be found here:

--- mktest.pl.orig      Tue Feb 25 13:08:12 2003
+++ mktest.pl   Tue Feb 25 13:08:59 2003
@@ -334,6 +334,7 @@
              if ( $perlio ne 'locale' ) {
                  $ENV{PERLIO} = $perlio;
                  is_win32 and $ENV{PERLIO} .= " :crlf";
+                $^O eq 'cygwin' and $ENV{PERLIO} .= " :crlf";
                  $ENV{LC_ALL} = 'C' if $force_c_locale;
              } else {
                  $ENV{PERL_UNICODE} = 1;


>>I presume that Cygwin build use a default value of perlio :crlf as make 
 >
> No.
> 
>>test didn't fail in command line without setting this var.

But (with -Duseperlio):
- it work with PERLIO=stdio :crlf or PERLIO=perlio :crlf
- it doesn't work with PERLIO=stdio or PERLIO=perlio
- it work in command line with a simple make test without setting PERLIO.

It's why I say it's the default, else make test in command line will fail.

>>(Why perl didn't set $ENV{PERLIO} to his real value ?)
> 
> cygwin != win32. If you install cygwin in binmode, it should emulate `real'
> unix, so hoop-jumps /should/ not be needed.

Yes should. Not must. See next.

>>So in this case, I think we must use for cygwin smoke layers ('stdio', 
>>'perlio :crlf')  as for win32 smoke.
> 
> again, cygwin != win32, and let's hope it stays that way.

Ok. But there is problem as Perl give \r when it display warnings even 
if CYGWIN=binmode is set.

>>Else I see in log file a lot of (like 200):
>>Use of uninitialized value in concatenation (.) or string at 
>>../lib/CGI.pm line 3459
> 
> 
> Can you try Yitzchak's patch:
> 
> --- perl/lib/CGI.pm.orig	Thu Jan 16 13:25:44 2003
> +++ perl/lib/CGI.pm	Wed Feb 19 13:35:50 2003
> @@ -149,7 +149,7 @@
>  # The path separator is a slash, backslash or semicolon, depending
>  # on the paltform.
>  $SL = {
> -       UNIX=>'/', OS2=>'\\', EPOC=>'/',
> +       UNIX=>'/', OS2=>'\\', EPOC=>'/', CYGWIN=>'/',
>         WINDOWS=>'\\', DOS=>'\\', MACINTOSH=>':', VMS=>'/'
>      }->{$OS};
>  
> End of Patch.

It's ok, I test it and warning go away.

Regards,
--
Alain BARBET
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.