Skip to content

[SCOTCH] [package list]

SCOTCH/7.0.4-cpeAMD-24.03 (SCOTCH-7.0.4-cpeAMD-24.03.eb)

To access module help and find out for which stacks and partitions the module is installed, use module spider SCOTCH/7.0.4-cpeAMD-24.03.

EasyConfig:

# provided by mkra (CSCS), 2018
# Adapted by Kurt Lust (kurt.lust@uantwerpen.be) for the LUMI consortium
easyblock = 'EB_SCOTCH_CPE'

local_SCOTCH7_version =      '7.0.4'         # https://gforge.inria.fr/projects/scotch/

local_bzip2_version =        '1.0.8'         # http://www.bzip.org/downloads.html
local_XZ_version =           '5.4.4'         # https://tukaani.org/xz/
local_zlib_version =         '1.3.1'         # https://zlib.net/

name =    'SCOTCH'
version = local_SCOTCH7_version

homepage = 'https://www.labri.fr/perso/pelegrin/scotch/'

whatis = [
    'Description: Scotch is a software package for graph and mesh/hypergraph partitioning, graph clustering, and sparse matrix ordering'
]

description = """
Scotch is a software package and libraries for sequential and parallel graph
partitioning, static mapping, and sparse matrix block ordering, and sequential
mesh and hypergraph partitioning.

The module provides static libraries only. The library is compiled with support
for GZ-, BZ2- and LZMA-compressed graph files.


LICENSE
=======
SCOTCH is licensed under the CeCILL-C Free Software License Agreement, see
https://cecill.info/licences/Licence_CeCILL-C_V1-en.html.
"""

software_license_urls = [
    'https://cecill.info/licences/Licence_CeCILL-C_V1-en.html',
    f'https://gitlab.inria.fr/scotch/scotch/-/blob/v{version}/doc/CeCILL-C_V1-en.txt?ref_type=tags',
]

toolchain = {'name': 'cpeAMD', 'version': '24.03'}
toolchainopts = {'pic': True}

sources = [
    {   # https://gitlab.inria.fr/scotch/scotch/-/archive/v6.1.2/scotch-v6.1.3.tar.gz
        'filename': '%(namelower)s_v%(version)s.tar.gz',
        'source_urls': ['https://gitlab.inria.fr/scotch/scotch/-/archive/v%(version)s/'],
        'extract_cmd': 'tar xvf %s ; mv scotch-v%(version)s* scotch-%(version)s'
    },
    {
        'filename': 'Makefile.inc.CPE.%(version)s',
        'extract_cmd': 'cp %s scotch-%(version)s/src/Make.inc/Makefile.inc.CPE',
    },
]
#checksums =   [
#    '8ef4719d6a3356e9c4ca7fefd7e2ac40deb69779a5c116f44da75d13b3d2c2c3' # scotch_v7.1.4.tar.gz
#]

builddependencies = [ # Create a reproducible build environment.
    ('buildtools',   '%(toolchain_version)s',   '', True), # For CMake
]

dependencies = [
    ('bzip2', local_bzip2_version),
    ('XZ',    local_XZ_version),
    ('zlib',  local_zlib_version),
]

# Doesn't need ROCm or BLAS, and module unload never fails so this is safe.
preconfigopts = 'module unload cray-libsci rocm && '
prebuildopts = preconfigopts
pretestopts = preconfigopts
preinstallopts = preconfigopts

postinstallcmds = [
    'mkdir -p %(installdir)s/share/licenses/%(name)s',
    'cd %(start_dir)s && cp LICENSE_en.txt README.md README.txt %(installdir)s/share/licenses/%(name)s',   
]

moduleclass = 'math'

[SCOTCH] [package list]