# IT4Innovations
# LK 2021

name = 'Python'
version = '3.8.6'
versionsuffix = '-NetKet'

homepage = 'https://python.org/'
description = """Python is a programming language that lets you work more quickly and integrate your systems
 more effectively."""

toolchain = {'name': 'GCC', 'version': '10.2.0'}
toolchainopts = {'pic': True}

source_urls = ['https://www.python.org/ftp/%(namelower)s/%(version)s/']
sources = [SOURCE_TGZ]
checksums = ['313562ee9986dc369cd678011bdfd9800ef62fbf7b1496228a18f86b36428c21']

builddependencies = [
    ('UnZip', '6.0'),
]

dependencies = [
    ('binutils', '2.35'),
    ('bzip2', '1.0.8'),  # required for bz2 package in Python stdlib
    ('zlib', '1.2.11'),
    ('libreadline', '8.0'),
    ('ncurses', '6.2'),
    ('SQLite', '3.33.0'),
    ('XZ', '5.2.5'),
    ('GMP', '6.2.0'),  # required for pycrypto
    ('libffi', '3.3'),
    ('CUDA', '11.4.1', '', True),
    # OS dependency should be preferred if the os version is more recent then this version,
    # it's nice to have an up to date openssl for security reasons
    # Python 3.7 requires OpenSSL >= 1.0.2, uncomment line below if OS version is too old (e.g. CentOS 6)
    # ('OpenSSL', '1.1.1h'),
]

osdependencies = [OS_PKG_OPENSSL_DEV]

install_pip = True

exts_default_options = {
    'download_dep_fail': True,
    'sanity_pip_check': True,
    'source_urls': [PYPI_SOURCE],
    'use_pip': True,
}


# order is important!
# package versions updated 13 October 2020
exts_list = [
    ('setuptools', '50.3.0', {
        'source_tmpl': '%(name)s-%(version)s.zip',
        'checksums': ['39060a59d91cf5cf403fa3bacbb52df4205a8c3585e0b9ba4b30e0e19d4c4b18'],
    }),
    ('wheel', '0.35.1', {
        'checksums': ['99a22d87add3f634ff917310a3d87e499f19e663413a52eb9232c447aa646c9f'],
    }),
    ('pip', '20.2.3', {
        'checksums': ['30c70b6179711a7c4cf76da89e8a0f5282279dfb0278bec7b94134be92543b6d'],
    }),
]

moduleclass = 'lang'
