diff options
Diffstat (limited to 'var/spack/repos/builtin/packages/raja/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/raja/package.py | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/var/spack/repos/builtin/packages/raja/package.py b/var/spack/repos/builtin/packages/raja/package.py index c2cdf5a607..95af9c750b 100644 --- a/var/spack/repos/builtin/packages/raja/package.py +++ b/var/spack/repos/builtin/packages/raja/package.py @@ -32,16 +32,31 @@ class Raja(CMakePackage, CudaPackage, ROCmPackage): variant('shared', default=True, description='Build Shared Libs') variant('examples', default=True, description='Build examples.') variant('exercises', default=True, description='Build exercises.') + # TODO: figure out gtest dependency and then set this default True + # and remove the +tests conflict below. + variant('tests', default=False, description='Build tests') - conflicts('+openmp', when='+rocm') + depends_on('blt', type='build') + depends_on('blt@0.3.7:', type='build', when='+rocm') + + depends_on('camp') + depends_on('camp+cuda', when='+cuda') + + # variants +rocm and amdgpu_targets are not automatically passed to + # dependencies, so do it manually. + depends_on('camp+rocm', when='+rocm') + for val in ROCmPackage.amdgpu_targets: + depends_on('camp amdgpu_target=%s' % val, when='amdgpu_target=%s' % val) - depends_on('cmake@3.8:', type='build') - depends_on('cmake@3.9:', when='+cuda', type='build') + conflicts('+openmp', when='+rocm') def cmake_args(self): spec = self.spec options = [] + + options.append('-DBLT_SOURCE_DIR={0}'.format(spec['blt'].prefix)) + options.append('-DENABLE_OPENMP={0}'.format( 'ON' if '+openmp' in spec else 'OFF')) @@ -84,7 +99,8 @@ class Raja(CMakePackage, CudaPackage, ROCmPackage): if self.spec.satisfies('%clang target=ppc64le:') or not self.run_tests: options.append('-DENABLE_TESTS=OFF') else: - options.append('-DENABLE_TESTS=ON') + options.append('-DENABLE_TESTS={0}'.format( + 'ON' if '+tests' in spec else 'OFF')) return options |