summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorAudrey Thoma <las_thoma15@iastate.edu>2017-11-06 18:27:42 -0600
committerChristoph Junghans <christoph.junghans@gmail.com>2017-11-06 17:27:42 -0700
commit8bae192d5c6e40d3d90c3873d3d9cc78b971f6c5 (patch)
tree728dabb58c7eba9c4cb60b862329cb264abce2fd /var
parentca73103dac47dc2cdfff51c146205611a72bb401 (diff)
downloadspack-8bae192d5c6e40d3d90c3873d3d9cc78b971f6c5.tar.gz
spack-8bae192d5c6e40d3d90c3873d3d9cc78b971f6c5.tar.bz2
spack-8bae192d5c6e40d3d90c3873d3d9cc78b971f6c5.tar.xz
spack-8bae192d5c6e40d3d90c3873d3d9cc78b971f6c5.zip
repeatmasker: new package (#6108)
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/ncbi-rmblastn/package.py36
-rw-r--r--var/spack/repos/builtin/packages/repeatmasker/package.py80
-rw-r--r--var/spack/repos/builtin/packages/trf/package.py46
3 files changed, 162 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py b/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py
new file mode 100644
index 0000000000..57b918cde8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, 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/spack/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 NcbiRmblastn(AutotoolsPackage):
+ """RMBlast search engine for NCBI"""
+
+ homepage = "https://www.ncbi.nlm.nih.gov/"
+ url = "ftp://ftp.ncbi.nlm.nih.gov/blast/executables/rmblast/LATEST/ncbi-rmblastn-2.2.28-src.tar.gz"
+
+ version('2.2.28', 'fb5f4e2e02ffcb1b17af2e9f206c5c22')
+
+ configure_directory = 'c++'
diff --git a/var/spack/repos/builtin/packages/repeatmasker/package.py b/var/spack/repos/builtin/packages/repeatmasker/package.py
new file mode 100644
index 0000000000..c9713c7892
--- /dev/null
+++ b/var/spack/repos/builtin/packages/repeatmasker/package.py
@@ -0,0 +1,80 @@
+##############################################################################
+# 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/spack/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 *
+import inspect
+import distutils.dir_util
+
+
+class Repeatmasker(Package):
+ """RepeatMasker is a program that screens DNA sequences for interspersed
+ repeats and low complexity DNA sequences."""
+
+ homepage = "http://www.repeatmasker.org"
+ url = "http://www.repeatmasker.org/RepeatMasker-open-4-0-7.tar.gz"
+
+ version('4.0.7', '4dcbd7c88c5343e02d819f4b3e6527c6')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('hmmer')
+ depends_on('ncbi-rmblastn')
+ depends_on('trf')
+
+ def url_for_version(self, version):
+ url = 'http://www.repeatmasker.org/RepeatMasker-open-{0}.tar.gz'
+ return url.format(version.dashed)
+
+ def install(self, spec, prefix):
+ # Config questions consist of:
+ #
+ # <PRESS ENTER TO CONTINUE>
+ # Enter perl path
+ # Enter where repeatmasker is being configured from
+ # Enter trf path
+ # Add a Search Engine:
+ # 1. CrossMatch
+ # 2. RMBlast - NCBI Blast with RepeatMasker extensions
+ # 3. WUBlast/ABBlast (required by DupMasker)
+ # 4. HMMER3.1 & DFAM
+ # 5. Done
+ # Enter RMBlast path
+ # Do you want RMBlast to be your default search engine for
+ # Repeatmasker? (Y/N)
+ # Add a Search Engine: Done
+
+ config_answers = ['\n', '%s\n' % self.spec['perl'].prefix.bin.perl,
+ '%s\n' % self.stage.source_path,
+ '%s\n' % self.spec['trf'].prefix.bin.trf, '2\n',
+ '%s\n' % self.spec['ncbi-rmblastn'].prefix.bin,
+ 'Y\n', '5\n']
+
+ config_answers_filename = 'spack-config.in'
+
+ with open(config_answers_filename, 'w') as f:
+ f.writelines(config_answers)
+
+ with open(config_answers_filename, 'r') as f:
+ inspect.getmodule(self).perl('configure', input=f)
+
+ distutils.dir_util.copy_tree(".", prefix)
diff --git a/var/spack/repos/builtin/packages/trf/package.py b/var/spack/repos/builtin/packages/trf/package.py
new file mode 100644
index 0000000000..f02e30302d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/trf/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, 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/spack/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 *
+import os
+
+
+class Trf(Package):
+ """Tandem Repeats Finder is a program to locate and display tandem repeats
+ in DNA sequences.
+
+ Note: A manual download is required for TRF.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "https://tandem.bu.edu/trf/trf.html"
+
+ version('4.09', '0c594fe666e0332db1df9d160d7fabc8', expand=False,
+ url='file://{0}/trf409.linux64'.format(os.getcwd()))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('trf409.linux64', prefix.bin.trf)