# IT4Innovations 2023
# JK, LK
# pokus o na prase instalaci devel verze, ktera by v budoucnu mela byt mergnuta do GROMACSu
# GCC <= 9

name = 'GROMACS'
version = '2022'
versionsuffix = '-CUDA-12.0.0-constantph'
local_commit = '9bb0cc2f'

homepage = 'https://www.gromacs.org'
description = """
GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the
Newtonian equations of motion for systems with hundreds to millions of
particles.

This is a CPU only build, containing both MPI and threadMPI builds
for both single and double precision.

It also contains the gmxapi extension for the single precision MPI build.
"""

toolchain = {'name': 'foss', 'version': '2020a'}
toolchainopts = {'openmp': True, 'usempi': True}

source_urls = ['https://gitlab.com/gromacs-constantph/constantph/-/archive/main/']
sources = [{'download_filename': 'constantph-main.tar.gz', 'filename': 'gromacs-2022-contstantph.tar.gz', 
'extract_cmd': "tar -xzvf %s --strip 1 constantph-main/gromacs-constantph"}]
patches = [
    'GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch',
    'GROMACS-2019_increase_test_timeout_for_GPU.patch',
    'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch',
    'GROMACS-2022-constantph-fix_missing_header.patch',
#    'GROMACS-2021.5_fix_threads_gpu_Gmxapitests.patch',
]
checksums = [
    {'gromacs-2022-contstantph.tar.gz': '58c5b4353de41996a62bbfc0288eb1487eb7ee189210388009776968f4ade9c8'},
    {'GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch':
     '406f5edd204be812f095a6f07ebc2673c5f6ddf1b1c1428fd336a80b9c629275'},
    {'GROMACS-2019_increase_test_timeout_for_GPU.patch':
     '0d16f53d428155197a0ed0b0974ce03422f199d7c463c4a9156a3b99e3c86234'},
    {'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch':
     'b7ffb292ec362e033db1bedd340353f0644dbaae872127750f3dda1ac7e87d49'},
    {'GROMACS-2022-constantph-fix_missing_header.patch':
     '1c4a9601c58e6a0c5bc4959790dc1a519c8cbca35b5ca0ac5c12e8a31198b3df'},
]

builddependencies = [
    ('CMake', '3.16.4'),
    ('scikit-build', '0.10.0', '-Python-3.8.2'),
]

dependencies = [
    ('Python', '3.8.2'),
    ('SciPy-bundle', '2020.03', '-Python-3.8.2'),
    ('networkx', '2.4', '-Python-3.8.2'),
    ('CUDA', '12.0.0', '', True),
]

modextrapaths = {
    'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages',
}

cuda_compute_capabilities = ['3.5', '3.7', '5.2', '6.0', '6.1', '7.0', '7.2', '7.5', '8.0']

moduleclass = 'bio'
