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?



Reply via email to