Alien-SeqAlignment-edlib

 view release on metacpan or  search on metacpan

lib/Alien/SeqAlignment/edlib.pm  view on Meta::CPAN

use strict;
use warnings;
package Alien::SeqAlignment::edlib;
$Alien::SeqAlignment::edlib::VERSION = '0.10';

use parent qw( Alien::Base );


=head1 NAME

Alien::SeqAlignment::edlib - find, build and install the edlib library

=head1 VERSION

version 0.10

=head1 SYNOPSIS

To execute the alignment using the command line tool:

 use Alien::SeqAlignment::edlib;
 use Env qw( @PATH );

 unshift @PATH, Alien::SeqAlignment::edlib->bin_dir;
 system Alien::SeqAlignment::edlib->edlib_aligner, (list of options), <queries.fasta>, <target.fasta>;


=head1 DESCRIPTION

This distribution provides edlib so that it can be used by other
Perl distributions that are on CPAN.  The source code will be downloaded
from the edlib github repo, and if that fails it will use the location of a
fork but the author of this module. Contrary to other Alien modules, this one
will not test for a prior install of the edlib library, but will install 
from source into a private share location for the use by other modules. 
This strategy will avoid overwritting prior  system installs of the edlib
library, and is guaranteed to use the latest version of edlib. 
The build provides the static and shared libraries, but also the CLI aligner 
(edlib-aligner, not currently available in Windows). 

=cut

=head1 METHODS

=head2 edlib_aligner

 Alien::SeqAlignment::edlib->edlib_aligner

Returns the command name for running the CLI version of the edlib aligner
Since the command line tool is not built under Windows by the edlib project
make files, this method will return undef under Windows. 

=cut

sub edlib_aligner {
    my ($class) = @_;
    $^O ne 'MSWin32' ? $class->runtime_prop->{command} : undef;
}

=head1 USAGE

=head2 Command line tool

 use v5.38;
 use Alien::SeqAlignment::edlib;
 use Env qw( @PATH );



( run in 0.346 second using v1.01-cache-2.11-cpan-119454b85a5 )