aboutsummaryrefslogtreecommitdiff
path: root/ports/lapack-reference
diff options
context:
space:
mode:
Diffstat (limited to 'ports/lapack-reference')
-rw-r--r--ports/lapack-reference/CONTROL2
-rw-r--r--ports/lapack-reference/FindLAPACK.cmake23
-rw-r--r--ports/lapack-reference/vcpkg-cmake-wrapper.cmake13
3 files changed, 15 insertions, 23 deletions
diff --git a/ports/lapack-reference/CONTROL b/ports/lapack-reference/CONTROL
index d44258412..3d8bb855d 100644
--- a/ports/lapack-reference/CONTROL
+++ b/ports/lapack-reference/CONTROL
@@ -1,6 +1,6 @@
Source: lapack-reference
Version: 3.8.0
-Port-Version: 2
+Port-Version: 3
Description: LAPACK — Linear Algebra PACKage http://www.netlib.org/lapack/
Default-Features: blas-select
Build-Depends: vcpkg-gfortran (windows)
diff --git a/ports/lapack-reference/FindLAPACK.cmake b/ports/lapack-reference/FindLAPACK.cmake
index b6df00319..a411c7c18 100644
--- a/ports/lapack-reference/FindLAPACK.cmake
+++ b/ports/lapack-reference/FindLAPACK.cmake
@@ -86,6 +86,7 @@ This module defines the following variables:
find_package(LAPACK)
#]=======================================================================]
+enable_language(C)
# Check the language being used
if(NOT (CMAKE_C_COMPILER_LOADED OR CMAKE_CXX_COMPILER_LOADED OR CMAKE_Fortran_COMPILER_LOADED))
if(LAPACK_FIND_REQUIRED)
@@ -109,20 +110,6 @@ set(CMAKE_REQUIRED_QUIET ${LAPACK_FIND_QUIETLY})
set(LAPACK_FOUND FALSE)
set(LAPACK95_FOUND FALSE)
-set(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
-if(BLA_STATIC)
- if(WIN32)
- set(CMAKE_FIND_LIBRARY_SUFFIXES .lib ${CMAKE_FIND_LIBRARY_SUFFIXES})
- else()
- set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
- endif()
-else()
- if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
- # for ubuntu's libblas3gf and liblapack3gf packages
- set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES} .so.3gf)
- endif()
-endif()
-
# TODO: move this stuff to a separate module
macro(CHECK_LAPACK_LIBRARIES LIBRARIES _prefix _name _flags _list _threadlibs _addlibdir _subdirs _blas)
@@ -202,11 +189,8 @@ set(LAPACK_LINKER_FLAGS)
set(LAPACK_LIBRARIES)
set(LAPACK95_LIBRARIES)
-if(LAPACK_FIND_QUIETLY OR NOT LAPACK_FIND_REQUIRED)
- find_package(BLAS)
-else()
- find_package(BLAS REQUIRED)
-endif()
+include(CMakeFindDependencyMacro)
+find_dependency(BLAS)
if(BLAS_FOUND)
set(LAPACK_LINKER_FLAGS ${BLAS_LINKER_FLAGS})
@@ -565,4 +549,3 @@ if(NOT TARGET LAPACK::LAPACK)
endif()
cmake_pop_check_state()
-set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
diff --git a/ports/lapack-reference/vcpkg-cmake-wrapper.cmake b/ports/lapack-reference/vcpkg-cmake-wrapper.cmake
index a91b040ca..b3a7128ff 100644
--- a/ports/lapack-reference/vcpkg-cmake-wrapper.cmake
+++ b/ports/lapack-reference/vcpkg-cmake-wrapper.cmake
@@ -1,2 +1,11 @@
-message(STATUS "Using VCPKG FindLAPACK. Remove if CMake has been updated to account for -lm and -lgfortran in lapack-reference!")
-include(${CMAKE_CURRENT_LIST_DIR}/FindLAPACK.cmake)
+message(STATUS "Using VCPKG FindLAPACK from package 'lapack-reference'")
+set(LAPACK_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
+list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
+
+list(REMOVE_ITEM ARGS "NO_MODULE")
+list(REMOVE_ITEM ARGS "CONFIG")
+list(REMOVE_ITEM ARGS "MODULE")
+
+_find_package(${ARGS})
+
+set(CMAKE_MODULE_PATH ${LAPACK_PREV_MODULE_PATH})