NAME

ExtUtils::Builder::BuildTools::FromPerl - compiler configuration, derived from perl's configuration

VERSION

version 0.035

SYNOPSIS

 my $planner = ExtUtils::Builder::Planner->new;
 $planner->load_extension('ExtUtils::Builder::BuildTools::FromPerl', 0.034,
	 config => $config,
 );
 my $foo_o = $planner->object_name('foo');
 $planner->compile('foo.c', $foo_o, include_dirs => ['.']);
 my $foo_exe = $planner->executable_name('foo');
 $planner->link([ 'foo.o' ], $foo_exe, libraries => ['foo']);
 my $plan = $planner->materialize;
 $plan->run($foo_exe);

DESCRIPTION

This module is a ExtUtils::Builder::Planner::Extension that facilitates compiling object. It takes one named argument: config, an ExtUtils::Config (compatible) object.

METHODS

add_methods(%options)

This adds two delegate methods to the planner, compile and link. It takes named arguments that will be prefixed to the named arguments for all delegate calls. In practice, it's mainly useful with the config, profile and type arguments.

If your $planner has a config delegate, that will be used as default value for config.

This is usually not called directly, but through ExtUtils::Builder::Planner's load_extension method.

DELEGATES

It inherits the following delegates from ExtUtils::Builder::BuildTools::Base.

compile($source, $target, %options)
link(\@sources, $target, %options)
object_file($basename, $dir = undef)
library_file($basename, $dir = undef)
static_library_file($basename, $dir = undef)
loadable_file($basename, $dir = undef)
executable_file($basename, $dir = undef)

AUTHOR

Leon Timmermans <fawaka@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Leon Timmermans.

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