-
Notifications
You must be signed in to change notification settings - Fork 78
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
Specify full path for FIXIN where possible #460
base: master
Are you sure you want to change the base?
Specify full path for FIXIN where possible #460
Conversation
Otherwise fall back to the existing behaviour and let the system find it on the path.
Makes the code somewhat more readable.
This would prevent an updated ExtUtils::PL2Bat installed in a local::lib or similar from working. |
Yeah, it should search |
I can easily add those checks but I'm not sure that would address the An alternative is to traverse the path to find the first instance of The ability, or documentation for how, to specify |
Right, what I said would cover non- |
UPDATED ... original presentation was definitely rubbish. In the proposed patch, would it make sense to change:
|
Or just search the path? my @path = split $Config{path_sep}, $ENV{PATH};
my @found = grep {-e qq{$_\\pl2bat.bat}} @path;
$self->{FIXIN} = @found ? $found[0] : "pl2bat.bat"; |
LGTM.
If my head's screwed on correctly this morning (not guaranteed), I think you'll want to append |
Good point. Will update the PR accordingly. |
And specify its full path in the generated Makefile.
If I've got it right, the current proposed patch looks like this:
(I applied the patch by hand and maybe I've injected an additional empty line into it at the end.) It seems to me that, with the original rendition, the command:
could be executed if Does that matter ? The proposed patch apparently breaks my scripted build of current blead by refusing to build dist/XSLOADER (for reasons not yet investigated). |
No, because the previous code said |
Heh ... just needed to think about what Sorry for the noise. UPDATE: As if it's not already embarrassing enough, it gets even dumber. |
Are there any further objections, or can this be merged? |
So if I understand this correctly pl2bat will now be searched at configure-time instead of build-time? And that solves problems? |
The motivation is in #459 (comment) . Basically paths can become mixed up under some circumstances, such that msys2 paths are used in Windows shells. @mohawk2 - are you able to test the PDL CI system using EUMM from this PR? |
No more so than you. If you fork a repo that had a problem (such as PDL-NDBin), then change its version-pinned Strawberry Perl back to latest (check that still fails), then with a new commit, insert a step to install EUMM from your branch, then we'll know. Use |
Specifying the full path to pl2bat.bat makes it consistent with the other
utilities specified in the generated makefiles and avoids possible issues
with paths across MSYS/windows shells.
The second commit makes the code somewhat longer than the ternary
but easier to read given it avoids listing the path twice. However, I do
appreciate that readability is a subjective thing. I can elide it if it is
deemed unnecessary.
Updates #459