diff --git a/easyconfigs/c/CmdStan/CmdStan-2.37.0-gompi-2024a.eb b/easyconfigs/c/CmdStan/CmdStan-2.37.0-gompi-2024a.eb new file mode 100644 index 00000000..1da33238 --- /dev/null +++ b/easyconfigs/c/CmdStan/CmdStan-2.37.0-gompi-2024a.eb @@ -0,0 +1,65 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'MakeCp' + +name = 'CmdStan' +version = '2.37.0' + +homepage = "https://mc-stan.org/" +description = """CmdStan is the command line interface to Stan.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} + +sources = [{ + 'filename': SOURCE_TAR_GZ, + 'git_config': { + 'url': 'https://github.com/stan-dev/', + 'repo_name': '%(namelower)s', + 'tag': 'v%(version)s', + 'recursive': True, + }, +}] + +checksums = [ + {'CmdStan-2.37.0.tar.gz': '7368ff365fb5df990e4bf246d83f166e736afc5ac29d50415461b752282a0ab2'}, +] + +builddependencies = [ + ('binutils', '2.42'), +] + +dependencies = [ + ('Python', '3.12.3'), +] + +skipsteps = ['configure'] + +# Create /make/local with our options +prebuildopts = "cp make/local.example make/local && " +prebuildopts += "sed -i 's/^#\\s*STAN_THREADS=true/STAN_THREADS=true/' make/local && " +prebuildopts += "sed -i 's/^#\\s*STAN_MPI=true/STAN_MPI=true/' make/local &&" +prebuildopts += "sed -i 's/^#\\s*STAN_CPP_OPTIMS=true/STAN_CPP_OPTIMS=true/' make/local && " +prebuildopts += 'echo "LDLIBS += -lmpi" >> make/local && ' + +# We need to build the example for CmdStanPy testing +build_cmd = "make build" + +files_to_copy = [ + (['bin/stanc', 'bin/stansummary', 'bin/diagnose'], 'bin'), + (['examples'], ''), + (['LICENSE'], ''), + (['make'], ''), + (['stan'], ''), + (['src'], ''), + (['makefile', 'runCmdStanTests.py', 'test-all.sh'], ''), +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['stanc', 'stansummary', 'diagnose']] + ['makefile'], + 'dirs': ['examples', 'src'], +} + +sanity_check_commands = [ + 'stanc --help', +] + +moduleclass = 'tools' diff --git a/easyconfigs/c/CmdStanPy/CmdStanPy-1.3.0-foss-2024a.eb b/easyconfigs/c/CmdStanPy/CmdStanPy-1.3.0-foss-2024a.eb new file mode 100644 index 00000000..9703c82d --- /dev/null +++ b/easyconfigs/c/CmdStanPy/CmdStanPy-1.3.0-foss-2024a.eb @@ -0,0 +1,39 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'PythonBundle' + +name = 'CmdStanPy' +version = '1.3.0' + +homepage = "https://mc-stan.org/" +description = """CmdStanPy is a lightweight pure-Python interface to CmdStan which provides access + to the Stan compiler and all inference algorithms.""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), + ('tqdm', '4.66.5'), + ('CmdStan', '2.37.0'), + ('xarray', '2024.11.0'), # for [all] + ('polars', '1.31.0'), # for [all] +] + +exts_list = [ + ('stanio', '0.5.1', { + 'checksums': ['348d52f947dec431e118f4b601c4c5296929b86401d4d4dd5aa9373b0d4ae4ac'], + }), + ('cmdstanpy', version, { + 'use_pip_extras': 'all', + 'checksums': ['60b10d110993bd8345735994786b2b17782fdc5530a6adbc0cd8ec836d82c2b9'], + }), +] + +modloadmsg = """ +Set environment variable CMDSTAN to the location of the CmdStan installation. + +Example: + export CMDSTAN=/path/to/cmdstan/installation +""" + +moduleclass = 'tools'