intel-oneapi-mpi: virtual provider support (#20732)
Set up environment and dependent packages properly when building with intel-oneapi-mpi as a dependency MPI provider (e.g. point to mpicc compiler wrapper).
This commit is contained in:
parent
1d4cbcd93f
commit
ea0b001597
@ -28,6 +28,20 @@ def __init__(self, spec):
|
|||||||
url_name='mpi_oneapi')
|
url_name='mpi_oneapi')
|
||||||
super(IntelOneapiMpi, self).__init__(spec)
|
super(IntelOneapiMpi, self).__init__(spec)
|
||||||
|
|
||||||
|
def setup_dependent_package(self, module, dep_spec):
|
||||||
|
dir = join_path(self.prefix, 'mpi', 'latest', 'bin')
|
||||||
|
self.spec.mpicc = join_path(dir, 'mpicc')
|
||||||
|
self.spec.mpicxx = join_path(dir, 'mpicxx')
|
||||||
|
self.spec.mpif77 = join_path(dir, 'mpif77')
|
||||||
|
self.spec.mpifc = join_path(dir, 'mpifc')
|
||||||
|
|
||||||
|
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||||
|
env.set('MPICH_CC', spack_cc)
|
||||||
|
env.set('MPICH_CXX', spack_cxx)
|
||||||
|
env.set('MPICH_F77', spack_f77)
|
||||||
|
env.set('MPICH_F90', spack_fc)
|
||||||
|
env.set('MPICH_FC', spack_fc)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def libs(self):
|
def libs(self):
|
||||||
libs = []
|
libs = []
|
||||||
|
Loading…
Reference in New Issue
Block a user