easyblock = 'ConfigureMake'
name = 'HMMER'
version = '3.3.2'
homepage = 'http://hmmer.org/'
description = """HMMER is used for searching sequence databases for homologs
of protein sequences, and for making protein sequence alignments. It
implements methods using probabilistic models called profile hidden Markov
models (profile HMMs). Compared to BLAST, FASTA, and other sequence
alignment and database search tools based on older scoring methodology,
HMMER aims to be significantly more accurate and more able to detect remote
homologs because of the strength of its underlying mathematical models. In the
past, this strength came at significant computational expense, but in the new
HMMER3 project, HMMER is now essentially as fast as BLAST."""
toolchain = {'name': 'gompi', 'version': '2023b'}
source_urls = [
'http://eddylab.org/software/hmmer/',
'http://eddylab.org/software/hmmer%(version_major)s/%(version)s/',
]
sources = [SOURCELOWER_TAR_GZ]
patches = ['%(name)s-%(version)s_fix_perl.patch']
checksums = [
{'hmmer-3.3.2.tar.gz': '92fee9b5efe37a5276352d3502775e7c46e9f7a0ee45a331eacb2a0cac713c69'},
{'HMMER-3.3.2_fix_perl.patch': '9f04123ca33118549b94adf6a07df9ab1cb7b680dd706d7b76ee0794f2def22d'},
]
builddependencies = [
('Python', '3.11.5'),
('Perl', '5.38.0'),
]
configopts = '--enable-mpi'
buildopts = ' V=1 '
testopts = buildopts
runtest = 'check'
installopts = ' && cd easel && make install'
local_bin_files = ['alimask', 'esl-afetch', 'esl-alimanip', 'esl-alimap', 'esl-alimask',
'esl-alimerge', 'esl-alipid', 'esl-alirev', 'esl-alistat', 'esl-compalign',
'esl-compstruct', 'esl-construct', 'esl-histplot', 'esl-mask', 'esl-reformat',
'esl-selectn', 'esl-seqrange', 'esl-seqstat', 'esl-sfetch', 'esl-shuffle',
'esl-ssdraw', 'esl-translate', 'esl-weight', 'hmmalign', 'hmmbuild',
'hmmconvert', 'hmmemit', 'hmmfetch', 'hmmlogo', 'hmmpgmd', 'hmmpress',
'hmmscan', 'hmmsearch', 'hmmsim', 'hmmstat', 'jackhmmer', 'makehmmerdb',
'nhmmer', 'nhmmscan', 'phmmer']
sanity_check_paths = {
'files': ["bin/%s" % x for x in local_bin_files],
'dirs': ['bin', 'share'],
}
sanity_check_commands = [
"esl-construct -h",
"hmmsearch -h",
"nhmmer -h",
]
moduleclass = 'bio'