The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Module::Build::FFI::Rust - (Deprecated) Build Perl extensions in Rust with FFI

VERSION

version 0.52

DESCRIPTION

Note: This module is deprecated, please see FFI::Build for another way to bundle Rust code with your Perl distribution.

Module::Build::FFI variant for writing Perl extensions in Rust with FFI (sans XS).

BASE CLASS

All methods, properties and actions are inherited from:

Module::Build::FFI

PROPERTIES

Currently the Rust compile and link is done in one command so these are both provided to that one step.

ffi_rust_extra_compiler_flags

Extra compiler flags to be passed to rustc.

Must be a array reference.

ffi_rust_extra_linker_flags

Extra linker flags to be passed to rustc.

Must be a array reference.

BASE CLASS

Module::Build::FFI

METHODS

ffi_have_compiler

 my $has_compiler = $mb->ffi_have_compiler;

Returns true if a rust compiler (rustc) is available.

ffi_build_dynamic_lib

 my $dll_path = $mb->ffi_build_dynamic_lib($src_dir, $name, $target_dir);
 my $dll_path = $mb->ffi_build_dynamic_lib($src_dir, $name);

Compiles the Rust source in the $src_dir and link it into a dynamic library with base name of $name.$Config{dlexe}. If $target_dir is specified then the dynamic library will be delivered into that directory.

EXAMPLES

For a complete example working example, see this module which calculates fibonacci numbers using Rust.

https://github.com/plicease/Fibonacci-FFI

SEE ALSO

FFI::Platypus

The Core Platypus documentation.

Module::Build::FFI

General MB class for FFI / Platypus.

AUTHOR

Graham Ollis <plicease@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2017 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.