legion: add mpi interoperability and shared libs (#3959)
* legion: add mpi inoperability * legion: make +mpi the default * legion: add shared variant
This commit is contained in:
parent
dd5f4cb251
commit
54bfa888b9
@ -47,9 +47,13 @@ class Legion(CMakePackage):
|
|||||||
version('17.02.0', '31ac3004e2fb0996764362d2b6f6844a')
|
version('17.02.0', '31ac3004e2fb0996764362d2b6f6844a')
|
||||||
|
|
||||||
variant('debug', default=False, description='Build debug version')
|
variant('debug', default=False, description='Build debug version')
|
||||||
|
variant('mpi', default=True,
|
||||||
|
description='Build on top of mpi conduit for mpi inoperability')
|
||||||
|
variant('shared', default=True, description='Build shared libraries')
|
||||||
|
|
||||||
depends_on("cmake@3.1:", type='build')
|
depends_on("cmake@3.1:", type='build')
|
||||||
depends_on("gasnet")
|
depends_on("gasnet", when='~mpi')
|
||||||
|
depends_on("gasnet+mpi", when='+mpi')
|
||||||
|
|
||||||
def build_type(self):
|
def build_type(self):
|
||||||
spec = self.spec
|
spec = self.spec
|
||||||
@ -59,4 +63,12 @@ def build_type(self):
|
|||||||
return 'Release'
|
return 'Release'
|
||||||
|
|
||||||
def cmake_args(self):
|
def cmake_args(self):
|
||||||
return ['-DLegion_USE_GASNet=ON', '-DLegion_BUILD_EXAMPLES=ON']
|
options = [
|
||||||
|
'-DLegion_USE_GASNet=ON',
|
||||||
|
'-DLegion_BUILD_EXAMPLES=ON',
|
||||||
|
'-DBUILD_SHARED_LIBS=%s' % ('+shared' in spec)]
|
||||||
|
|
||||||
|
if '+mpi' in self.spec:
|
||||||
|
options.append('-DGASNet_CONDUIT=mpi')
|
||||||
|
|
||||||
|
return options
|
||||||
|
Loading…
Reference in New Issue
Block a user