Bio-Emboss

 view release on metacpan or  search on metacpan

Makefile.PL  view on Meta::CPAN

# --- external libraries required by EMBOSS
#     XLIB and LIBS from the EMBOSS Makefile 
#     (<emboss-build-dir>/emboss/Makefile)

$EMB_EXT_LIBS = "";
#$EMB_EXT_LIBS = "-L/usr/X11R6/lib -lX11 -lm  -lgd -lpng -lz";
#$EMB_EXT_LIBS = "-L/usr/openwin/lib -lX11 -lsocket -lm -lnsl -lgd -lpng -lz";


# --- overwrite EMB_ROOT=xxx etc. from command-line if given
@ARGV = extract_global_params (\@ARGV, qw (EMB_ROOT EMB_EXT_LIBS EMB_SRC_ROOT));

#
# --- Look at these settings if building fails ....
#

# --- path to EMBOSS' sources (for the *.h files)

#$EMB_SRC_ROOT = "/usr/local/src/EMBOSS-2.7.1";


# --- DEFS from the EMBOSS Makefile; maybe not needed

$EMB_DEFS = "";
# $EMB_DEFS = " -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" .....";


# --- Change the following lines only, if EMBOSS libraries
#     or EMBOSS includes weren't found.
#
#     $EMB_LIBS: The nucleus, ajaxg, ajax and plplot libraries are taken
#                from the lib/ subdirectory in $EMB_ROOT by default.
#     $EMB_INC:  The *.h files are taken from the subdirectories
#                nucleus, ajax and plplot in $EMB_SRC_ROOT by default,
#                or the include subdirectory in $EMB_ROOT.
#
@emb_libs = qw(nucleus ajax ajaxg eplplot);
@emb_lib_dirs = qw(plplot ajax nucleus);

if (-d "$EMB_ROOT/lib") {
    @lib_search_dirs = qw(lib);
} elsif (-d "$EMB_ROOT/ajax/.libs") {
    @lib_search_dirs = qw(plplot/.libs ajax/.libs nucleus/.libs);
} else {
    @lib_search_dirs = qw(plplot ajax nucleus);
}

warn ("warning: **** \$EMB_ROOT not set\n") unless -d $EMB_ROOT;
if ($EMB_EXT_LIBS eq "" and $EMB_ROOT ne "") {
    my $themakefile = $EMB_SRC_ROOT ? $EMB_SRC_ROOT : $EMB_ROOT;
    $themakefile .= "/emboss/Makefile";

    warn "\n\$EMB_EXT_LIBS not defined.\n".
	"Usually this variable must be set to a combined value\n".
	"of XLIB and LIBS from the EMBOSS Makefile:\n\n";

    if (-f $themakefile) {
	my $grepres = `$^X -ne 'print if /^(X_\\w+LIBS|LIBS|XLIB)\\b/' $themakefile`;	warn $grepres . "\n";
    } else {
	warn "$themakefile (file not found)\n".
	    "Can not find EMBOSS source to guess XLIB and LIBS\n".
	    "Use parameter EMB_SRC_ROOT to set EMBOSS source location\n\n";
    }
}

$EMB_LIBS = join (" ", map { "-L$EMB_ROOT/$_" } @lib_search_dirs) .  " " .
            join (" ", map { "-l$_" } @emb_libs) .  " " .
            $EMB_EXT_LIBS;
if ($ENV{OSTYPE} eq "solaris") {
     $EMB_LIBS = join (" ", map { "-R$EMB_ROOT/$_" } @lib_search_dirs) .
          " " . $EMB_LIBS;
}

if (-d "$EMB_ROOT/include") {
    $EMB_INC = "-I$EMB_ROOT/include";
} else {
    $EMB_INC =  join " ", map { "-I$EMB_ROOT/$_" } grep { -d "$EMB_ROOT/$_"} @emb_lib_dirs;
}

print "Searching EMBOSS libraries in $EMB_LIBS\n";
print "Searching EMBOSS headers in $EMB_INC\n";


# --- look for EMBOSS in $EMB_ROOT and $EMB_SRC_ROOT
#     (disable if you change $EMB_LIBS or $EMB_INC manually)
# ---- check function needs update
$check_installation = 0;


# --- trying to get the EMBOSS version from the application 'embossversion'
#     (if this doesn't work, set $EMB_VERSION here to e.g. "2.5.1"
$embossversion = "$EMB_ROOT/bin/embossversion";
$embossversion = "$EMB_ROOT/emboss/embossversion" unless -x $embossversion;

$EMB_VERSION = `$embossversion -stdout -auto`; # e.g. 2.5.1


# --- solving name conflicts Perl <-> Emboss:

# --- some Perl defines need to be undefined for EMBOSS
@emboss_undefs = qw(ELSE WORD apply);
# --- some EMBOSS terms need to be redefined, because they are
#     already used by Perl
@emboss_redefs = qw(regexp OP_NOT OP_REF OP_REVERSE);


# --- include functions that have been declared "deprecated"
$INCLUDE_DEPRECATED_FUNCTIONS = 1;

#
# --- END of adjustments
#


# --- list of modules in this package
@modules_lib = qw(
Emboss_acd
Emboss_align
Emboss_arr
Emboss_assert
Emboss_base



( run in 0.650 second using v1.01-cache-2.11-cpan-39bf76dae61 )