Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUSCO version 5.8.3 #452

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# Updated by: Pavel Grochal (INUITS)
# License: GPLv2

easyblock = 'ConfigureMake'

name = 'AUGUSTUS'
version = '3.5.0'

homepage = 'https://bioinf.uni-greifswald.de/augustus/'
description = "AUGUSTUS is a program that predicts genes in eukaryotic genomic sequences"

toolchain = {'name': 'foss', 'version': '2023b'}

github_account = 'Gaius-Augustus'
source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.tar.gz']
patches = ['%(name)s-3.5.0_sqliteDB_cstdint_include.patch']
checksums = [
'5ed6ce6106303b800c5e91d37a250baff43b20824657b853ae04d11ad8bdd686', # v3.5.0.tar.gz
'1c5e1813f100531ec8a9fd0bc948612d37a5676eb8f5d59601ed2cfed65fa255', # AUGUSTUS-3.5.0_sqliteDB_cstdint_include.patch
]

builddependencies = [
('Python', '3.11.5'),
]

dependencies = [
('zlib', '1.2.13'),
('Boost', '1.83.0'),
('GSL', '2.7'),
('SAMtools', '1.19.2'),
('HTSlib', '1.19.1'), # also provides tabix
('BCFtools', '1.19'),
#('lpsolve', '5.6.20'), # lpsolve from r-bundle-cran
('R-bundle-CRAN', '2024.06'),
('SuiteSparse', '7.7.0', '-METIS-5.1.0'),
('BamTools', '2.5.2'),
('SQLite', '3.43.1'),
('lpsolve', '5.5.2.11'),
]

skipsteps = ['configure']

# run "make clean" to avoid using binaries included with the source tarball
prebuildopts = "make clean && "

_tmpl = 'INCLUDE_PATH_{dep}=-I{root}{incl} LIBRARY_PATH_{dep}="-L{root}{lib} -Wl,-rpath,{root}{lib}"'

buildopts = ' '.join([
'COMPGENEPRED=true SQLITE=true ZIPINPUT=true MYSQL=false CXX="$CXX" ',
_tmpl.format(dep='ZLIB', root='$EBROOTZLIB', incl='/include', lib='/lib'),
_tmpl.format(dep='BOOST', root='$EBROOTBOOST', incl='/include', lib='/lib'),
_tmpl.format(dep='LPSOLVE', root='$EBROOTLPSOLVE', incl='/include', lib='/lib'),
_tmpl.format(dep='SUITESPARSE', root='$EBROOTSUITESPARSE', incl='/include', lib='/lib'),
_tmpl.format(dep='GSL', root='$EBROOTGSL', incl='/include', lib='/lib'),
_tmpl.format(dep='SQLITE', root='$EBROOTSQLITE', incl='/include', lib='/lib'),
_tmpl.format(dep='BAMTOOLS', root='$EBROOTBAMTOOLS', incl='/include/bamtools', lib='/lib'),
_tmpl.format(dep='HTSLIB', root='$EBROOTHTSLIB', incl='/include/htslib', lib='/lib'),
])

preinstallopts = "sed -i '/ln -sf/d' Makefile && "
installopts = 'INSTALLDIR=%(installdir)s '

sanity_check_paths = {
'files': ['bin/augustus', 'bin/bam2hints', 'bin/etraining', 'bin/fastBlockSearch',
'bin/filterBam', 'bin/getSeq', 'bin/homGeneMapping', 'bin/joingenes',
'bin/load2sqlitedb', 'bin/prepareAlign'],
'dirs': ['config', 'scripts'],
}
sanity_check_commands = ['augustus --help']

modextrapaths = {'PATH': 'scripts'}
modextravars = {
'AUGUSTUS_BIN_PATH': '%(installdir)s/bin',
'AUGUSTUS_CONFIG_PATH': '%(installdir)s/config',
'AUGUSTUS_SCRIPTS_PATH': '%(installdir)s/scripts',
}

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
From 1ed97dc4ce2909c5f89737005b8ea4a664fbe728 Mon Sep 17 00:00:00 2001
From: Kuoi <[email protected]>
Date: Sun, 11 Jun 2023 23:47:49 +0800
Subject: [PATCH] fix: gcc13 failed with this

---
include/sqliteDB.hh | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/sqliteDB.hh b/include/sqliteDB.hh
index e66374b9d..67a37826f 100644
--- a/include/sqliteDB.hh
+++ b/include/sqliteDB.hh
@@ -11,6 +11,7 @@
#include <string>
#include <vector>
#include <sqlite3.h>
+#include <cstdint>

using namespace std;

From 3dbe752e4cf3f6778168166a2c662d02d8623f15 Mon Sep 17 00:00:00 2001
From: Kuoi <[email protected]>
Date: Mon, 12 Jun 2023 01:32:02 +0800
Subject: [PATCH] fix: without it compile fail

---
auxprogs/homGeneMapping/include/sqliteDB.hh | 1 +
1 file changed, 1 insertion(+)

diff --git a/auxprogs/homGeneMapping/include/sqliteDB.hh b/auxprogs/homGeneMapping/include/sqliteDB.hh
index e842bcf9d..67338bef4 100644
--- a/auxprogs/homGeneMapping/include/sqliteDB.hh
+++ b/auxprogs/homGeneMapping/include/sqliteDB.hh
@@ -13,6 +13,7 @@
#include <string>
#include <vector>
#include <sqlite3.h>
+#include <cstdint>

using namespace std;


34 changes: 34 additions & 0 deletions config/easybuild/easyconfigs/b/BBMap/BBMap-39.01-GCC-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
easyblock = 'MakeCp'

name = 'BBMap'
version = '39.01'

homepage = 'https://sourceforge.net/projects/bbmap/'
description = """BBMap short read aligner, and other bioinformatic tools."""

toolchain = {'name': 'GCC', 'version': '13.2.0'}

source_urls = [SOURCEFORGE_SOURCE]
sources = ['%(name)s_%(version)s.tar.gz']
checksums = ['98608da50130c47f3abd095b889cc87f60beeb8b96169b664bc9d849abe093e6']

dependencies = [('Java', '11.0.20', '', SYSTEM)]

prebuildopts = 'cd jni && '

local_suff = {'Darwin': 'osx', 'Linux': 'linux'}[OS_TYPE]
buildopts = "-f makefile.%s" % local_suff

files_to_copy = ['*']

sanity_check_paths = {
'files': ['bbmap.sh', 'jni/libbbtoolsjni.%s' % SHLIB_EXT],
'dirs': []
}

modextrapaths = {'PATH': ''}

modloadmsg = "For improved speed, add 'usejni=t' to the command line of %(name)s tools which support the use of the"
modloadmsg += " compiled jni C code.\n"

moduleclass = 'bio'
56 changes: 56 additions & 0 deletions config/easybuild/easyconfigs/b/BLAST+/BLAST+-2.14.1-gompi-2023b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# #
# EasyBuild reciPY as per https://github.com/easybuilders/easybuild
#
# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
# Authors:: Fotis Georgatos <[email protected]>, Kenneth Hoste (UGent)
# License:: MIT/GPL
# $Id$
#
# This work implements a part of the HPCBIOS project and is a component of
# the policy: https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html
# #

easyblock = 'ConfigureMake'

name = 'BLAST+'
version = '2.14.1'

homepage = 'https://blast.ncbi.nlm.nih.gov/'
description = """Basic Local Alignment Search Tool, or BLAST, is an algorithm
for comparing primary biological sequence information, such as the amino-acid
sequences of different proteins or the nucleotides of DNA sequences."""

toolchain = {'name': 'gompi', 'version': '2023b'}
toolchainopts = {'usempi': True, 'pic': True}

source_urls = ['https://ftp.ncbi.nlm.nih.gov/blast/executables/%(namelower)s/%(version)s/']
sources = ['ncbi-blast-%(version)s+-src.tar.gz']
checksums = ['712c2dbdf0fb13cc1c2d4f4ef5dd1ce4b06c3b57e96dfea8f23e6e99f5b1650e']

builddependencies = [('cpio', '2.15')]

dependencies = [
('zlib', '1.2.13'),
('bzip2', '1.0.8'),
('PCRE', '8.45'),
('Boost', '1.83.0'),
('GMP', '6.3.0'),
('libpng', '1.6.40'),
('libjpeg-turbo', '3.0.1'),
('LMDB', '0.9.31'),
]

# remove line that prepends system paths to $PATH from configure script
preconfigopts = r'sed -i "s|^PATH=\(.*\)$|#PATH=\1 |" %(start_dir)s/src/build-system/configure && '

configopts = "--with-z=$EBROOTZLIB --with-bz2=$EBROOTBZIP2 "
configopts += "--with-pcre=$EBROOTPCRE --with-boost=$EBROOTBOOST "
configopts += "--with-gmp=$EBROOTGMP --with-png=$EBROOTLIBPNG "
configopts += "--with-jpeg=$EBROOTLIBJPEGMINTURBO --with-lmdb=$EBROOTLMDB"

sanity_check_paths = {
'files': ['bin/blastn', 'bin/blastp', 'bin/blastx'],
'dirs': [],
}

moduleclass = 'bio'
57 changes: 57 additions & 0 deletions config/easybuild/easyconfigs/b/BUSCO/BUSCO-5.8.3-foss-2023b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Updated by: Pavel Grochal (INUITS)
# Updated by: Sebastien Moretti (SIB)

easyblock = 'PythonPackage'

name = 'BUSCO'
version = '5.8.3'

homepage = 'https://busco.ezlab.org/'
description = "BUSCO: assessing genome assembly and annotation completeness with single-copy orthologs"
# software_license = 'LicenseMIT'

toolchain = {'name': 'foss', 'version': '2023b'}

source_urls = ['https://gitlab.com/ezlab/%(namelower)s/-/archive/%(version)s']
sources = [SOURCELOWER_TAR_BZ2]
checksums = ['b1a46c93b636ca59fd7529f8fba28774d9998c9a03d3f1fa8776a1fb08aa8b3f']

dependencies = [
('Python', '3.11.5'),
('SciPy-bundle', '2023.11'), # for pandas
('R', '4.4.1'), # for R and ggplot2
('Biopython', '1.84'),
('BLAST+', '2.14.1'),
('HMMER', '3.4'),
('prodigal', '2.6.3'),
('AUGUSTUS', '3.5.0'),
('SEPP', '4.5.5'),
('MetaEuk', '7'),
('BBMap', '39.01'),
('miniprot', '0.14'),
]

use_pip = True
download_dep_fail = True
sanity_pip_check = True

postinstallcmds = [
'mkdir -p %(installdir)s/bin %(installdir)s/doc',
'cp %(builddir)s/%(namelower)s-%(version)s/scripts/* %(installdir)s/bin',
'cp %(builddir)s/%(namelower)s-%(version)s/LICENSE %(installdir)s/doc',
'cp -r %(builddir)s/%(namelower)s-%(version)s/test_data %(installdir)s',
'cp -r %(builddir)s/%(namelower)s-%(version)s/config %(installdir)s',
]

sanity_check_paths = {
'files': ['bin/busco', 'bin/generate_plot.py'],
'dirs': ['test_data', 'lib/python%(pyshortver)s/site-packages/busco']
}

sanity_check_commands = [
"busco --help",
"busco -i %(installdir)s/test_data/bacteria/genome.fna --cpu %(parallel)s --mode geno --out test_bacteria.out",
"busco -i %(installdir)s/test_data/eukaryota/genome.fna --cpu %(parallel)s --mode geno --out test_eukaryota.out",
]

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
name = 'BamTools'
version = '2.5.2'

homepage = 'https://github.com/pezmaster31/bamtools'
description = "BamTools provides both a programmer's API and an end-user's toolkit for handling BAM files."

toolchain = {'name': 'GCC', 'version': '13.2.0'}
toolchainopts = {'pic': True}

source_urls = [GITHUB_LOWER_SOURCE]
sources = ['v%(version)s.tar.gz']
checksums = ['4d8b84bd07b673d0ed41031348f10ca98dd6fa6a4460f9b9668d6f1d4084dfc8']

builddependencies = [
('CMake', '3.27.6'),
]

# https://github.com/pezmaster31/bamtools
github_account = 'pezmaster31'

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
##
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
#
# Copyright:: Copyright 2013-2014 The Cyprus Institute
# Authors:: Thekla Loizou <[email protected]>
# License:: MIT/GPL
# $Id$
#
##
easyblock = 'PythonPackage'

name = 'DendroPy'
version = '4.6.1'

homepage = 'https://dendropy.org/'
description = """A Python library for phylogenetics and phylogenetic computing:
reading, writing, simulation, processing and manipulation of phylogenetic trees
(phylogenies) and characters."""

toolchain = {'name': 'GCCcore', 'version': '13.2.0'}

sources = [SOURCE_TAR_GZ]
checksums = ['26fcbe1cb5831301e8f1f2e15a0563620f0b8e29e6d409dd6a2a7c957dd64c16']

builddependencies = [('binutils', '2.40')]

dependencies = [('Python', '3.11.5')]

download_dep_fail = True
use_pip = True

fix_python_shebang_for = ['bin/*.py']

sanity_check_paths = {
'files': ['bin/sumlabels.py', 'bin/sumtrees.py'],
'dirs': ['lib/python%(pyshortver)s/site-packages'],
}

sanity_check_commands = ["sumtrees.py --help"]

sanity_pip_check = True

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
easyblock = 'CmdCp'

name = 'lpsolve'
version = '5.5.2.11'

homepage = 'https://sourceforge.net/projects/lpsolve/'
description = "Mixed Integer Linear Programming (MILP) solver"

toolchain = {'name': 'GCC', 'version': '13.2.0'}

source_urls = [SOURCEFORGE_SOURCE]
sources = ['lp_solve_%(version)s_source.tar.gz']
checksums = ['6d4abff5cc6aaa933ae8e6c17a226df0fc0b671c438f69715d41d09fe81f902f']

local_lpsolve_ver = '%(version_major)s%(version_minor)s'
start_dir = 'lpsolve%s' % local_lpsolve_ver

local_comp_cmd = 'sed -i "s/^c=.*/c=\'$CC\'/g" ccc && sed -i "s/^opts=.*/opts=\'$CFLAGS\'/g" ccc && '
local_comp_cmd += "sh ccc"
cmds_map = [('.*', local_comp_cmd)]

local_lpsolve_libname = 'liblpsolve%s' % local_lpsolve_ver
files_to_copy = [
(['bin/ux64/%s.a' % local_lpsolve_libname, 'bin/ux64/%s.%s' % (local_lpsolve_libname, SHLIB_EXT)], 'lib'),
(['../lp*.h'], 'include'),
]

sanity_check_paths = {
'files': ['lib/%s.a' % local_lpsolve_libname, 'lib/%s.%s' % (local_lpsolve_libname, SHLIB_EXT)],
'dirs': ['include'],
}

moduleclass = 'math'
Loading