App-cpm

 view release on metacpan or  search on metacpan

lib/App/cpm/Builder/EUMM.pm  view on Meta::CPAN

    $self->_prepare_paths_cache;
    $self->_write_blib_meta($ctx);
    return 1;
}

sub test ($self, $ctx, $dependency_libs, $dependency_paths) {
    $self->run_test($ctx, [ $ctx->{make}, "test" ], $dependency_libs, $dependency_paths);
}

sub install ($self, $ctx, $dependency_libs = [], $dependency_paths = []) {
    return $self->SUPER::install($ctx, $dependency_libs, $dependency_paths) if !$self->{use_install_command};
    my $ok = $self->run_install($ctx, [ $ctx->{make}, "install" ], $dependency_libs, $dependency_paths);
    return if !$ok;
    $self->_install_blib_meta($ctx);
    return 1;
}

sub needs_install_env ($self) {
    return $self->{use_install_command} ? 1 : 0;
}

lib/App/cpm/Builder/MB.pm  view on Meta::CPAN

    $self->_prepare_paths_cache;
    $self->_write_blib_meta($ctx);
    return 1;
}

sub test ($self, $ctx, $dependency_libs, $dependency_paths) {
    $self->run_test($ctx, [ $ctx->{perl}, "./Build", "test" ], $dependency_libs, $dependency_paths);
}

sub install ($self, $ctx, $dependency_libs = [], $dependency_paths = []) {
    return $self->SUPER::install($ctx, $dependency_libs, $dependency_paths) if !$self->{use_install_command};
    my $ok = $self->run_install($ctx, [ $ctx->{perl}, "./Build", "install" ], $dependency_libs, $dependency_paths);
    return if !$ok;
    $self->_install_blib_meta($ctx);
    return 1;
}

sub needs_install_env ($self) {
    return $self->{use_install_command} ? 1 : 0;
}

lib/App/cpm/Builder/Prebuilt.pm  view on Meta::CPAN

package App::cpm::Builder::Prebuilt;
use v5.24;
use warnings;
use experimental qw(lexical_subs signatures);

use parent 'App::cpm::Builder::Base';

use ExtUtils::Install ();

sub new ($class, %args) {
    my $self = $class->SUPER::new(%args);
    $self->_prepare_paths_cache;
    return $self;
}

sub test ($self, $ctx) {
    die ref($self) . " does not implement test";
}

1;

lib/App/cpm/Resolver/Fixed.pm  view on Meta::CPAN

use experimental qw(lexical_subs signatures);

use parent 'App::cpm::Resolver::MetaDB';

sub new ($class, $ctx, @argv) {
    my %package;
    for my $argv (@argv) {
        my ($package, $fixed_version) = split /\@/, $argv;
        $package{$package} = $fixed_version;
    }
    my $self = $class->SUPER::new($ctx);
    $self->{_packages} = \%package;
    $self;
}

sub resolve ($self, $ctx, $argv) {
    my $fixed_version = $self->{_packages}{$argv->{package}};
    return { error => "not found" } if !$fixed_version;
    my $version_range = $argv->{version_range};
    if ($version_range) {
        $version_range .= ", == $fixed_version";
    } else {
        $version_range = "== $fixed_version";
    }
    $self->SUPER::resolve($ctx, { $argv->%*, version_range => $version_range });
}

1;

lib/App/cpm/version.pm  view on Meta::CPAN

    $requirements->add_string_requirement('DummyModule', $version_range);
    $requirements->accepts_module('DummyModule', $self->numify);
}

# suppress warnings
# > perl -Mwarnings -Mversion -e 'print version->parse("1.02_03")->numify'
# alpha->numify() is lossy at -e line 1.
# 1.020300
sub numify ($self, @args) {
    local $SIG{__WARN__} = sub (@) {};
    $self->SUPER::numify(@args);
}
sub parse ($self, @args) {
    local $SIG{__WARN__} = sub (@) {};
    $self->SUPER::parse(@args);
}

# utility function
sub range_merge ($range1, $range2) {
    my $req = CPAN::Meta::Requirements->new;
    $req->add_string_requirement('DummyModule', $_) for $range1, $range2; # may die
    $req->requirements_for_module('DummyModule');
}

1;



( run in 1.894 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )