@@ -24,6 +24,8 @@ option(BUILD_LAPACK_DEPRECATED "When building LAPACK, include also some older, d
2424
2525option (BUILD_TESTING "Build LAPACK testsuite when building LAPACK" ON )
2626
27+ option (BUILD_BENCHMARKS "Build the collection of BLAS/LAPACK benchmarks" OFF )
28+
2729option (C_LAPACK "Build LAPACK from C sources instead of the original Fortran" OFF )
2830
2931option (BUILD_WITHOUT_CBLAS "Do not build the C interface (CBLAS) to the BLAS functions" OFF )
@@ -328,7 +330,7 @@ if (NOT NOFORTRAN)
328330 # Build test and ctest
329331 add_subdirectory (test )
330332 endif ()
331- if (BUILD_TESTING)
333+ if (BUILD_TESTING AND NOT BUILD_WITHOUT_LAPACK )
332334 add_subdirectory (lapack-netlib/TESTING )
333335 endif ()
334336endif ()
@@ -458,9 +460,35 @@ if (BUILD_SHARED_LIBS AND NOT ${SYMBOLPREFIX}${SYMBOLSUFFIX} STREQUAL "")
458460 endif()
459461endif()
460462
461- if (BUILD_TESTING )
462- find_package(OpenMP REQUIRED)
463+ if (BUILD_BENCHMARKS )
464+ # find_package(OpenMP REQUIRED)
463465 file(GLOB SOURCES " benchmark/*.c ")
466+ if (NOT USE_OPENMP)
467+ file(GLOB REMFILE " benchmark/smallscaling.c ")
468+ list(REMOVE_ITEM SOURCES ${REMFILE} )
469+ endif()
470+ if (BUILD_WITHOUT_LAPACK)
471+ file(GLOB REMFILE " benchmark/cholesky.c ")
472+ list(REMOVE_ITEM SOURCES ${REMFILE} )
473+ file(GLOB REMFILE " benchmark/geev.c ")
474+ list(REMOVE_ITEM SOURCES ${REMFILE} )
475+ file(GLOB REMFILE " benchmark/gesv.c ")
476+ list(REMOVE_ITEM SOURCES ${REMFILE} )
477+ file(GLOB REMFILE " benchmark/getri.c ")
478+ list(REMOVE_ITEM SOURCES ${REMFILE} )
479+ file(GLOB REMFILE " benchmark/potrf.c ")
480+ list(REMOVE_ITEM SOURCES ${REMFILE} )
481+ file(GLOB REMFILE " benchmark/spmv.c ")
482+ list(REMOVE_ITEM SOURCES ${REMFILE} )
483+ file(GLOB REMFILE " benchmark/symv.c ")
484+ list(REMOVE_ITEM SOURCES ${REMFILE} )
485+ file(GLOB REMFILE " benchmark/linpack.c ")
486+ list(REMOVE_ITEM SOURCES ${REMFILE} )
487+ endif()
488+ if (NOT USE_GEMM3M)
489+ file(GLOB REMFILE " benchmark/gemm3m.c ")
490+ list(REMOVE_ITEM SOURCES ${REMFILE} )
491+ endif()
464492 foreach(source ${SOURCES} )
465493 get_filename_component(name ${source} NAME_WE)
466494 if ((NOT ${name} STREQUAL " zdot-intel ") AND (NOT ${name} STREQUAL " cula_wrapper "))
@@ -477,7 +505,8 @@ if (BUILD_TESTING)
477505 (NOT ${target_name} STREQUAL " benchmark_min_COMPLEX ") AND (NOT ${target_name} STREQUAL " benchmark_min_COMPLEX_DOUBLE "))
478506 add_executable(${target_name} ${source} )
479507 target_include_directories(${target_name} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} )
480- target_link_libraries(${target_name} ${OpenBLAS_LIBNAME} OpenMP::OpenMP_C)
508+ target_link_libraries(${target_name} ${OpenBLAS_LIBNAME} )
509+ # target_link_libraries(${target_name} ${OpenBLAS_LIBNAME} OpenMP::OpenMP_C)
481510 if (NOT " ${define} " STREQUAL " DEFAULT ")
482511 target_compile_definitions(${target_name} PRIVATE ${define} )
483512 endif()
0 commit comments