You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

opencv.cmake 7.5 kB

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