summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/bricks/bricks-cmakelists-option-opencl.patch17
-rw-r--r--var/spack/repos/builtin/packages/bricks/package.py7
2 files changed, 22 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/bricks/bricks-cmakelists-option-opencl.patch b/var/spack/repos/builtin/packages/bricks/bricks-cmakelists-option-opencl.patch
new file mode 100644
index 0000000000..8b55d6e707
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bricks/bricks-cmakelists-option-opencl.patch
@@ -0,0 +1,17 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 58dcbd4..f0658eb 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -43,7 +43,11 @@ endif()
+
+ find_package(OpenMP REQUIRED)
+ find_package(MPI)
+-find_package(OpenCL 2.0)
++
++option(BRICK_USE_OPENCL "Use OpenCL targets" ON)
++if (BRICK_USE_OPENCL)
++ find_package(OpenCL 2.0)
++endif()
+
+ option(BRICK_USE_MEMFD "Using memfd instead of shm_open, supported on Linux >= 3.17 with \"CONFIG_MEMFD_CREATE\"" OFF)
+ if (BRICK_USE_MEMFD)
diff --git a/var/spack/repos/builtin/packages/bricks/package.py b/var/spack/repos/builtin/packages/bricks/package.py
index e3419602cf..d20d9f170f 100644
--- a/var/spack/repos/builtin/packages/bricks/package.py
+++ b/var/spack/repos/builtin/packages/bricks/package.py
@@ -35,10 +35,13 @@ class Bricks(CMakePackage):
depends_on("cuda", when="+cuda")
depends_on("mpi")
+ patch("bricks-cmakelists-option-opencl.patch")
+
def cmake_args(self):
"""CMake arguments for configure stage"""
- args = []
-
+ args = [self.define_from_variant("BRICK_USE_OPENCL", "cuda")]
+ if "+cuda" in self.spec:
+ args.append(f"-DOCL_ROOT:STRING={self.spec['opencl-clhpp'].prefix}")
return args
def flag_handler(self, name, flags):