
* Replace URL computation in base IntelOneApiPackage class with defining URLs in component packages (this is expected to be simpler for now) * Add component_dir property that all oneAPI component packages must define. This property names a directory that should exist after installation completes (useful for making sure the install was successful) and also defines the search location for the component's environment update script. * Add needed dependencies for components (e.g. intel-oneapi-dnn requires intel-oneapi-tbb). The compilers provided by intel-oneapi-compilers need some components under certain circumstances (e.g. when enabling SYCL support) but these were omitted since the libraries should only be linked when a dependent package requests that feature * Remove individual setup_run_environment implementations and use IntelOneApiPackage superclass method which sources vars.sh (located in a subdirectory of component_dir) * Add documentation for IntelOneApiPackge build system Co-authored-by: Vasily Danilin <vasily.danilin@yandex.ru>
29 lines
867 B
Python
29 lines
867 B
Python
# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
|
|
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
|
#
|
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
|
|
|
from sys import platform
|
|
|
|
from spack import *
|
|
|
|
|
|
class IntelOneapiCcl(IntelOneApiLibraryPackage):
|
|
"""Intel oneAPI CCL."""
|
|
|
|
maintainers = ['rscohn2']
|
|
|
|
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/oneccl.html'
|
|
|
|
depends_on('intel-oneapi-mpi')
|
|
|
|
if platform == 'linux':
|
|
version('2021.1.1',
|
|
sha256='de732df57a03763a286106c8b885fd60e83d17906936a8897a384b874e773f49',
|
|
url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17391/l_oneapi_ccl_p_2021.1.1.54_offline.sh',
|
|
expand=False)
|
|
|
|
@property
|
|
def component_dir(self):
|
|
return 'ccl'
|