Build and make available bz2
In your Makefile.PL:
use ExtUtils::MakeMaker;
use Alien::Base::Wrapper ();
WriteMakefile(
Alien::Base::Wrapper->new('Alien::Libbz2')->mm_args2(
# MakeMaker args
NAME => 'My::XS',
...
),
);
In your Build.PL:
use Module::Build;
use Alien::Base::Wrapper qw( Alien::Libbz2 !export );
my $builder = Module::Build->new(
...
configure_requires => {
'Alien::Libbz2' => '0',
...
},
Alien::Base::Wrapper->mb_args,
...
);
$build->create_build_script;
In your FFI::Platypus script or module:
use FFI::Platypus;
use Alien::Libbz2;
my $ffi = FFI::Platypus->new(
lib => [ Alien::Libbz2->dynamic_libs ],
);
In your script or module:
use Alien::Libbz2;
use Env qw( @PATH );
unshift @PATH, Alien::Libbz2->bin_dir;
This Alien module provides the necessary compiler and linker flags needed for using libbz2 in XS.
my @dirs = Alien::Libbz2->bin_dir;
Returns a list of directories that need to be added to PATH
in order to use
the command line tools.
my $cflags = Alien::Libbz2->cflags;
Returns the C compiler flags.
my $libs = Alien::Libbz2->libs;
Returns the linker flags.
%{bzip2}
Returns the name of the bzip2 command. Usually just bzip2
.
-
Another libbz2 Alien module, but not implemented with Alien::Base.
Graham Ollis plicease@cpan.org
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.