From 990d60d3400b672a630a42653b2f61c07e46271a Mon Sep 17 00:00:00 2001 From: Audrey Thoma Date: Mon, 17 Jul 2017 09:20:49 -0500 Subject: mrbayes: new package (#4757) * mrbayes: new package * fixing beagle version * fixing typos * fixing libbeagle dependency types --- .../repos/builtin/packages/libbeagle/package.py | 47 ++++++++++++++ .../repos/builtin/packages/mrbayes/package.py | 72 ++++++++++++++++++++++ 2 files changed, 119 insertions(+) create mode 100644 var/spack/repos/builtin/packages/libbeagle/package.py create mode 100644 var/spack/repos/builtin/packages/mrbayes/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/libbeagle/package.py b/var/spack/repos/builtin/packages/libbeagle/package.py new file mode 100644 index 0000000000..f459c5f738 --- /dev/null +++ b/var/spack/repos/builtin/packages/libbeagle/package.py @@ -0,0 +1,47 @@ +############################################################################## +# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC. +# Produced at the Lawrence Livermore National Laboratory. +# +# This file is part of Spack. +# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved. +# LLNL-CODE-647188 +# +# For details, see https://github.com/llnl/spack +# Please also see the NOTICE and LICENSE files for our notice and the LGPL. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License (as +# published by the Free Software Foundation) version 2.1, February 1999. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and +# conditions of the GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +############################################################################## +from spack import * + + +class Libbeagle(AutotoolsPackage): + """Beagle performs genotype calling, genotype phasing, imputation of + ungenotyped markers, and identity-by-descent segment detection.""" + + homepage = "https://github.com/beagle-dev/beagle-lib" + url = "https://github.com/beagle-dev/beagle-lib/archive/beagle_release_2_1_2.tar.gz" + + version('2.1.2', '1107614e86f652f8ee45c1c92f2af3d4') + + depends_on('autoconf', type='build') + depends_on('automake', type='build') + depends_on('libtool', type='build') + depends_on('m4', type='build') + + depends_on('subversion', type='build') + depends_on('pkg-config', type='build') + + def url_for_version(self, version): + url = "https://github.com/beagle-dev/beagle-lib/archive/beagle_release_{0}.tar.gz" + return url.format(version.underscored) diff --git a/var/spack/repos/builtin/packages/mrbayes/package.py b/var/spack/repos/builtin/packages/mrbayes/package.py new file mode 100644 index 0000000000..05038b6931 --- /dev/null +++ b/var/spack/repos/builtin/packages/mrbayes/package.py @@ -0,0 +1,72 @@ +############################################################################## +# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC. +# Produced at the Lawrence Livermore National Laboratory. +# +# This file is part of Spack. +# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved. +# LLNL-CODE-647188 +# +# For details, see https://github.com/llnl/spack +# Please also see the NOTICE and LICENSE files for our notice and the LGPL. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License (as +# published by the Free Software Foundation) version 2.1, February 1999. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and +# conditions of the GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +############################################################################## +from spack import * + + +class Mrbayes(AutotoolsPackage): + """MrBayes is a program for Bayesian inference and model choice across a + wide range of phylogenetic and evolutionary models. MrBayes uses Markov + chain Monte Carlo (MCMC) methods to estimate the posterior distribution + of model parameters.""" + + homepage = "http://mrbayes.sourceforge.net" + url = "https://downloads.sourceforge.net/project/mrbayes/mrbayes/3.2.6/mrbayes-3.2.6.tar.gz" + + version('3.2.6', '95f9822f24be47b976bf87540b55d1fe') + + variant('mpi', default=True, description='Enable MPI parallel support') + variant('beagle', default=True, description='Enable BEAGLE library for speed benefits') + variant('sse', default=True, description='Enable SSE in order to substantially speed up execution') + + depends_on('autoconf', type='build') + depends_on('automake', type='build') + depends_on('libtool', type='build') + depends_on('m4', type='build') + + depends_on('libbeagle', when='+beagle') + depends_on('mpi', when='+mpi') + + configure_directory = 'src' + + def configure_args(self): + args = [] + if '~beagle' in self.spec: + args.append('--with-beagle=no') + else: + args.append('--with-beagle=%s' % self.spec['libbeagle'].prefix) + if '~sse' in self.spec: + args.append('--enable-sse=no') + else: + args.append('--enable-sse=yes') + if '~mpi' in self.spec: + args.append('--enable-mpi=no') + else: + args.append('--enable-mpi=yes') + return args + + def install(self, spec, prefix): + mkdirp(prefix.bin) + with working_dir('src'): + install('mb', prefix.bin) -- cgit v1.2.3-70-g09d2