1if(MSVC) 2 set(opencv_CXXFLAGS "${CMAKE_CXX_FLAGS}") 3 set(opencv_CFLAGS "${CMAKE_C_FLAGS}") 4 set(opencv_LDFLAGS "${CMAKE_SHARED_LINKER_FLAGS}") 5elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") 6 set(opencv_CXXFLAGS "-fstack-protector-all -Wno-uninitialized -Wno-unused-parameter -D_FORTIFY_SOURCE=2 -O2") 7 set(opencv_CFLAGS "-fstack-protector-all -Wno-uninitialized -Wno-unused-parameter -D_FORTIFY_SOURCE=2 -O2") 8 set(opencv_LDFLAGS "-Wl") 9elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows") 10 set(opencv_CXXFLAGS "-fstack-protector-all -Wno-maybe-uninitialized -Wno-unused-parameter -D_FORTIFY_SOURCE=2 -O2") 11 set(opencv_CFLAGS "-fstack-protector-all -Wno-maybe-uninitialized -Wno-unused-parameter -D_FORTIFY_SOURCE=2 -O2") 12 set(opencv_CXXFLAGS "${opencv_CXXFLAGS} -Wno-attributes -Wno-unknown-pragmas") 13 set(opencv_CXXFLAGS "${opencv_CXXFLAGS} -Wno-unused-value -Wno-implicit-fallthrough") 14else() 15 set(opencv_CXXFLAGS "-fstack-protector-all -Wno-maybe-uninitialized -Wno-unused-parameter -D_FORTIFY_SOURCE=2") 16 set(opencv_CXXFLAGS "${opencv_CXXFLAGS} -O2") 17 if(NOT ENABLE_GLIBCXX) 18 set(opencv_CXXFLAGS "${opencv_CXXFLAGS} -D_GLIBCXX_USE_CXX11_ABI=0") 19 endif() 20 set(opencv_CFLAGS "-fstack-protector-all -Wno-maybe-uninitialized -Wno-unused-parameter -D_FORTIFY_SOURCE=2 -O2") 21 set(opencv_LDFLAGS "-Wl,-z,relro,-z,now,-z,noexecstack -s") 22endif() 23 24if(ENABLE_GITEE) 25 if("${BUILD_LITE}" STREQUAL "on" OR PYTHON_VERSION MATCHES "3.9") 26 set(REQ_URL "https://gitee.com/mirrors/opencv/repository/archive/4.5.1.tar.gz") 27 set(MD5 "59fd2c5449f8a3a64dd699b1b3b52dac") 28 elseif((PYTHON_VERSION MATCHES "3.7") OR (PYTHON_VERSION MATCHES "3.8")) 29 set(REQ_URL "https://gitee.com/mirrors/opencv/repository/archive/4.2.0.tar.gz") 30 set(MD5 "a60c420b4f0e4a4a7b570995367fc443") 31 else() 32 message("Could not find 'Python 3.8' or 'Python 3.7' or 'Python 3.9'") 33 return() 34 endif() 35else() 36 if("${BUILD_LITE}" STREQUAL "on" OR PYTHON_VERSION MATCHES "3.9") 37 set(REQ_URL "https://github.com/opencv/opencv/archive/4.5.1.tar.gz") 38 set(MD5 "2205d3169238ec1f184438a96de68513") 39 elseif((PYTHON_VERSION MATCHES "3.7") OR (PYTHON_VERSION MATCHES "3.8")) 40 set(REQ_URL "https://github.com/opencv/opencv/archive/4.2.0.tar.gz") 41 set(MD5 "e8cb208ce2723481408b604b480183b6") 42 else() 43 message("Could not find 'Python 3.8' or 'Python 3.7' or 'Python 3.9'") 44 return() 45 endif() 46endif() 47 48if(MSVC) 49 mindspore_add_pkg(opencv 50 VER 4.5.1 51 LIBS opencv_core451.lib opencv_imgcodecs451.lib opencv_imgproc451.lib 52 LIB_PATH x64/*/lib 53 URL ${REQ_URL} 54 MD5 ${MD5} 55 CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DWITH_PROTOBUF=OFF -DWITH_WEBP=OFF -DWITH_IPP=OFF 56 -DWITH_ADE=OFF 57 -DBUILD_ZLIB=ON 58 -DBUILD_JPEG=ON 59 -DBUILD_PNG=ON 60 -DBUILD_OPENEXR=ON 61 -DBUILD_TESTS=OFF 62 -DBUILD_PERF_TESTS=OFF 63 -DBUILD_opencv_apps=OFF 64 -DCMAKE_SKIP_RPATH=TRUE 65 -DBUILD_opencv_python3=OFF 66 -DBUILD_opencv_videoio=OFF 67 -DWITH_FFMPEG=OFF 68 -DWITH_TIFF=ON 69 -DBUILD_TIFF=OFF 70 -DWITH_JASPER=OFF 71 -DBUILD_JASPER=OFF 72 -DTIFF_INCLUDE_DIR=${tiff_INC} 73 -DTIFF_LIBRARY=${tiff_LIB}) 74elseif(WIN32) 75 if("${BUILD_LITE}" STREQUAL "on" OR PYTHON_VERSION MATCHES "3.9") 76 mindspore_add_pkg(opencv 77 VER 4.5.1 78 LIBS libopencv_core451.dll.a libopencv_imgcodecs451.dll.a libopencv_imgproc451.dll.a 79 LIB_PATH x64/mingw/lib 80 URL ${REQ_URL} 81 MD5 ${MD5} 82 CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DWITH_PROTOBUF=OFF -DWITH_WEBP=OFF -DWITH_IPP=OFF 83 -DWITH_ADE=OFF 84 -DBUILD_ZLIB=ON 85 -DBUILD_JPEG=ON 86 -DBUILD_PNG=ON 87 -DBUILD_OPENEXR=ON 88 -DBUILD_TESTS=OFF 89 -DBUILD_PERF_TESTS=OFF 90 -DBUILD_opencv_apps=OFF 91 -DCMAKE_SKIP_RPATH=TRUE 92 -DBUILD_opencv_python3=OFF 93 -DBUILD_opencv_videoio=OFF 94 -DWITH_FFMPEG=OFF 95 -DWITH_TIFF=ON 96 -DBUILD_TIFF=OFF 97 -DWITH_JASPER=OFF 98 -DBUILD_JASPER=OFF 99 -DTIFF_INCLUDE_DIR=${tiff_INC} 100 -DTIFF_LIBRARY=${tiff_LIB}) 101 elseif(PYTHON_VERSION MATCHES "3.8" OR PYTHON_VERSION MATCHES "3.7") 102 mindspore_add_pkg(opencv 103 VER 4.2.0 104 LIBS libopencv_core420.dll.a libopencv_imgcodecs420.dll.a libopencv_imgproc420.dll.a 105 LIB_PATH x64/mingw/lib 106 URL ${REQ_URL} 107 MD5 ${MD5} 108 CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DWITH_PROTOBUF=OFF -DWITH_WEBP=OFF -DWITH_IPP=OFF 109 -DWITH_ADE=OFF 110 -DBUILD_ZLIB=ON 111 -DBUILD_JPEG=ON 112 -DBUILD_PNG=ON 113 -DBUILD_OPENEXR=ON 114 -DBUILD_TESTS=OFF 115 -DBUILD_PERF_TESTS=OFF 116 -DBUILD_opencv_apps=OFF 117 -DCMAKE_SKIP_RPATH=TRUE 118 -DBUILD_opencv_python3=OFF 119 -DBUILD_opencv_videoio=OFF 120 -DWITH_FFMPEG=OFF 121 -DWITH_TIFF=ON 122 -DBUILD_TIFF=OFF 123 -DWITH_JASPER=OFF 124 -DBUILD_JASPER=OFF 125 -DWITH_LAPACK=OFF 126 -DTIFF_INCLUDE_DIR=${tiff_INC} 127 -DTIFF_LIBRARY=${tiff_LIB}) 128 endif() 129else() 130 if("${BUILD_LITE}" STREQUAL "on" OR PYTHON_VERSION MATCHES "3.9") 131 mindspore_add_pkg(opencv 132 VER 4.5.1 133 LIBS opencv_core opencv_imgcodecs opencv_imgproc 134 URL ${REQ_URL} 135 MD5 ${MD5} 136 CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DWITH_PROTOBUF=OFF -DWITH_WEBP=OFF -DWITH_IPP=OFF 137 -DWITH_ADE=OFF 138 -DBUILD_ZLIB=ON 139 -DBUILD_JPEG=ON 140 -DBUILD_PNG=ON 141 -DBUILD_OPENEXR=ON 142 -DBUILD_TESTS=OFF 143 -DBUILD_PERF_TESTS=OFF 144 -DBUILD_opencv_apps=OFF 145 -DCMAKE_SKIP_RPATH=TRUE 146 -DBUILD_opencv_python3=OFF 147 -DWITH_FFMPEG=OFF 148 -DWITH_TIFF=ON 149 -DBUILD_TIFF=OFF 150 -DWITH_JASPER=OFF 151 -DBUILD_JASPER=OFF 152 -DTIFF_INCLUDE_DIR=${tiff_INC} 153 -DTIFF_LIBRARY=${tiff_LIB}) 154 elseif(PYTHON_VERSION MATCHES "3.8" OR PYTHON_VERSION MATCHES "3.7") 155 mindspore_add_pkg(opencv 156 VER 4.2.0 157 LIBS opencv_core opencv_imgcodecs opencv_imgproc 158 URL ${REQ_URL} 159 MD5 ${MD5} 160 CMAKE_OPTION -DCMAKE_BUILD_TYPE=Release -DWITH_PROTOBUF=OFF -DWITH_WEBP=OFF -DWITH_IPP=OFF 161 -DWITH_ADE=OFF 162 -DBUILD_ZLIB=ON 163 -DBUILD_JPEG=ON 164 -DBUILD_PNG=ON 165 -DBUILD_OPENEXR=ON 166 -DBUILD_TESTS=OFF 167 -DBUILD_PERF_TESTS=OFF 168 -DBUILD_opencv_apps=OFF 169 -DCMAKE_SKIP_RPATH=TRUE 170 -DBUILD_opencv_python3=OFF 171 -DWITH_FFMPEG=OFF 172 -DWITH_TIFF=ON 173 -DBUILD_TIFF=OFF 174 -DWITH_JASPER=OFF 175 -DBUILD_JASPER=OFF 176 -DWITH_LAPACK=OFF 177 -DTIFF_INCLUDE_DIR=${tiff_INC} 178 -DTIFF_LIBRARY=${tiff_LIB}) 179 endif() 180endif() 181 182if(MSVC) 183 include_directories(${opencv_INC}) 184 add_library(mindspore::opencv_core ALIAS opencv::opencv_core451.lib) 185 add_library(mindspore::opencv_imgcodecs ALIAS opencv::opencv_imgcodecs451.lib) 186 add_library(mindspore::opencv_imgproc ALIAS opencv::opencv_imgproc451.lib) 187elseif(WIN32) 188 if("${BUILD_LITE}" STREQUAL "on" OR PYTHON_VERSION MATCHES "3.9") 189 include_directories(${opencv_INC}) 190 add_library(mindspore::opencv_core ALIAS opencv::libopencv_core451.dll.a) 191 add_library(mindspore::opencv_imgcodecs ALIAS opencv::libopencv_imgcodecs451.dll.a) 192 add_library(mindspore::opencv_imgproc ALIAS opencv::libopencv_imgproc451.dll.a) 193 elseif(PYTHON_VERSION MATCHES "3.8" OR PYTHON_VERSION MATCHES "3.7") 194 include_directories(${opencv_INC}) 195 add_library(mindspore::opencv_core ALIAS opencv::libopencv_core420.dll.a) 196 add_library(mindspore::opencv_imgcodecs ALIAS opencv::libopencv_imgcodecs420.dll.a) 197 add_library(mindspore::opencv_imgproc ALIAS opencv::libopencv_imgproc420.dll.a) 198 endif() 199else() 200 include_directories(${opencv_INC}/opencv4) 201 add_library(mindspore::opencv_core ALIAS opencv::opencv_core) 202 add_library(mindspore::opencv_imgcodecs ALIAS opencv::opencv_imgcodecs) 203 add_library(mindspore::opencv_imgproc ALIAS opencv::opencv_imgproc) 204endif() 205