Alien-ROOT
view release on metacpan or search on metacpan
NAME
Alien::ROOT - Utility package to install and locate CERN's ROOT library
SYNOPSIS
use Alien::ROOT;
my $aroot = Alien::ROOT->new;
DESCRIPTION
Installs or detects CERN's ROOT library.
This version of "Alien::ROOT" will download and install "ROOT v5.30.0"
if necessary. If an existing (and compatible) installation of ROOT was
detected, the module will not download/compile/install a new version of
ROOT.
METHODS
Alien::ROOT->new
Creates a new "Alien::ROOT" object, which essentially just has a few
convenience methods providing useful information like the path to the
ROOT installation ("ROOTSYS" environment variable) and the path to the
root-config utility.
$aroot->installed
Determine if a valid installation of ROOT has been detected in the
system. This method will return a true value if it is, or undef
otherwise.
Example code:
print "okay\n" if $aroot->installed;
$aroot->run
Sets up the ROOT environment (see "setup_environment") and then invokes
the ROOT shell by simply calling "root".
$aroot->setup_environment
Sets up the "PATH" and "LD_LIBRARY_PATH" environment variables to point
at the correct paths for ROOT.
Throws an exception if ROOT was not found, so wrap this in an "eval" or
check "$aroot->installed" before using this.
$aroot->version
Determine the installed version of ROOT, as a string.
Example code:
my $version = $aroot->version;
$aroot->ldflags
$aroot->linker_flags
This returns the flags required to link C code with the local
installation of ROOT.
Example code:
my $ldflags = $aroot->ldflags;
$aroot->cflags
$aroot->compiler_flags
This method returns the compiler option flags to compile C++ code which
uses the ROOT library (typically in the CFLAGS variable).
Example code:
my $cflags = $aroot->cflags;
$aroot->features
This method returns a string of ROOT features that were enabled when
ROOT was compiled.
Example code:
my $features = $aroot->features;
if ($features !~ /\bexplicitlink\b/) {
warn "ROOT was built without the --explicitlink option";
}
$aroot->bindir
This method returns the path to the executable directory of ROOT.
Example code:
my $dir = $aroot->bindir;
system(File::Spec->catfile($dir, 'root'));
$aroot->libdir
This method returns the path to the library (lib/) directory of ROOT.
Example code:
my $dir = $aroot->libdir;
$aroot->incdir
This method returns the path to the include directory of ROOT.
Example code:
my $dir = $aroot->incdir;
$aroot->etcdir
This method returns the path to the 'etc' directory of ROOT.
Example code:
my $dir = $aroot->etcdir;
$aroot->private_root
This method returns true if the copy of ROOT that is being used was
installed by "Alien::ROOT" and is considered private.
Example code:
my $is_private = $aroot->private_root;
AUTHOR
Steffen Mueller <smueller@cpan.org>
ACKNOWLEDGMENTS
This package is based upon Jonathan Yu's Alien::libjio and Mattia
Barbon's Alien::wxWidgets. They kindly allowed me to use their work as a
starting point.
SUPPORT
You can find documentation for this module with the perldoc command.
( run in 0.331 second using v1.01-cache-2.11-cpan-119454b85a5 )