# IT4Innovations 2020

easyblock = 'PythonBundle'

name = 'numba'
version = '0.48.0'
versionsuffix = "-Py-3.7"


homepage = 'https://numba.pydata.org/'
description = """Numba is an Open Source NumPy-aware optimizing compiler for
Python sponsored by Continuum Analytics, Inc. It uses the remarkable LLVM
compiler infrastructure to compile Python syntax to machine code."""

toolchain = {'name': 'intel', 'version': '2020a'}
toolchainopts = {'pic': True}

dependencies = [
    ('numpy', '1.18.1', versionsuffix, True),
    ('scipy', '1.3.3', versionsuffix, True),
    ('pandas', '1.0.0', versionsuffix, True),
    ('mpmath', '1.1.0', versionsuffix, True),
    ('mpi4py', '3.0.1', versionsuffix),
    ('LLVM', '8.0.1', '', ('GCCcore', '8.3.0')),
    ('tbb', '2019_U9', '', ('GCCcore', '8.3.0')),
]

#use_pip = True
#sanity_pip_check = True

exts_default_options = {'source_urls': [PYPI_SOURCE]}

exts_list = [
    ('llvmlite', '0.31.0', {
        'patches': ['llvmlite-0.31.0_fix-ffi-Makefile.patch'],
        'preinstallopts': "export LLVM_CONFIG=${EBROOTLLVM}/bin/llvm-config && ",
        'checksums': [
            '22ab2b9d7ec79fab66ac8b3d2133347de86addc2e2df1b3793e523ac84baa3c8',  # llvmlite-0.31.0.tar.gz
            # llvmlite-0.31.0_fix-ffi-Makefile.patch
            '672aba7b753dcfe5cb07c731bf1ec8bde1de148d4e0e2d10f6be81fb17f34bbc',
        ],
    }),
    (name, version, {
        'checksums': ['9d21bc77e67006b5723052840c88cc59248e079a907cc68f1a1a264e1eaba017'],
    }),
]

fix_python_shebang_for = ['bin/*']

sanity_check_paths = {
    'files': ['bin/numba', 'bin/pycc'],
    'dirs': ['lib/python3.7/site-packages'],
}

sanity_check_commands = ["numba --help"]

moduleclass = 'lang'
