On Tue, Mar 8, 2016 at 4:18 AM, Nigel Taylor <[email protected]> wrote: > On 03/08/16 04:52, Abel Abraham Camarillo Ojeda wrote: >> Module::Build::Tiny according to its docs: >> >> Incompatibilities >> • Argument parsing >> >> Module::Build has an extremely permissive way of argument >> handling, >> Module::Build::Tiny only supports a (sane) subset of that. In >> particular, "./Build destdir=/foo" does not work, you will need to >> pass it as "./Build --destdir=/foo". >> >> also, after a discussion on #toolchain on irc.perl.org it seems that >> Module::Build::Tiny requires options to be after actions. >> >> this patch enables instalation of packages that use Module::Build::Tiny >> and don't have Module::Build compatibility - like my following port >> of Mojo::JSON::MaybeXS. >> >> patch attached - gmail. >> >> comments, ideas? >> >> thanks. >> > Changes to perl.port.mk requires testing of a large number of perl ports. > > There are at least two perl ports that build using Module::Build::Tiny, > without any such modifications. The reason is modbuild is for ports > using Module::Build, not ports using Module::Build::Tiny. That is two > ports that doesn't use do-install to supply the Module::Build::Tiny CLI > parameters. > > So it's true using something meant specifically for Module::Build may > not work for Module::Build::Tiny. > > I need to look, at all ports using Module::Build::Tiny, but maybe the > wrong build method is being used in the first place. Those that work and > don't require changes do not use modbuild, so never use the modbuild > supplied CLI parameters and require no change to perl.port.mk. > > Module::Build is removed from core perl after version 5.21, and this > requires changes to the same section in perl.port.mk, while tests might > work now, changes might hamper moving to perl 5.22, and need to be > tested against a p5-Module-Build 0.42.08 not just the the core 0.42.05 > version. > > $ grep Module-Build-Tiny INDEX | cut -d\| -f2 | sed -e 's%$%/Makefile%' > | xargs grep do-install > devel/p5-Module-Build-Tiny/Makefile:do-install: > geo/p5-Geo-UK-Postcode-Regex/Makefile:do-install: > www/p5-CGI-Compile/Makefile:do-install: > www/p5-Starman/Makefile:do-install: > > (ignore devel/p5-Module-Build-Tiny itself as likely to be a special case). > > The majority ports don't use do-install or modbuild > > $ grep Module-Build-Tiny INDEX | cut -d\| -f2 | sed -e 's%$%/Makefile%' > | xargs egrep -L "do-install|modbuild" > devel/p5-Class-C3-Adopt-NEXT/Makefile > devel/p5-Hook-LexWrap/Makefile > devel/p5-MooseX-AttributeHelpers/Makefile > devel/p5-MooseX-LazyRequire/Makefile > devel/p5-MooseX-Types/Makefile > devel/p5-MooseX-Types-LoadableClass/Makefile > devel/p5-Test-DistManifest/Makefile > > > Does anything say modbuild can be used for Module::Build::Tiny ports? >
As far as I know modbuild should work with options supplied in modbuildtiny fashion (as the last only supports a subset of the former), anyway, maybe we could also make a new CONFIGURE_STYLE = modbuildtiny, is we don't want to affect anything previous... New authoring tools appear to generate this gigantic warnings (+ sleep 10), when using modbuild but not modbuildtiny but anyway falling back: https://github.com/Grinnz/Mojo-JSON-MaybeXS/blob/master/Build.PL I don't particularly think the changes I sent could be pushed as-is, but wanted to discuss about it with a diff in hand :) Will also try to test all dependent modules. thanks
