This looks marvelous. In the next few days, I'll start to pull this
"upstream". As mentioned, I do not have a Windows box, so we may have
be looking at an "iterative solution", where I take your fixes
upstream, you pull them downstream and fix my changes, I take your
fixes to my changes upstream, etc.
Here's what I plan now:
1.) Simply switch to Archive::Tar for untaring for all installs,
including POSIX. It's core, and its use can be seen as more reliable
than the assumption that the system tar is a POSIX tar.
2.) Add the requirement for ExtUtils::MakeMaker for all installs,
including POSIX. POSIX installs won't use it, but is "very core", so
there is basically no risk in requiring it.
3.) Add Config::Autoconf as "recommended", and fail in Build.PL with an
appropriate message if $^O eq 'MSWin32'
and it is not
present.
4.) Rename the "PURE_PERL_BUILD_MODE
" variable and
environment variable to USE_PERL_AUTOCONF
and MARPA_USE_PERL_AUTOCONF
.
"Pure Perl" suggests "no C compiler required". Another choice was "WINDOWS_BUILD_MODE
"
or something like that, but I thought it best to avoid mentioning
Windows unless the tie-in to Windows is 100%. Here it is only 99.99%.
:-)
And by the way, I cannot restrain myself from a bit of
self-congratulation here. It looks like my only portability mistake,
in almost 50,000 lines of Perl and over 15,000 lines of highly
mathematical C code, was the missing "config.h" in avl.h.
Thanks Jean-Damien, and thanks to rns for the prompt test,
jeffrey