Dist::Zilla::Plugin::FFI::Build(3)

NAME
Dist::Zilla::Plugin::FFI::Build - Add FFI::Build to your Makefile.PL

VERSION
version 1.08

SYNOPSIS
 [FFI::Build]

DESCRIPTION
This plugin makes the appropriate modifications to your dist to allow you to bundle code with FFI::Platypus::Bundle. It works with FFI::Build::MM, and only works with ExtUtils::MakeMaker, so don't try to use it with Module::Build.

It specifically:

Updates "Makefile.PL"
    To call FFI::Build::MM to add the necessary hooks to build and install your bundled code.

Sets configure-time prereqs
    For FFI::Build::MM. It also makes the prereqs for your distribution dynamic, which is required for FFI::Build::MM.

Prunes any build files
    Removes any files in "ffi/_build" which may be created when developing an FFI module using the bundle interface.

This plugin adds the appropriate hooks for FFI::Build::MM into your "Makefile.PL". It does not work with Module::Build.

PROPERTIES

  lang
If you are using a language plugin then you can specify it here. It will add it as a prereq. This should be the "short" name of the plugin, without the "FFI::Platypus::Lang" prefix. So for example for FFI::Platypus::Lang::Rust you would just set this to "Rust".

In addition setting these "lang" to these languages will have the following additional affects:

"Rust"
    The paths "ffi/target" and "t/ffi/target" will be pruned when building the dist. This is usually what you want.

  build
If you need a language specific builder this is where you specify it. These are classes that live in the "FFI::Build::File::" namespace. For example for Rust you would specify Cargo and for Go you would specify GoMod.

Setting this property will add the appropriate module as a configure time prereq.

You do not usually need this for the C programming language.

AUTHOR
Author: Graham Ollis <plicease@cpan.org>

Contributors:

Zaki Mughal (zmughal)

COPYRIGHT AND LICENSE
This software is copyright (c) 2018-2022 by Graham Ollis.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.