File: add_BLAS_LAPACK_tests.cmake

package info (click to toggle)
cmake 4.2.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 152,336 kB
  • sloc: ansic: 403,896; cpp: 303,920; sh: 4,105; python: 3,583; yacc: 3,106; lex: 1,279; f90: 538; asm: 471; lisp: 375; cs: 270; java: 266; fortran: 239; objc: 215; perl: 213; xml: 198; makefile: 111; javascript: 83; pascal: 63; tcl: 55; php: 25; ruby: 22
file content (58 lines) | stat: -rw-r--r-- 1,940 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
51
52
53
54
55
56
57
58
function(add_BLAS_LAPACK_tests var)
  if(var MATCHES "^CMake_TEST_Find(BLAS|LAPACK)$")
    set(package "${CMAKE_MATCH_1}")
  else()
    message(FATAL_ERROR "Test list variable '${var}' not supported.")
  endif()

  set(all "")
  set(compiler "")
  set(model "")
  set(static "")
  set(thread "")

  set(sizeof_int_lp64 4)
  set(sizeof_int_ilp64 8)

  foreach(variant IN LISTS ${var})
    if(variant MATCHES "^(all|compiler|model|static|thread)=(.*)$")
      set("${CMAKE_MATCH_1}" "${CMAKE_MATCH_2}")
      continue()
    elseif(variant MATCHES "^([^=]+)=(.*)$")
      message(FATAL_ERROR "Unknown variable '${variant}'")
    endif()
    set(variant_name "${variant}")
    set(variant_options "-DBLA_VENDOR=${variant}")
    if(variant STREQUAL "All" AND all)
      list(APPEND variant_options "-DEXPECT_All=${all}")
    endif()
    if(model)
      if(NOT variant_name MATCHES "Intel10_64")
        string(APPEND variant_name "_${model}")
      endif()
      list(APPEND variant_options "-DBLA_SIZEOF_INTEGER=${sizeof_int_${model}}")
    endif()
    if(compiler)
      string(APPEND variant_name "_${compiler}")
      list(APPEND variant_options "-DCMAKE_C_COMPILER=${compiler}")
    endif()
    if(static)
      string(APPEND variant_name "_Static")
      list(APPEND variant_options "-DBLA_STATIC=ON")
    endif()
    if(thread)
      string(APPEND variant_name "_${thread}")
      list(APPEND variant_options "-DBLA_THREAD=${thread}")
    endif()
    add_test(NAME Find${package}.Test_${variant_name} COMMAND
      ${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
      --build-and-test
      "${CMake_SOURCE_DIR}/Tests/Find${package}/Test"
      "${CMake_BINARY_DIR}/Tests/Find${package}/Test_${variant_name}"
      ${build_generator_args}
      --build-project TestFind${package}
      --build-options ${build_options} ${variant_options}
      --test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
      )
  endforeach()
endfunction()