Alien-CMake
view release on metacpan or search on metacpan
inc/My/Builder.pm view on Meta::CPAN
sub extract_binaries {
my ($self, $download, $build_out, $build_src) = @_;
# do extract binaries
my $bp = $self->notes('build_params');
my $archive = catfile($download, File::Fetch->new(uri => $bp->{url})->file);
print "Extracting $archive...\n";
my $ae = Archive::Extract->new( archive => $archive );
die "###ERROR###: Cannot extract $archive ", $ae->error unless $ae->extract(to => $build_src);
my ($prefix, $bindir, $sharedir) = find_CMake_dir(rel2abs($build_src));
dircopy($bindir, catdir($build_out, 'bin'));
dircopy($sharedir, catdir($build_out, 'share'));
}
sub extract_sources {
my ($self, $download, $patches, $build_src) = @_;
my $bp = $self->notes('build_params');
my $srcdir = catfile($build_src, $bp->{dirname});
my $unpack = 'y';
$unpack = $self->prompt("Dir '$srcdir' exists, wanna replace with clean sources?", "n") if (-d $srcdir);
inc/My/Builder.pm view on Meta::CPAN
chdir $self->base_dir();
}
}
return 1;
}
sub set_config_data {
my( $self, $build_out ) = @_;
# try to find CMake root dir
my ($prefix, $bindir, $sharedir) = find_CMake_dir(rel2abs($build_out));
die "###ERROR### Cannot find CMake directory in 'sharedir'" unless $prefix;
if($self->config_data('build_params')->{buildtype} eq 'use_already_existing') {
$self->config_data('share_subdir', rel2abs($prefix));
}
else {
$self->config_data('share_subdir', abs2rel($prefix, rel2abs('sharedir')));
}
# set defaults
my $cfg = {
( run in 0.962 second using v1.01-cache-2.11-cpan-2398b32b56e )