|
|
|
cmake_minimum_required(VERSION 3.5)
|
|
|
|
project(TestFindBLAS C)
|
|
|
|
include(CTest)
|
|
|
|
|
|
|
|
find_package(BLAS REQUIRED)
|
|
|
|
|
|
|
|
if(NOT BLA_SIZEOF_INTEGER)
|
|
|
|
set(BLA_SIZEOF_INTEGER 4)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
add_executable(test_tgt main.c)
|
|
|
|
target_link_libraries(test_tgt BLAS::BLAS)
|
|
|
|
target_compile_definitions(test_tgt PUBLIC BLA_SIZEOF_INTEGER=${BLA_SIZEOF_INTEGER})
|
|
|
|
add_test(NAME test_tgt COMMAND test_tgt)
|
|
|
|
|
|
|
|
add_executable(test_var main.c)
|
|
|
|
target_link_libraries(test_var PRIVATE ${BLAS_LIBRARIES})
|
|
|
|
target_compile_definitions(test_var PUBLIC BLA_SIZEOF_INTEGER=${BLA_SIZEOF_INTEGER})
|
|
|
|
add_test(NAME test_var COMMAND test_var)
|
|
|
|
|
|
|
|
if((BLA_VENDOR STREQUAL "Intel10_64lp") OR
|
|
|
|
(BLA_VENDOR STREQUAL "All" AND EXPECT_All STREQUAL "Intel10_64lp"))
|
|
|
|
if(NOT BLAS_LIBRARIES MATCHES "^(-Wl,--start-group;)?[^;]*mkl_intel_lp64")
|
|
|
|
message(FATAL_ERROR "BLAS_LIBRARIES does not start in mkl_intel_lp64:\n ${BLAS_LIBRARIES}")
|
|
|
|
endif()
|
|
|
|
elseif((BLA_VENDOR STREQUAL "Intel10_64ilp") OR
|
|
|
|
(BLA_VENDOR STREQUAL "All" AND EXPECT_All STREQUAL "Intel10_64ilp"))
|
|
|
|
if(NOT BLAS_LIBRARIES MATCHES "^(-Wl,--start-group;)?[^;]*mkl_intel_ilp64")
|
|
|
|
message(FATAL_ERROR "BLAS_LIBRARIES does not start in mkl_intel_ilp64:\n ${BLAS_LIBRARIES}")
|
|
|
|
endif()
|
|
|
|
endif()
|