File: Enable-changing-directory-for-test-data.patch

package info (click to toggle)
rocblas 6.4.3%2Bdfsg-1~exp1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 1,062,992 kB
  • sloc: cpp: 244,982; f90: 50,012; python: 49,959; sh: 24,623; asm: 2,878; makefile: 149; ansic: 107; xml: 36; awk: 14
file content (50 lines) | stat: -rw-r--r-- 1,838 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
From: Christian Kastner <ckk@debian.org>
Date: Mon, 7 Jul 2025 16:55:32 +0200
Subject: Enable changing directory for test data

On Debian, we install to a versioned directory based on the library
name.

Forwarded: not-needed
---
 clients/gtest/CMakeLists.txt         |  5 +++++
 clients/gtest/rocblas_gtest_main.cpp | 10 +++++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/clients/gtest/CMakeLists.txt b/clients/gtest/CMakeLists.txt
index 790b904..1bab604 100644
--- a/clients/gtest/CMakeLists.txt
+++ b/clients/gtest/CMakeLists.txt
@@ -140,6 +140,11 @@ target_compile_options(rocblas-test PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${COMMON_C
 
 target_compile_definitions( rocblas-test PRIVATE ROCM_USE_FLOAT16 ROCBLAS_INTERNAL_API ROCBLAS_NO_DEPRECATED_WARNINGS )
 
+# Debian
+if (DEFINED INSTALL_TEST_DATA_DIR)
+    target_compile_definitions( rocblas-test PRIVATE INSTALL_TEST_DATA_DIR="${INSTALL_TEST_DATA_DIR}")
+endif()
+
 if ( WARN_NOT_ILP64_PREFERRED )
   target_compile_definitions( rocblas-test PRIVATE ROCBLAS_REFERENCE_LIB=${BLAS_LIBRARY} )
 endif()
diff --git a/clients/gtest/rocblas_gtest_main.cpp b/clients/gtest/rocblas_gtest_main.cpp
index 20202e7..0553aac 100644
--- a/clients/gtest/rocblas_gtest_main.cpp
+++ b/clients/gtest/rocblas_gtest_main.cpp
@@ -350,7 +350,15 @@ int main(int argc, char** argv)
     rocblas_print_usage_warning();
 
     // Set data file path
-    rocblas_parse_data(argc, argv, rocblas_exepath() + "rocblas_gtest.data");
+#ifdef INSTALL_TEST_DATA_DIR
+    std::string exe_path = INSTALL_TEST_DATA_DIR;
+    if (exe_path.back() != '/') {
+        exe_path += '/';
+    }
+#else
+    std::string exe_path = rocblas_exepath();
+#endif
+    rocblas_parse_data(argc, argv, exe_path + "rocblas_gtest.data");
 
     // Initialize Google Tests
     testing::InitGoogleTest(&argc, argv);