|Perl Monk, Perl Meditation|
Re^3: Defining an XS symbol in the Makefile.PL (largely solved)by syphilis (Bishop)
|on Aug 22, 2019 at 01:29 UTC||Need Help??|
... % is also special in make's language — it is used in forming patterns ...
Yes, I know that, and it may well be part of the problem.
However, when I run the script on my Ubuntu box (where GNU make is also used) I find that it needs only the single "%", same as dmake.
Can we therefore assume that the bug is in the Win32 version of "make" that I'm using ?
On windows, I've been using:
and it makes no difference when I switch to:
So, if the problem lies with GNU make on Windows, it seems it's a thoroughly embedded problem.
I know that "%%" is the way to escape the "%" in (s)printf's formatting pattern.
According to https://www.cmcrossroads.com/article/gnu-make-escaping-walk-wild-side, in GNU make one escapes the "%" with a backslash - which was another approach I had tried, and found to be unsuccessful.
I'll investigate the possibility that somewhere in EU::MM there's a (s)printf call that's made when make=gmake, but not when make=dmake. (However, I think it unlikely that would happen.)
The problem of how to workaround the issue is, in my view, solved.
I'd just like to understand why and how that issue exists.