From 20243f09858f5a04e656c01211a2d5aa5c24736f Mon Sep 17 00:00:00 2001
From: Florent Pruvost <florent.pruvost@inria.fr>
Date: Fri, 30 Jan 2015 16:00:12 +0000
Subject: [PATCH] check if each precision is activated for the testing and
 timing executables

---
 testing/CTestLists.cmake | 46 ++++++++++++++++++++++------------------
 timing/CTestLists.cmake  | 30 ++++++++++++++++++--------
 2 files changed, 46 insertions(+), 30 deletions(-)

diff --git a/testing/CTestLists.cmake b/testing/CTestLists.cmake
index a546c6918..854bfc8c8 100644
--- a/testing/CTestLists.cmake
+++ b/testing/CTestLists.cmake
@@ -15,27 +15,31 @@ endif()
 foreach(cat  ${TEST_CATEGORIES})
   foreach(prec ${RP_CHAMELEON_PRECISIONS})
 
-    add_test(test_${cat}_${prec}gemm  ./${prec}${TEST_CMD_${cat}} GEMM  1.0 -2.0 600 500 550 650 625 700)
-    add_test(test_${cat}_${prec}lange ./${prec}${TEST_CMD_${cat}} LANGE 600 500 600)
-    add_test(test_${cat}_${prec}trsm  ./${prec}${TEST_CMD_${cat}} TRSM  -2.0 600 500 650 625)
-    add_test(test_${cat}_${prec}trmm  ./${prec}${TEST_CMD_${cat}} TRMM  -2.0 600 500 650 625)
-    add_test(test_${cat}_${prec}symm  ./${prec}${TEST_CMD_${cat}} SYMM  1.0 -2.0 600 500 650 625 700)
-    add_test(test_${cat}_${prec}syrk  ./${prec}${TEST_CMD_${cat}} SYRK  1.0 -2.0 600 500 650 625)
-    add_test(test_${cat}_${prec}syr2k ./${prec}${TEST_CMD_${cat}} SYR2K 1.0 -2.0 600 500 650 625 700)
-
-    if ( "${prec}" STREQUAL "c" OR "${prec}" STREQUAL "z" )
-      add_test(test_${cat}_${prec}hemm  ./${prec}${TEST_CMD_${cat}} HEMM      1.0 -2.0 600 500 650 625 600)
-      add_test(test_${cat}_${prec}herk  ./${prec}${TEST_CMD_${cat}} HERK      1.0 -2.0 600 500 650 625)
-      add_test(test_${cat}_${prec}her2k ./${prec}${TEST_CMD_${cat}} HER2K     1.0 -2.0 600 500 650 625 700)
-    endif()
-
-     add_test(test_${cat}_${prec}posv        ./${prec}${TEST_CMD_${cat}} POSV        500 600 25 700)
-     add_test(test_${cat}_${prec}potri       ./${prec}${TEST_CMD_${cat}} POTRI       500 600)
-     add_test(test_${cat}_${prec}gels_qr     ./${prec}${TEST_CMD_${cat}} GELS        0 800 400 825 25 810)
-     add_test(test_${cat}_${prec}gels_hqr    ./${prec}${TEST_CMD_${cat}} GELS        1 800 400 825 25 810 4)
-     add_test(test_${cat}_${prec}gels_lq     ./${prec}${TEST_CMD_${cat}} GELS        0 400 800 825 25 810)
-     add_test(test_${cat}_${prec}gels_hlq    ./${prec}${TEST_CMD_${cat}} GELS        1 400 800 825 25 810 4)
-     add_test(test_${cat}_${prec}gesv_incpiv ./${prec}${TEST_CMD_${cat}} GESV_INCPIV 800 825 25 810)
+    string(TOUPPER ${prec} PREC)
+
+    if (CHAMELEON_PREC_${PREC})
+        add_test(test_${cat}_${prec}gemm  ./${prec}${TEST_CMD_${cat}} GEMM  1.0 -2.0 600 500 550 650 625 700)
+        add_test(test_${cat}_${prec}lange ./${prec}${TEST_CMD_${cat}} LANGE 600 500 600)
+        add_test(test_${cat}_${prec}trsm  ./${prec}${TEST_CMD_${cat}} TRSM  -2.0 600 500 650 625)
+        add_test(test_${cat}_${prec}trmm  ./${prec}${TEST_CMD_${cat}} TRMM  -2.0 600 500 650 625)
+        add_test(test_${cat}_${prec}symm  ./${prec}${TEST_CMD_${cat}} SYMM  1.0 -2.0 600 500 650 625 700)
+        add_test(test_${cat}_${prec}syrk  ./${prec}${TEST_CMD_${cat}} SYRK  1.0 -2.0 600 500 650 625)
+        add_test(test_${cat}_${prec}syr2k ./${prec}${TEST_CMD_${cat}} SYR2K 1.0 -2.0 600 500 650 625 700)
+
+        if ( "${prec}" STREQUAL "c" OR "${prec}" STREQUAL "z" )
+          add_test(test_${cat}_${prec}hemm  ./${prec}${TEST_CMD_${cat}} HEMM      1.0 -2.0 600 500 650 625 600)
+          add_test(test_${cat}_${prec}herk  ./${prec}${TEST_CMD_${cat}} HERK      1.0 -2.0 600 500 650 625)
+          add_test(test_${cat}_${prec}her2k ./${prec}${TEST_CMD_${cat}} HER2K     1.0 -2.0 600 500 650 625 700)
+        endif()
+
+         add_test(test_${cat}_${prec}posv        ./${prec}${TEST_CMD_${cat}} POSV        500 600 25 700)
+         add_test(test_${cat}_${prec}potri       ./${prec}${TEST_CMD_${cat}} POTRI       500 600)
+         add_test(test_${cat}_${prec}gels_qr     ./${prec}${TEST_CMD_${cat}} GELS        0 800 400 825 25 810)
+         add_test(test_${cat}_${prec}gels_hqr    ./${prec}${TEST_CMD_${cat}} GELS        1 800 400 825 25 810 4)
+         add_test(test_${cat}_${prec}gels_lq     ./${prec}${TEST_CMD_${cat}} GELS        0 400 800 825 25 810)
+         add_test(test_${cat}_${prec}gels_hlq    ./${prec}${TEST_CMD_${cat}} GELS        1 400 800 825 25 810 4)
+         add_test(test_${cat}_${prec}gesv_incpiv ./${prec}${TEST_CMD_${cat}} GESV_INCPIV 800 825 25 810)
+     endif()
 
   endforeach()
 endforeach()
diff --git a/timing/CTestLists.cmake b/timing/CTestLists.cmake
index 06e9f0f0d..5f39d14de 100644
--- a/timing/CTestLists.cmake
+++ b/timing/CTestLists.cmake
@@ -35,14 +35,22 @@ set(TESTLIST_ZC
 
 foreach(cat ${TEST_CATEGORIES})
     foreach(prec ${RP_CHAMELEON_PRECISIONS})
-        foreach(test ${TESTLIST})
-            add_test(time_${cat}_${prec}${test} ${MPI_CMD_${cat}} ./time_${prec}${test}_tile ${TEST_CMD_${cat}} --check --nowarmup)
-        endforeach()
+        string(TOUPPER ${prec} PREC)
+
+        if (CHAMELEON_PREC_${PREC})
+            foreach(test ${TESTLIST})
+                add_test(time_${cat}_${prec}${test} ${MPI_CMD_${cat}} ./time_${prec}${test}_tile ${TEST_CMD_${cat}} --check --nowarmup)
+            endforeach()
+        endif()
     endforeach()
     foreach(prec ${CHAMELEON_PRECISIONS_ZC})
-        foreach(test ${TESTLIST_ZC})
-            add_test(time_${cat}_${prec}${test} ${MPI_CMD_${cat}} ./time_${prec}${test}_tile ${TEST_CMD_${cat}} --check --nowarmup)
-        endforeach()
+        string(TOUPPER ${prec} PREC)
+
+        if (CHAMELEON_PREC_${PREC})
+            foreach(test ${TESTLIST_ZC})
+                add_test(time_${cat}_${prec}${test} ${MPI_CMD_${cat}} ./time_${prec}${test}_tile ${TEST_CMD_${cat}} --check --nowarmup)
+            endforeach()
+        endif()
     endforeach()
 endforeach()
 
@@ -59,9 +67,13 @@ if (CHAMELEON_USE_MPI AND MPI_C_FOUND)
         )
     foreach(cat ${TEST_CATEGORIES})
         foreach(prec ${RP_CHAMELEON_PRECISIONS})
-            foreach(test ${TESTLIST_MPI})
-                add_test(time_${cat}_${prec}${test} ${MPI_CMD_${cat}} ./time_${prec}${test}_tile ${TEST_CMD_${cat}} --check --nowarmup)
-            endforeach()
+            string(TOUPPER ${prec} PREC)
+
+            if (CHAMELEON_PREC_${PREC})
+                foreach(test ${TESTLIST_MPI})
+                    add_test(time_${cat}_${prec}${test} ${MPI_CMD_${cat}} ./time_${prec}${test}_tile ${TEST_CMD_${cat}} --check --nowarmup)
+                endforeach()
+            endif()
         endforeach()
     endforeach()
 endif()
-- 
GitLab