Skip to content

Commit 5f80e42

Browse files
committed
cmake: update OpenBLAS support
- reorder path HINTS to avoid conflicts with other LAPACK libraries - add extern "C" { } to avoid generation of C++ symbols
1 parent 7b0d2d1 commit 5f80e42

File tree

2 files changed

+19
-18
lines changed

2 files changed

+19
-18
lines changed

cmake/OpenCVFindLAPACK.cmake

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,11 @@ macro(ocv_lapack_check)
3131
else()
3232
# adding proxy opencv_lapack.h header
3333
set(CBLAS_H_PROXY_PATH ${CMAKE_BINARY_DIR}/opencv_lapack.h)
34-
set(_lapack_include_str "\#include \"${OPENCV_CBLAS_H_PATH_${_lapack_impl}}\"")
34+
set(_lapack_include_str "extern \"C\" {\n\#include \"${OPENCV_CBLAS_H_PATH_${_lapack_impl}}\"")
3535
if(NOT "${OPENCV_CBLAS_H_PATH_${_lapack_impl}}" STREQUAL "${OPENCV_LAPACKE_H_PATH_${_lapack_impl}}")
3636
set(_lapack_include_str "${_lapack_include_str}\n#include \"${OPENCV_LAPACKE_H_PATH_${_lapack_impl}}\"")
3737
endif()
38+
set(_lapack_include_str "${_lapack_include_str}\n}\n")
3839
# update file contents (if required)
3940
set(__content_str "")
4041
if(EXISTS "${CBLAS_H_PROXY_PATH}")

cmake/OpenCVFindOpenBLAS.cmake

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -44,35 +44,35 @@
4444
#license and copyright terms herein.
4545

4646
SET(Open_BLAS_INCLUDE_SEARCH_PATHS
47-
/usr/include
47+
$ENV{OpenBLAS_HOME}
48+
$ENV{OpenBLAS_HOME}/include
49+
/opt/OpenBLAS/include
50+
/usr/local/include/openblas
4851
/usr/include/openblas
52+
/usr/local/include/openblas-base
4953
/usr/include/openblas-base
5054
/usr/local/include
51-
/usr/local/include/openblas
52-
/usr/local/include/openblas-base
53-
/opt/OpenBLAS/include
54-
$ENV{OpenBLAS_HOME}
55-
$ENV{OpenBLAS_HOME}/include
55+
/usr/include
5656
)
5757

5858
SET(Open_BLAS_LIB_SEARCH_PATHS
59-
/lib/
60-
/lib/openblas-base
61-
/lib64/
62-
/usr/lib
63-
/usr/lib/openblas-base
64-
/usr/lib64
65-
/usr/local/lib
66-
/usr/local/lib64
67-
/opt/OpenBLAS/lib
6859
$ENV{OpenBLAS}cd
6960
$ENV{OpenBLAS}/lib
7061
$ENV{OpenBLAS_HOME}
7162
$ENV{OpenBLAS_HOME}/lib
63+
/opt/OpenBLAS/lib
64+
/usr/local/lib64
65+
/usr/local/lib
66+
/lib/openblas-base
67+
/lib64/
68+
/lib/
69+
/usr/lib/openblas-base
70+
/usr/lib64
71+
/usr/lib
7272
)
7373

74-
FIND_PATH(OpenBLAS_INCLUDE_DIR NAMES cblas.h PATHS ${Open_BLAS_INCLUDE_SEARCH_PATHS})
75-
FIND_LIBRARY(OpenBLAS_LIB NAMES openblas PATHS ${Open_BLAS_LIB_SEARCH_PATHS})
74+
FIND_PATH(OpenBLAS_INCLUDE_DIR NAMES cblas.h PATHS ${Open_BLAS_INCLUDE_SEARCH_PATHS} NO_DEFAULT_PATH)
75+
FIND_LIBRARY(OpenBLAS_LIB NAMES openblas PATHS ${Open_BLAS_LIB_SEARCH_PATHS} NO_DEFAULT_PATH)
7676

7777
SET(OpenBLAS_FOUND ON)
7878

0 commit comments

Comments
 (0)