On Mar 14, 2006, at 10:30 AM, Steven Schubiger wrote:
There are two misconceptions here:
a) Module::Build::Convert transforms Makefile.PLs -> Build.PLs, so
it's
exactly the other way round you thought it was supposed to work.
b) The Makefile.PL is statically parsed, i.e. it picks up the source
code as good as it gets; if it can't (imagine complex Makefile.PLs,
for example) it reverts to 'execute' the Makefile.PL via a
'do Makefile.PL' and the overriden WriteMakefile() via a custom
typeglob will return the processed output.
So it certainly _doesn't_ do only dynamically execute code, it's
more like a last resort.
Oops, you're right. Sorry about that. I was thinking of
Module::Build::Compat and it's create_makefile_pl=> 'traditional'
feature.
My proposed module would conceivably enable Module::Build::Convert to
easily test whether the Build.PL is non-trivial, and thereby suggest
to the author that he hand-edit his Makefile.PL instead.
Could we see it vice-versa integrated to Module::Build::Convert?
That'd certainly be nice.
Possible. I still haven't written a line of code yet, so this is
still all speculative. :-)
Of course, I do not propose adding PPI to the M::B prereq list at
this point.
I'm using this just as an example of where my proposed module would
offer novel functionality.
I'd be interested in having some of the outlined functionality in MBC.
I welcome any lending hand in the quest to extend MBC, because it
still
could be better and less error-prone.
Sounds great. Again, my comments above regarding M::B are because I
was confusing Module::Build::Convert (a self-contained module for
Makefile.PL -> Build.PL conversion) and Module::Build::Compat (part
of the M::B distro for Build.PL -> Makefile.PL conversion).
Chris
--
Chris Dolan, Software Developer, Clotho Advanced Media Inc.
608-294-7900, fax 294-7025, 1435 E Main St, Madison WI 53703
vCard: http://www.chrisdolan.net/ChrisDolan.vcf
Clotho Advanced Media, Inc. - Creators of MediaLandscape Software
(http://www.media-landscape.com/) and partners in the revolutionary
Croquet project (http://www.opencroquet.org/)