diff --git a/easybuild/easyblocks/s/scalasca1.py b/easybuild/easyblocks/s/scalasca1.py
deleted file mode 100644
index 641deb4ee7..0000000000
--- a/easybuild/easyblocks/s/scalasca1.py
+++ /dev/null
@@ -1,112 +0,0 @@
-##
-# Copyright 2013-2024 Ghent University
-#
-# This file is part of EasyBuild,
-# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
-# with support of Ghent University (http://ugent.be/hpc),
-# the Flemish Supercomputer Centre (VSC) (https://www.vscentrum.be),
-# Flemish Research Foundation (FWO) (http://www.fwo.be/en)
-# and the Department of Economy, Science and Innovation (EWI) (http://www.ewi-vlaanderen.be/en).
-#
-# https://github.com/easybuilders/easybuild
-#
-# EasyBuild is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation v2.
-#
-# EasyBuild 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
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with EasyBuild. If not, see .
-##
-"""
-EasyBuild support for Scalasca v1.x, implemented as an easyblock
-
-@author: Kenneth Hoste (Ghent University)
-@author: Bernd Mohr (Juelich Supercomputing Centre)
-"""
-import os
-from easybuild.tools import LooseVersion
-
-import easybuild.tools.toolchain as toolchain
-from easybuild.easyblocks.generic.configuremake import ConfigureMake
-from easybuild.tools.build_log import EasyBuildError
-from easybuild.tools.modules import get_software_root
-
-
-class EB_Scalasca1(ConfigureMake):
- """Support for building and installing Scalasca v1.x."""
-
- def check_readiness_step(self):
- """Make sure this easyblock is applicable to the Scalasca version being built."""
- ver = LooseVersion(self.version)
- if ver >= LooseVersion('2.0') or ver < LooseVersion('1.0'):
- raise EasyBuildError("The %s easyblock should only be used for Scalasca v1.x; "
- "for Scalasca v2.0 and more recent, try the EB_Score_minus_P easyblock.",
- self.__class__.__name__)
-
- super(EB_Scalasca1, self).check_readiness_step()
-
- def configure_step(self, *args, **kwargs):
- """Configure Scalasca build, set configure options for compiler, MPI and dependencies."""
- # compiler and MPI suite should always be specified -- MUCH quicker and SAFER than autodetect
- # --compiler=(gnu|pgi|intel|path|ibm|sun|clang)
- # --mpi=(mpich|mpich2|mpich3|lam|openmpi|intel|intel2|hp|scali|mpibull2|bullxmpi|sun|ibmpoe|intelpoe)
- comp_opts = {
- toolchain.GCC: 'gnu',
- toolchain.INTELCOMP: 'intel',
- }
- comp_fam = self.toolchain.comp_family()
- if comp_fam in comp_opts:
- self.cfg.update('configopts', "--compiler=%s" % comp_opts[comp_fam])
- else:
- raise EasyBuildError("Compiler family %s not supported yet (only: %s)",
- comp_fam, ', '.join(comp_opts.keys()))
-
- mpi_opts = {
- toolchain.INTELMPI: 'intel2', # intel: Intel MPI v1.x (ancient)
- toolchain.OPENMPI: 'openmpi',
- toolchain.MPICH: 'mpich3', # In EB terms, MPICH means MPICH 3.x; MPICH 1.x is ancient and unsupported
- toolchain.MPICH2: 'mpich2',
- }
- mpi_fam = self.toolchain.mpi_family()
- if mpi_fam in mpi_opts:
- self.cfg.update('configopts', "--mpi=%s --enable-all-mpi-wrappers" % mpi_opts[mpi_fam])
- else:
- raise EasyBuildError("MPI family %s not supported yet (only: %s)", mpi_fam, ', '.join(mpi_opts.keys()))
-
- # auto-detection for dependencies mostly works fine, but hard specify paths anyway to have full control
- deps = {
- 'binutils': ['--with-binutils=%s'],
- 'OTF': ['--with-otf=%s'],
- 'OPARI2': ['--with-opari2=%s'],
- 'PAPI': ['--with-papi=%s'],
- 'PDT': ['--with-pdt=%s'],
- }
- for (dep_name, dep_opts) in deps.items():
- dep_root = get_software_root(dep_name)
- if dep_root:
- for dep_opt in dep_opts:
- self.cfg.update('configopts', dep_opt % dep_root)
- if get_software_root('Cube'):
- self.cfg.update('configopts', '--disable-gui')
-
- super(EB_Scalasca1, self).configure_step(*args, **kwargs)
-
- def build_step(self):
- """Build Scalasca using make, after stepping into the build dir."""
- build_dir_found = False
- try:
- for entry in os.listdir(os.getcwd()):
- if entry.startswith('build-linux-') and os.path.isdir(entry):
- os.chdir(entry)
- build_dir_found = True
- self.log.info("Stepped into build dir %s" % entry)
- except OSError as err:
- raise EasyBuildError("Failed to step into build dir before starting actual build: %s", err)
- if not build_dir_found:
- raise EasyBuildError("Could not find build dir to step into.")
- super(EB_Scalasca1, self).build_step()
diff --git a/easybuild/easyblocks/s/shrimp.py b/easybuild/easyblocks/s/shrimp.py
deleted file mode 100644
index 9c28875e35..0000000000
--- a/easybuild/easyblocks/s/shrimp.py
+++ /dev/null
@@ -1,96 +0,0 @@
-##
-# Copyright 2009-2024 Ghent University
-#
-# This file is part of EasyBuild,
-# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
-# with support of Ghent University (http://ugent.be/hpc),
-# the Flemish Supercomputer Centre (VSC) (https://www.vscentrum.be),
-# Flemish Research Foundation (FWO) (http://www.fwo.be/en)
-# and the Department of Economy, Science and Innovation (EWI) (http://www.ewi-vlaanderen.be/en).
-#
-# https://github.com/easybuilders/easybuild
-#
-# EasyBuild is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation v2.
-#
-# EasyBuild 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
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with EasyBuild. If not, see .
-##
-"""
-EasyBuild support for SHRiMP, implemented as an easyblock
-
-@author: Kenneth Hoste (Ghent University)
-"""
-import glob
-import os
-import shutil
-
-import easybuild.tools.environment as env
-from easybuild.easyblocks.generic.configuremake import ConfigureMake
-from easybuild.tools.build_log import EasyBuildError
-
-
-class EB_SHRiMP(ConfigureMake):
- """Support for building SHRiMP."""
-
- def configure_step(self):
- """Add openmp compilation flag to CXX_FLAGS."""
-
- cxxflags = os.getenv('CXXFLAGS')
-
- env.setvar('CXXFLAGS', "%s %s" % (cxxflags, self.toolchain.get_flag('openmp')))
-
- def install_step(self):
- """Install SHRiMP by copying files to install dir, and fix permissions."""
-
- try:
- for d in ["bin", "utils"]:
- shutil.copytree(d, os.path.join(self.installdir, d))
-
- cwd = os.getcwd()
-
- os.chdir(os.path.join(self.installdir, 'utils'))
- for f in glob.glob("*.py"):
- self.log.info("Fixing permissions of %s in utils" % f)
- os.chmod(f, 0o755)
-
- os.chdir(cwd)
-
- except OSError as err:
- raise EasyBuildError("Failed to copy files to install dir: %s", err)
-
- def sanity_check_step(self):
- """Custom sanity check for SHRiMP."""
-
- custom_paths = {
- 'files': ['bin/%s' % x for x in ['fasta2fastq', 'gmapper', 'mergesam',
- 'prettyprint', 'probcalc', 'probcalc_mp',
- 'shrimp2sam', 'shrimp_var']],
- 'dirs': ['utils'],
- }
-
- super(EB_SHRiMP, self).sanity_check_step(custom_paths=custom_paths)
-
- def make_module_req_guess(self):
- """Add both 'bin' and 'utils' directories to PATH."""
-
- guesses = super(EB_SHRiMP, self).make_module_req_guess()
-
- guesses.update({'PATH': ['bin', 'utils']})
-
- return guesses
-
- def make_module_extra(self):
- """Set SHRIMP_FOLDER environment variable in module."""
-
- txt = super(EB_SHRiMP, self).make_module_extra()
-
- txt += self.module_generator.set_environment('SHRIMP_FOLDER', self.installdir)
-
- return txt
diff --git a/easybuild/easyblocks/s/soapdenovo.py b/easybuild/easyblocks/s/soapdenovo.py
deleted file mode 100644
index 79c9176c37..0000000000
--- a/easybuild/easyblocks/s/soapdenovo.py
+++ /dev/null
@@ -1,66 +0,0 @@
-##
-# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
-#
-# Copyright:: Copyright 2012-2024 Uni.Lu/LCSB, NTUA
-# Authors:: Cedric Laczny , Fotis Georgatos , Kenneth Hoste
-# License:: MIT/GPL
-# $Id$
-#
-# This work implements a part of the HPCBIOS project and is a component of the policy:
-# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html
-##
-"""
-EasyBuild support for building SOAPdenovo, implemented as an easyblock
-
-@author: Cedric Laczny (Uni.Lu)
-@author: Fotis Georgatos (Uni.Lu)
-@author: Kenneth Hoste (Ghent University)
-"""
-import os
-import shutil
-
-from easybuild.easyblocks.generic.configuremake import ConfigureMake
-from easybuild.tools.build_log import EasyBuildError
-
-
-class EB_SOAPdenovo(ConfigureMake):
- """
- Support for building SOAPdenovo.
- """
-
- def __init__(self, *args, **kwargs):
- """Define lists of files to install."""
- super(EB_SOAPdenovo, self).__init__(*args, **kwargs)
-
- self.bin_suffixes = ["31mer", "63mer", "127mer"]
-
- def configure_step(self):
- """
- Skip the configure as not part of this build process
- """
- pass
-
- def install_step(self):
- """
- Install by copying files to install dir
- """
- srcdir = self.cfg['start_dir']
- destdir = os.path.join(self.installdir, 'bin')
- srcfile = None
- try:
- os.makedirs(destdir)
- for suff in self.bin_suffixes:
- srcfile = os.path.join(srcdir, "bin", "SOAPdenovo-%s" % suff)
- shutil.copy2(srcfile, destdir)
- except OSError as err:
- raise EasyBuildError("Copying %s to installation dir %s failed: %s", srcfile, destdir, err)
-
- def sanity_check_step(self):
- """Custom sanity check for SOAPdenovo."""
-
- custom_paths = {
- 'files': ['bin/SOAPdenovo-%s' % x for x in self.bin_suffixes],
- 'dirs': []
- }
-
- super(EB_SOAPdenovo, self).sanity_check_step(custom_paths=custom_paths)
diff --git a/easybuild/easyblocks/u/ufc.py b/easybuild/easyblocks/u/ufc.py
deleted file mode 100644
index cbf087b08a..0000000000
--- a/easybuild/easyblocks/u/ufc.py
+++ /dev/null
@@ -1,94 +0,0 @@
-##
-# Copyright 2012-2024 Ghent University
-#
-# This file is part of EasyBuild,
-# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en),
-# with support of Ghent University (http://ugent.be/hpc),
-# the Flemish Supercomputer Centre (VSC) (https://www.vscentrum.be),
-# Flemish Research Foundation (FWO) (http://www.fwo.be/en)
-# and the Department of Economy, Science and Innovation (EWI) (http://www.ewi-vlaanderen.be/en).
-#
-# https://github.com/easybuilders/easybuild
-#
-# EasyBuild is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation v2.
-#
-# EasyBuild 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
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with EasyBuild. If not, see .
-##
-"""
-EasyBuild support for UFC, implemented as an easyblock
-
-@author: Kenneth Hoste (Ghent University)
-"""
-from easybuild.tools import LooseVersion
-
-from easybuild.easyblocks.generic.cmakepythonpackage import CMakePythonPackage
-from easybuild.tools.build_log import EasyBuildError
-from easybuild.tools.modules import get_software_root, get_software_version
-from easybuild.tools.systemtools import get_shared_lib_ext
-
-
-class EB_UFC(CMakePythonPackage):
- """Support for building UFC."""
-
- def __init__(self, *args, **kwargs):
- """Custom initialization for UFC: set correct module name."""
- super(EB_UFC, self).__init__(*args, **kwargs)
-
- self.options.update({'modulename': 'ufc_utils'})
-
- def configure_step(self):
- """Set some extra environment variables before configuring."""
- shlib_ext = get_shared_lib_ext()
-
- # make sure that required dependencies are loaded
- deps = ['Boost', 'Python', 'SWIG']
- depsdict = {}
- for dep in deps:
- deproot = get_software_root(dep)
- if not deproot:
- raise EasyBuildError("%s module not loaded?", dep)
- else:
- depsdict.update({dep: deproot})
-
- # SWIG version more recent than 2.0.4 have a regression
- # which causes problems with e.g. DOLFIN if UFC was built with it
- # fixed in 2.0.7? see https://bugs.launchpad.net/dolfin/+bug/996398
- if LooseVersion(get_software_version('SWIG')) > '2.0.4':
- raise EasyBuildError("Using bad version of SWIG, expecting swig <= 2.0.4. "
- "See https://bugs.launchpad.net/dolfin/+bug/996398")
-
- self.pyver = ".".join(get_software_version('Python').split(".")[:-1])
-
- self.cfg.update('configopts', "-DBoost_DIR=%s" % depsdict['Boost'])
- self.cfg.update('configopts', "-DBOOST_INCLUDEDIR=%s/include" % depsdict['Boost'])
- self.cfg.update('configopts', "-DBoost_DEBUG=ON -DBOOST_ROOT=%s" % depsdict['Boost'])
-
- self.cfg.update('configopts', '-DUFC_ENABLE_PYTHON:BOOL=ON')
- self.cfg.update('configopts', '-DSWIG_FOUND:BOOL=ON')
- python = depsdict['Python']
- self.cfg.update('configopts', '-DPYTHON_LIBRARY=%s/lib/libpython%s.%s' % (python, self.pyver, shlib_ext))
- self.cfg.update('configopts', '-DPYTHON_INCLUDE_PATH=%s/include/python%s' % (python, self.pyver))
-
- super(EB_UFC, self).configure_step()
-
- def test_step(self):
- """No test suite available for UFC."""
- # PythonPackage defines 'runtest' as 'True' by default, but ConfigureMake.test_step expects string value
- # no test suite available anyway for UFC, so just pass through
- pass
-
- def sanity_check_step(self):
- """Custom sanity check for UFC."""
- custom_paths = {
- 'files': ['include/ufc.h'],
- 'dirs': ['lib/python%s/site-packages/%s/' % (self.pyver, x) for x in ['ufc', 'ufc_utils']],
- }
- super(EB_UFC, self).sanity_check_step(custom_paths=custom_paths)