message(STATUS "Using VCPKG FindLAPACK from package 'lapack-reference'")
set(z_vcpkg_lapack_prev_module_path "${CMAKE_MODULE_PATH}")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")

list(REMOVE_ITEM ARGS "MODULE" "CONFIG" "NO_MODULE")
set(z_vcpkg_lapack_args "${ARGS}")
if("${z_vcpkg_lapack_args};" MATCHES "^LAPACK;")
  list(APPEND z_vcpkg_lapack_args "MODULE")
endif()

if("@USE_OPTIMIZED_BLAS@")
  find_package(BLAS)
endif()

# BLA_VENDOR and BLA_STATIC are documented at:
# * https://cmake.org/cmake/help/latest/module/FindBLAS.html
# * https://cmake.org/cmake/help/latest/module/FindLAPACK.html

set(BLA_VENDOR "Generic")
set(BLA_STATIC "@BLA_STATIC@")
_find_package(${z_vcpkg_lapack_args})
unset(BLA_VENDOR)
unset(BLA_STATIC)
unset(z_vcpkg_lapack_args)

if("@CBLAS@")
  include(SelectLibraryConfigurations)
  find_library(CBLAS_LIBRARY_RELEASE NAMES cblas PATHS "${CURRENT_PACKAGES_DIR}/lib" NO_DEFAULT_PATH)
  find_library(CBLAS_LIBRARY_DEBUG NAMES cblas PATHS "${CURRENT_PACKAGES_DIR}/debug/lib" NO_DEFAULT_PATH)
  select_library_configurations(CBLAS)
  set(LAPACK_LIBRARIES ${LAPACK_LIBRARIES} ${CBLAS_LIBRARIES})
endif()

set(CMAKE_MODULE_PATH "${z_vcpkg_lapack_prev_module_path}")
unset(z_vcpkg_lapack_prev_module_path)
