GSL/2.8-cpeAMD-25.09-sequential (GSL-2.8-cpeAMD-25.09-sequential.eb)
To access module help and find out for which stacks and partitions the module is
installed, use module spider GSL/2.8-cpeAMD-25.09-sequential.
EasyConfig:
#DOC This version of GSL is compiled without OpenMP support and hence uses the
#DOC serial non-threaded version of the Cray Scientific Libraries.
#
easyblock = 'ConfigureMake'
local_GSL_version = '2.8' # https://ftp.gnu.org/gnu/gsl/
name = 'GSL'
version = local_GSL_version
versionsuffix = '-sequential'
homepage = 'http://www.gnu.org/software/gsl/'
whatis = [
"Description: GSL is the GNU Scientific Library, a numerical library for C and C++ programmers."
]
description = """
The GNU Scientific Library (GSL) is a numerical library for C and C++
programmers. The library provides a wide range of mathematical routines
such as random number generators, special functions and least-squares
fitting.
This version of GSL is compiled with OpenMP support and hence uses the
OpenMP parallel multithreaded version of the Cray Scientific Libraries.
"""
software_license_urls = [
'https://www.gnu.org/licenses/gpl.html',
]
toolchain = {'name': 'cpeAMD', 'version': '25.09'}
toolchain_opts = {'opt': True, 'optarch': True, 'unroll': True, 'pic': True, 'verbose': True, 'openmp': False}
source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['6a99eeed15632c6354895b1dd542ed5a855c0f15d9ad1326c6fe2b2c9e423190']
build_deps = [ # Create a reproducible build environment.
('buildtools', '%(toolchain_version)s', '', True),
]
# Doesn't need MPI, and module unload never fails so this is safe.
pre_configure_opts = 'module unload cray-mpich xpmem craype-accel-amd-gfx90a && '
pre_build_opts = pre_configure_opts
pre_test_opts = pre_configure_opts
pre_install_opts = pre_configure_opts
configure_opts = "--with-pic"
post_install_cmds = [
'mkdir -p %(installdir)s/share/licenses/%(name)s',
'cp AUTHORS BUGS COPYING NEWS README THANKS %(installdir)s/share/licenses/%(name)s',
]
sanity_check_paths = {
'files': ['lib/libgsl.so', 'lib/libgsl.a', 'lib/libgslcblas.so', 'lib/libgslcblas.a',
f'share/licenses/{name}/COPYING'],
'dirs': ['include', 'lib'],
}
sanity_check_cmds = [
'gsl-config --version',
'gsl-histogram --version',
'gsl-randist 0 10000 cauchy 30 | gsl-histogram -100 100 200 >/dev/null',
'pkg-config --libs gsl',
]
env_mod_category = 'numlib'