Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 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
42 changes: 42 additions & 0 deletions easybuild/easyconfigs/c/CD-HIT/CD-HIT-4.8.1-GCC-11.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild

easyblock = 'MakeCp'

name = 'CD-HIT'
version = '4.8.1'

homepage = 'https://github.com/weizhongli/cdhit/wiki'
description = """ CD-HIT is a very widely used program for clustering and
comparing protein or nucleotide sequences."""

toolchain = {'name': 'GCC', 'version': '11.3.0'}
toolchainopts = {'openmp': True}

source_urls = ['https://github.com/weizhongli/cdhit/releases/download/V%(version)s/']
sources = ['%(namelower)s-v%(version)s-2019-0228.tar.gz']
checksums = ['26172dba3040d1ae5c73ff0ac6c3be8c8e60cc49fc7379e434cdf9cb1e7415de']

dependencies = [
('Perl', '5.34.1'),
('zlib', '1.2.12'),
]

# make sure compilation flags are passed down (e.g. to enable OpenMP)
buildopts = ' CC="$CXX" CCFLAGS="$CPPFLAGS $CXXFLAGS"'

# put here the list of generated executables when compiling
local_list_of_executables = ['cd-hit', 'cd-hit-est', 'cd-hit-2d', 'cd-hit-est-2d', 'cd-hit-div', 'cd-hit-454']

# this is the real EasyBuild line to copy all the executables and perl scripts to "bin"
files_to_copy = [(local_list_of_executables, 'bin'), (['*.pl'], 'bin'), 'README', 'doc', 'license.txt']

fix_perl_shebang_for = ['bin/*.pl']

sanity_check_paths = {
'files': ['bin/%s' % x for x in local_list_of_executables],
'dirs': [],
}

sanity_check_commands = ["cd-hit -h | grep 'CD-HIT version %(version)s'"]

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

name = 'GenomeTools'
version = '1.6.2'

homepage = 'http://genometools.org'
description = "A comprehensive software library for efficient processing of structured genome annotations."

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

github_account = 'genometools'
source_urls = [GITHUB_LOWER_SOURCE]
sources = ['v%(version)s.tar.gz']
checksums = ['974825ddc42602bdce3d5fbe2b6e2726e7a35e81b532a0dc236f6e375d18adac']

# GenomeTools-1.6.2 has the following libraries bundled with it:
# bzip2-1.0.6, cgilua-5.1.3, expat-2.0.1, lpeg-0.10.2, lua-5.1.5, luafilesystem-1.5.0, md5-1.2,
# samtools-0.1.18, sqlite-3.33.0, tre-0.8.0, zlib-1.2.8
#
# Bundled libraries can be globally disabled with the option useshared=yes
# However, it is preferable to use the bundled libraries due to the very old versions of some of them

builddependencies = [('pkgconf', '1.8.0')]
dependencies = [('Pango', '1.50.7')]

skipsteps = ['configure']

buildopts = 'useshared=no errorcheck=no cairo=yes threads=yes'
installopts = 'prefix=%(installdir)s'

sanity_check_paths = {
'files': ['bin/gt', 'bin/genometools-config', 'lib/libgenometools.a', 'lib/libgenometools.%s' % SHLIB_EXT],
'dirs': ['include', 'share'],
}

sanity_check_commands = ['gt -help']

moduleclass = 'bio'
44 changes: 44 additions & 0 deletions easybuild/easyconfigs/k/Kent_tools/Kent_tools-442-GCC-11.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
easyblock = 'MakeCp'

name = 'Kent_tools'
version = '442'

homepage = 'https://genome.cse.ucsc.edu/'
description = """Kent utilities: collection of tools used by the UCSC genome browser."""

toolchain = {'name': 'GCC', 'version': '11.3.0'}
source_urls = [
'https://hgdownload.cse.ucsc.edu/admin/exe/',
'https://hgdownload.cse.ucsc.edu/admin/exe/userApps.archive/',
]
sources = ['userApps.v%(version)s.src.tgz']
patches = ['%(name)s-442_openssl.patch']
checksums = [
{'userApps.v442.src.tgz': 'c54711b4a4c35de3c8c3094ed21b95a8b330e4132e19ef4c21020b24406d910c'},
{'Kent_tools-442_openssl.patch': '219ff93006553098c21d5ff05248163c952a5086e2547b2b29f88a2d1a0a2e53'},
]

dependencies = [
('MariaDB', '10.9.3'),
('libpng', '1.6.37'),
('zlib', '1.2.12'),
('util-linux', '2.38'),
('OpenSSL', '1.1', '', SYSTEM),
('freetype', '2.12.1'),
]

buildopts = 'CC="$CC" COPT="$CFLAGS -fcommon" PNGLIB="-L$EBROOTLIBPNG/lib -lpng" ZLIB="-L$EBROOTZLIB/lib -lz" '
buildopts += 'SSL_DIR="$EBROOTOPENSSL" SSLDIR="$EBROOTOPENSSL" MYSQLLIBS="-L$EBROOTMARIADB/lib -lmariadb -lstdc++" '

local_binaries = ['blat', 'bedPartition', 'getRna', 'liftOver', 'mafGene', 'splitFile', 'twoBitToFa']

files_to_copy = [(['bin/*'], 'bin'), 'licenseBlat.txt', 'licenseUcscGenomeBrowser.txt']

sanity_check_paths = {
'files': ['bin/%s' % x for x in local_binaries],
'dirs': [],
}

sanity_check_commands = ["%s 2>&1 | grep '^usage:'" % x for x in local_binaries]

moduleclass = 'bio'
60 changes: 60 additions & 0 deletions easybuild/easyconfigs/k/Kent_tools/Kent_tools-442_openssl.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
Patch to ensure SSL will be picked up by EasyBuild and not the OS. Important for older OpenSSL versions
original Author: J. Sassmannshausen / GSTT
updated for v442 by Samuel Moors (Vrije Universiteit Brussel)
diff -ur userApps.orig/kent/src/inc/common.mk userApps/kent/src/inc/common.mk
--- userApps.orig/kent/src/inc/common.mk 2023-01-18 01:19:26.000000000 +0100
+++ userApps/kent/src/inc/common.mk 2023-02-01 14:06:02.404382429 +0100
@@ -133,7 +133,7 @@
ifneq (${SSL_DIR}, "/usr/include/openssl")
ifneq ($(UNAME_S),Darwin)
ifneq ($(wildcard ${SSL_DIR}),)
- L+=-L${SSL_DIR}/lib
+ L+=-L${SSL_DIR}/lib -lssl -lcrypto
endif
endif
HG_INC+=-I${SSL_DIR}/include
@@ -142,44 +142,6 @@
ifeq (${IS_HGWDEV},yes)
L+=/hive/groups/browser/freetype/freetype-2.10.0/objs/.libs/libfreetype.a -lbz2
L+=/usr/lib64/libssl.a /usr/lib64/libcrypto.a -lkrb5 -lk5crypto -ldl
-else
- ifeq (${CONDA_BUILD},1)
- L+=${PREFIX}/lib/libssl.a ${PREFIX}/lib/libcrypto.a -ldl
- else
- ifneq ($(wildcard /opt/homebrew/Cellar/openssl@3/3.0.7/lib/libssl.a),)
- L+=/opt/homebrew/Cellar/openssl@3/3.0.7/lib/libssl.a
- else
- ifneq ($(wildcard /opt/local/lib/libssl.a),)
- L+=/opt/local/lib/libssl.a
- else
- ifneq ($(wildcard /usr/lib/x86_64-linux-gnu/libssl.a),)
- L+=/usr/lib/x86_64-linux-gnu/libssl.a
- else
- ifneq ($(wildcard /usr/local/opt/openssl/lib/libssl.a),)
- L+=/usr/local/opt/openssl/lib/libssl.a
- else
- L+=-lssl
- endif
- endif
- endif
- endif
- ifneq ($(wildcard /opt/homebrew/Cellar/openssl@3/3.0.7/lib/libcrypto.a),)
- L+=/opt/homebrew/Cellar/openssl@3/3.0.7/lib/libcrypto.a
- else
- ifneq ($(wildcard /opt/local/lib/libcrypto.a),)
- L+=/opt/local/lib/libcrypto.a
- else
- ifneq ($(wildcard /usr/local/opt/openssl/lib/libcrypto.a),)
- L+=/usr/local/opt/openssl/lib/libcrypto.a
- else
- L+=-lcrypto
- endif
- endif
- endif
- ifneq ($(wildcard /opt/homebrew/Cellar/zstd/1.5.2/lib/libzstd.a),)
- L+=/opt/homebrew/Cellar/zstd/1.5.2/lib/libzstd.a
- endif
- endif
endif

# autodetect where libm is installed
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Author: Jasper Grimm (UoY)

easyblock = 'Tarball'

name = 'LTR_retriever'
version = '2.9.0'

homepage = 'https://github.com/oushujun/LTR_retriever'
description = """LTR_retriever is a highly accurate and sensitive program for
identification of LTR retrotransposons; The LTR Assembly Index (LAI) is also
included in this package.
"""

toolchain = {'name': 'foss', 'version': '2022a'}

github_account = 'oushujun'
source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.tar.gz']
checksums = ['e2d94f6179c33990a77fa9fdcefb842c8481b4c30833c9c12cbbe54cb3fdda73']

dependencies = [
('Perl', '5.34.1'),
('BLAST+', '2.13.0'),
('RepeatMasker', '4.1.4'),
('HMMER', '3.3.2'),
('CD-HIT', '4.8.1'),
('TRF', '4.09.1'),
]

sanity_check_paths = {
'files': ['LTR_retriever'],
'dirs': ['bin', 'database'],
}

sanity_check_commands = [("LTR_retriever -h 2>&1 | grep 'Usage: LTR_retriever'", '')]

modextrapaths = {'PATH': ''}

moduleclass = 'bio'
40 changes: 40 additions & 0 deletions easybuild/easyconfigs/r/RECON/RECON-1.08-GCC-11.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
easyblock = 'MakeCp'

name = 'RECON'
version = '1.08'

homepage = 'https://www.repeatmasker.org/RepeatModeler/'
description = """Patched version of RECON to be used with RepeatModeler."""

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

source_urls = ['https://www.repeatmasker.org/RepeatModeler/']
sources = ['%(name)s-%(version)s.tar.gz']
checksums = ['699765fa49d18dbfac9f7a82ecd054464b468cb7521abe9c2bd8caccf08ee7d8']

dependencies = [('Perl', '5.34.1')]

start_dir = 'src'

buildopts = 'CC="$CC"'

local_bins = ['edgeredef', 'eledef', 'eleredef', 'famdef', 'imagespread']
local_scripts = ['scripts/%s' % x for x in ['MSPCollect.pl', 'recon.pl']]

files_to_copy = [
(['src/%s' % x for x in local_bins], 'bin'),
'scripts', 'COPYRIGHT', 'LICENSE', '00README',
]

postinstallcmds = ["sed -i 's|$path = \"\"|$path = \"%(installdir)s/bin\"|g' %(installdir)s/scripts/recon.pl"]

sanity_check_paths = {
'files': ['bin/%s' % x for x in local_bins] + local_scripts,
'dirs': [],
}

sanity_check_commands = [("recon.pl 2>&1 | grep 'usage: recon seq_name_list_file MSP_file integer'", '')]

modextrapaths = {'PATH': 'scripts'}

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

name = 'RepeatModeler'
version = '2.0.4'

homepage = 'https://www.repeatmasker.org/'
description = """RepeatModeler is a de novo transposable element (TE) family identification and modeling package. """

toolchain = {'name': 'foss', 'version': '2022a'}

source_urls = ['https://www.repeatmasker.org/RepeatModeler']
sources = [SOURCE_TAR_GZ]
checksums = ['94aad46cc70911d48de3001836fc3165adb95b2b282b5c53ab0d1da98c27a6b6']

dependencies = [
('Perl', '5.34.1'),
('TRF', '4.09.1'),
('RMBlast', '2.13.0'),
('RepeatMasker', '4.1.4'),
('RepeatScout', '1.0.6'),
('RECON', '1.08'),
('Kent_tools', '442'),
('CD-HIT', '4.8.1'),
# Optional (required for LTR pipeline):
('MAFFT', '7.505', '-with-extensions'),
('GenomeTools', '1.6.2'), # for LTRHarvest
('LTR_retriever', '2.9.0'),
('TWL-NINJA', '0.98-cluster_only'),
]

_tmpl = "\"/'%s' =>/,/'value' => '/s|'value' =>.*|'value' => '%s'|\""

postinstallcmds = [
' '.join([
'sed -i',
'-e', _tmpl % ('CDHIT_DIR', '$EBROOTCDMINHIT/bin'),
'-e', _tmpl % ('GENOMETOOLS_DIR', '$EBROOTGENOMETOOLS/bin'),
'-e', _tmpl % ('LTR_RETRIEVER_DIR', '$EBROOTLTR_RETRIEVER'),
'-e', _tmpl % ('MAFFT_DIR', '$EBROOTMAFFT/bin'),
'-e', _tmpl % ('NINJA_DIR', '$EBROOTTWLMINNINJA/bin'),
'-e', _tmpl % ('RECON_DIR', '$EBROOTRECON/bin'),
'-e', _tmpl % ('REPEATMASKER_DIR', '$EBROOTREPEATMASKER'),
'-e', _tmpl % ('RMBLAST_DIR', '$EBROOTRMBLAST/bin'),
'-e', _tmpl % ('RSCOUT_DIR', '$EBROOTREPEATSCOUT'),
'-e', _tmpl % ('TRF_DIR', '$EBROOTTRF/bin'),
'-e', _tmpl % ('UCSCTOOLS_DIR', '$EBROOTKENT_TOOLS/bin'),
'%(installdir)s/RepModelConfig.pm',
]),
]

_bins = ['BuildDatabase', 'LTRPipeline', 'RepeatClassifier', 'Refiner', 'TRFMask', 'util/CntSubst', 'util/Linup']

fix_perl_shebang_for = _bins + ['util/*.pl']

modextrapaths = {
'PATH': '',
'PERL5LIB': '',
}

sanity_check_paths = {
'files': _bins + ['Job.pm', 'RepeatUtil.pm', 'RepModelConfig.pm'],
'dirs': ['Libraries', 'Matrices', 'util'],
}

sanity_check_commands = ["RepeatModeler -help | grep 'RepeatModeler - Model repetitive DNA'"]

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Author: Jasper Grimm (UoY)

easyblock = 'ConfigureMake'

name = 'RepeatScout'
version = '1.0.6'

homepage = 'https://www.repeatmasker.org/'
description = """De Novo Repeat Finder, Price A.L., Jones N.C. and Pevzner P.A. Developed and
tested with our multiple sequence version of RepeatScout ( 1.0.6 )"""

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

source_urls = ['https://www.repeatmasker.org']
sources = ['RepeatScout-%(version)s.tar.gz']
checksums = ['31a44cf648d78356aec585ee5d3baf936d01eaba43aed382d9ac2d764e55b716']

dependencies = [
('Perl', '5.34.1'),
('TRF', '4.09.1'),
]

skipsteps = ['configure']

prebuildopts = "sed -i -e 's|mkdir|mkdir -p|g' -e 's|VERSION = .*|VERSION = %(version)s|g' Makefile &&"

installopts = 'INSTDIR="%(installdir)s"'

sanity_check_paths = {
'files': [name, 'build_lmer_table', 'README'],
'dirs': [],
}

sanity_check_commands = [("RepeatScout 2>&1 | grep 'Usage:\nRepeatScout'", '')]

modextrapaths = {'PATH': ''}

moduleclass = 'bio'
Loading