From a9c6881bbc21f247f26d8de99a70f8a8a68f7911 Mon Sep 17 00:00:00 2001 From: Cory Bloor Date: Tue, 9 Nov 2021 03:25:03 -0700 Subject: rocsolver: Add spack test support (#26919) --- .../packages/rocsolver/link-clients-blas.patch | 22 ++++++++++++++++++++++ .../repos/builtin/packages/rocsolver/package.py | 11 ++++++++++- 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 var/spack/repos/builtin/packages/rocsolver/link-clients-blas.patch diff --git a/var/spack/repos/builtin/packages/rocsolver/link-clients-blas.patch b/var/spack/repos/builtin/packages/rocsolver/link-clients-blas.patch new file mode 100644 index 0000000000..13dfd31976 --- /dev/null +++ b/var/spack/repos/builtin/packages/rocsolver/link-clients-blas.patch @@ -0,0 +1,22 @@ +diff -r -u a/clients/benchmarks/CMakeLists.txt b/clients/benchmarks/CMakeLists.txt +--- a/clients/benchmarks/CMakeLists.txt 2021-08-14 18:54:53.356456513 -0600 ++++ b/clients/benchmarks/CMakeLists.txt 2021-08-14 18:55:25.125354419 -0600 +@@ -19,6 +19,7 @@ + target_link_libraries( rocsolver-bench PRIVATE + cblas + lapack ++ blas + Threads::Threads + hip::device + rocsolver-common +diff -r -u a/clients/gtest/CMakeLists.txt b/clients/gtest/CMakeLists.txt +--- a/clients/gtest/CMakeLists.txt 2021-08-14 18:54:53.356456513 -0600 ++++ b/clients/gtest/CMakeLists.txt 2021-08-14 18:55:16.581112850 -0600 +@@ -89,6 +89,7 @@ + target_link_libraries( rocsolver-test PRIVATE + cblas + lapack ++ blas + GTest::GTest + hip::device + rocsolver-common diff --git a/var/spack/repos/builtin/packages/rocsolver/package.py b/var/spack/repos/builtin/packages/rocsolver/package.py index 26dbff2759..f5273f545a 100644 --- a/var/spack/repos/builtin/packages/rocsolver/package.py +++ b/var/spack/repos/builtin/packages/rocsolver/package.py @@ -42,6 +42,15 @@ class Rocsolver(CMakePackage): depends_on('cmake@3.8:', type='build', when='@4.1.0:') depends_on('cmake@3.5:', type='build') + depends_on('googletest@1.10.0:', type='test') + depends_on('netlib-lapack@3.7.1:', type='test') + + patch('link-clients-blas.patch', when='@4.3.0:') + + def check(self): + exe = join_path(self.build_directory, 'clients', 'staging', 'rocsolver-test') + self.run_test(exe, options=['--gtest_filter=checkin*']) + for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0', '4.2.0', '4.3.0', '4.3.1']: depends_on('hip@' + ver, when='@' + ver) @@ -52,7 +61,7 @@ class Rocsolver(CMakePackage): tgt = self.spec.variants['amdgpu_target'].value args = [ self.define('BUILD_CLIENTS_SAMPLES', 'OFF'), - self.define('BUILD_CLIENTS_TESTS', 'OFF'), + self.define('BUILD_CLIENTS_TESTS', self.run_tests), self.define('BUILD_CLIENTS_BENCHMARKS', 'OFF') ] if self.spec.satisfies('@4.1.0'): -- cgit v1.2.3-70-g09d2