-
Notifications
You must be signed in to change notification settings - Fork 561
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gmake test: Windows 11, gcc 12: Use of uninitialized value $_ in substitution (s///) at ..\pod\buildtoc line 215, <$fh> chunk 2 #20391
Comments
All tests passed for me on Windows 11 using gcc-12.2.0 and building in Powershell. The porting/customized.t failures suggest that the specified files have been changed. The porting/regen.t failures don't mean much to me. Perhaps it's a similar issue. And the diagnostics provided by the CPAN-Meta-YAML test failures don't help me much.
Cheers, |
@sisyphus Yes, I think when I installed Git for Windows I chose to configure line ending conversions. I also see the following:
|
@sisyphus I now tried to set autocrlf to "input"
This setting should avoid having git do automatic line ending conversion on checkout. Then, recloned https://github.com/Perl/perl5.git and repeated the steps above ( |
Added a new issue here: #20394 |
I get these too, and it's not the compiler. I think it is line endings. Also for the pod rules and porting regen. Apparently it works if you set git to use lf. But I'm thinking we should work with native line endings, and that these are bugs. The porting SHA failures are likely because we have extra CRs in the file that messing things up. I would think we should just skip that test on Windows. Is there a good reason that this test needs to run on this box? |
Is there a good reason to run it on any box ? There's nothing more annoying than submitting a PR only to find that the CI tests fail because of (unrequested and unannounced) changes to line endings. I think that skipping the tests on Windows would make things worse. If the tests aren't skipped then at least testing your build on Windows prior to making a PR would expose the issue before the PR is made. And I think it's good that there's something to tell us Windows people that windows endings are not allowed on git. Perhaps the FAIL message could suggest that "hey, I see you're on Windows - maybe it's just that this file's line endings have been changed ". Is there any reason that these files really need to have Unix line endings ? Cheers, |
My reading of this ticket is that the specific issue about which @hakonhagland was originally concerned was resolved as of the actions he took and described in this comment: #20391 (comment). The subsequent posts from @khwilliamson and @sisyphus broach a policy discussion (to oversimplify: how do we account for Windows line endings in our porting tests) which would, IMO, be better conducted on the mailing list. I therefore recommend that this ticket be closed. Any objections? |
No objection from me. |
No objections received. Closing ticket. |
I am trying to build blead on Windows 11 using MinGW-w64 and gcc 12.2 from https://winlibs.com/ (using the MSVCRT runtime library) following a similar approach as in #20096. See also #20383.
After downloading WinLibs to
C:\Winlibs64-Gcc12-msvcrt
, I needed to rename gnu make binary togmake.exe
:This is gcc version 12.2.0, and gnu make version 4.3:
To build perl I needed to set the environment variable
CCHOME
:Now, I was able to build perl:
The log file is here: gmake.log
Then running the tests resulted in some failed tests:
The complete test log is here: gmake-test.log
I will start at the top of the log, the first issue I see is at line 437:
The text was updated successfully, but these errors were encountered: