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

Reply via email to