From 9875f5980a4b881e0d5479973a66c65c5b560103 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= Date: Fri, 26 Jan 2018 17:29:13 +0000 Subject: [PATCH] Add patch50 --- ...513447eb16784113e982f6bef0dcabb77732.patch | 86 +++++++++++++++++++ opencv.spec | 4 +- 2 files changed, 88 insertions(+), 2 deletions(-) create mode 100644 476c513447eb16784113e982f6bef0dcabb77732.patch diff --git a/476c513447eb16784113e982f6bef0dcabb77732.patch b/476c513447eb16784113e982f6bef0dcabb77732.patch new file mode 100644 index 0000000..08b709a --- /dev/null +++ b/476c513447eb16784113e982f6bef0dcabb77732.patch @@ -0,0 +1,86 @@ +From 5f80e42dac5f186d8b5fe9c64d700db26e5753e7 Mon Sep 17 00:00:00 2001 +From: Alexander Alekhin +Date: Sat, 28 Oct 2017 02:22:21 +0300 +Subject: [PATCH] cmake: update OpenBLAS support + +- reorder path HINTS to avoid conflicts with other LAPACK libraries +- add extern "C" { } to avoid generation of C++ symbols +--- + cmake/OpenCVFindLAPACK.cmake | 3 ++- + cmake/OpenCVFindOpenBLAS.cmake | 34 +++++++++++++++++----------------- + 2 files changed, 19 insertions(+), 18 deletions(-) + +diff --git a/cmake/OpenCVFindLAPACK.cmake b/cmake/OpenCVFindLAPACK.cmake +index 6a686c6cdc8..f5fce672568 100644 +--- a/cmake/OpenCVFindLAPACK.cmake ++++ b/cmake/OpenCVFindLAPACK.cmake +@@ -31,10 +31,11 @@ macro(ocv_lapack_check) + else() + # adding proxy opencv_lapack.h header + set(CBLAS_H_PROXY_PATH ${CMAKE_BINARY_DIR}/opencv_lapack.h) +- set(_lapack_include_str "\#include \"${OPENCV_CBLAS_H_PATH_${_lapack_impl}}\"") ++ set(_lapack_include_str "extern \"C\" {\n\#include \"${OPENCV_CBLAS_H_PATH_${_lapack_impl}}\"") + if(NOT "${OPENCV_CBLAS_H_PATH_${_lapack_impl}}" STREQUAL "${OPENCV_LAPACKE_H_PATH_${_lapack_impl}}") + set(_lapack_include_str "${_lapack_include_str}\n#include \"${OPENCV_LAPACKE_H_PATH_${_lapack_impl}}\"") + endif() ++ set(_lapack_include_str "${_lapack_include_str}\n}\n") + # update file contents (if required) + set(__content_str "") + if(EXISTS "${CBLAS_H_PROXY_PATH}") +diff --git a/cmake/OpenCVFindOpenBLAS.cmake b/cmake/OpenCVFindOpenBLAS.cmake +index 60594dee46a..ae2daaa194f 100644 +--- a/cmake/OpenCVFindOpenBLAS.cmake ++++ b/cmake/OpenCVFindOpenBLAS.cmake +@@ -44,35 +44,35 @@ + #license and copyright terms herein. + + SET(Open_BLAS_INCLUDE_SEARCH_PATHS +- /usr/include ++ $ENV{OpenBLAS_HOME} ++ $ENV{OpenBLAS_HOME}/include ++ /opt/OpenBLAS/include ++ /usr/local/include/openblas + /usr/include/openblas ++ /usr/local/include/openblas-base + /usr/include/openblas-base + /usr/local/include +- /usr/local/include/openblas +- /usr/local/include/openblas-base +- /opt/OpenBLAS/include +- $ENV{OpenBLAS_HOME} +- $ENV{OpenBLAS_HOME}/include ++ /usr/include + ) + + SET(Open_BLAS_LIB_SEARCH_PATHS +- /lib/ +- /lib/openblas-base +- /lib64/ +- /usr/lib +- /usr/lib/openblas-base +- /usr/lib64 +- /usr/local/lib +- /usr/local/lib64 +- /opt/OpenBLAS/lib + $ENV{OpenBLAS}cd + $ENV{OpenBLAS}/lib + $ENV{OpenBLAS_HOME} + $ENV{OpenBLAS_HOME}/lib ++ /opt/OpenBLAS/lib ++ /usr/local/lib64 ++ /usr/local/lib ++ /lib/openblas-base ++ /lib64/ ++ /lib/ ++ /usr/lib/openblas-base ++ /usr/lib64 ++ /usr/lib + ) + +-FIND_PATH(OpenBLAS_INCLUDE_DIR NAMES cblas.h PATHS ${Open_BLAS_INCLUDE_SEARCH_PATHS}) +-FIND_LIBRARY(OpenBLAS_LIB NAMES openblas PATHS ${Open_BLAS_LIB_SEARCH_PATHS}) ++FIND_PATH(OpenBLAS_INCLUDE_DIR NAMES cblas.h PATHS ${Open_BLAS_INCLUDE_SEARCH_PATHS} NO_DEFAULT_PATH) ++FIND_LIBRARY(OpenBLAS_LIB NAMES openblas PATHS ${Open_BLAS_LIB_SEARCH_PATHS} NO_DEFAULT_PATH) + + SET(OpenBLAS_FOUND ON) + diff --git a/opencv.spec b/opencv.spec index 046c28e..bbaddbe 100644 --- a/opencv.spec +++ b/opencv.spec @@ -68,8 +68,8 @@ Patch2: opencv-3.1-pillow.patch Patch3: opencv-3.2.0-test-file-fix.patch # Backport patch, update OpenBLAS support # https://github.com/opencv/opencv/pull/9955 -# https://github.com/opencv/opencv/commit/476c513447eb16784113e982f6bef0dcabb77732.diff -Patch50: 476c513447eb16784113e982f6bef0dcabb77732.diff +# https://github.com/opencv/opencv/commit/476c513447eb16784113e982f6bef0dcabb77732.patch +Patch50: 476c513447eb16784113e982f6bef0dcabb77732.patch BuildRequires: libtool BuildRequires: cmake >= 2.6.3