[opencv4] find_dependency(CpuFeaturesNdkCompat) (#48451)

This commit is contained in:
Kai Pastor 2025-11-25 10:47:41 +01:00 committed by GitHub
parent 1d611efb49
commit bd52fac711
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 17 additions and 31 deletions

View File

@ -2,37 +2,14 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
index 79a0c96270..e6b1aefb9b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -789,7 +789,6 @@ endif()
@@ -789,7 +789,9 @@ endif()
# ----------------------------------------------------------------------------
if(ANDROID AND WITH_CPUFEATURES)
- add_subdirectory(3rdparty/cpufeatures)
+ find_package(CpuFeaturesNdkCompat CONFIG REQUIRED)
+ set(CPUFEATURES_INCLUDE_DIRS "")
+ set(CPUFEATURES_LIBRARIES CpuFeatures::ndk_compat)
set(HAVE_CPUFEATURES 1)
endif()
diff --git a/cmake/OpenCVFindLibsPerf.cmake b/cmake/OpenCVFindLibsPerf.cmake
index fce231e722..309e84341a 100644
--- a/cmake/OpenCVFindLibsPerf.cmake
+++ b/cmake/OpenCVFindLibsPerf.cmake
@@ -200,3 +200,9 @@ if(WITH_FASTCV)
set(FASTCV_LIBRARY "${FastCV_LIB_PATH}/libfastcvopt.so" CACHE PATH "FastCV library")
endif()
endif(WITH_FASTCV)
+
+
+if(ANDROID AND HAVE_CPUFEATURES)
+ find_package(CpuFeaturesNdkCompat CONFIG REQUIRED)
+ list(APPEND OPENCV_LINKER_LIBS CpuFeatures::ndk_compat)
+endif()
diff --git a/modules/core/CMakeLists.txt b/modules/core/CMakeLists.txt
index 95fe8d6a4c..11eae4cd78 100644
--- a/modules/core/CMakeLists.txt
+++ b/modules/core/CMakeLists.txt
@@ -98,7 +98,6 @@ ocv_glob_module_sources(SOURCES "${OPENCV_MODULE_opencv_core_BINARY_DIR}/version
ocv_module_include_directories(${the_module} ${ZLIB_INCLUDE_DIRS} ${OPENCL_INCLUDE_DIRS})
if(ANDROID AND HAVE_CPUFEATURES)
ocv_append_source_file_compile_definitions(${CMAKE_CURRENT_SOURCE_DIR}/src/system.cpp "HAVE_CPUFEATURES=1")
- ocv_module_include_directories(${CPUFEATURES_INCLUDE_DIRS})
endif()
if(ITT_INCLUDE_DIRS)
ocv_module_include_directories(${ITT_INCLUDE_DIRS})

View File

@ -33,6 +33,7 @@ set(ENV{PKG_CONFIG} "${PKGCONFIG}")
vcpkg_host_path_list(APPEND ENV{PKG_CONFIG_PATH} "${CURRENT_INSTALLED_DIR}/lib/pkgconfig")
# Disallow accidental build of vendored copies
file(REMOVE_RECURSE "${SOURCE_PATH}/3rdparty/cpufeatures")
file(REMOVE_RECURSE "${SOURCE_PATH}/3rdparty/openexr")
file(REMOVE_RECURSE "${SOURCE_PATH}/3rdparty/flatbuffers")
file(REMOVE "${SOURCE_PATH}/cmake/FindCUDNN.cmake")
@ -479,7 +480,10 @@ if(${BUILD_opencv_dnn} AND NOT TARGET libprotobuf) #Check if the CMake target l
)
endif()
endif()
find_dependency(Threads)")
find_dependency(Threads)
if(ANDROID)
find_dependency(CpuFeaturesNdkCompat CONFIG)
endif()")
if("ade" IN_LIST FEATURES)
string(APPEND DEPS_STRING "\nfind_dependency(ade)")

View File

@ -1,7 +1,7 @@
{
"name": "opencv4",
"version": "4.11.0",
"port-version": 6,
"port-version": 7,
"description": "computer vision library",
"homepage": "https://github.com/opencv/opencv",
"license": "Apache-2.0",

View File

@ -1207,7 +1207,6 @@ opencv4[halide](android | (windows & staticcrt) | uwp | (arm & windows))=cascade
opencv4[opencl](uwp) = cascade
opencv4[openexr](uwp) = cascade
opencv4[opengl](uwp | xbox) = cascade
opencv4[openvino]:arm64-osx=cascade
opencv4[openvino](windows & arm) = cascade
opencv4[qt](uwp | ios | xbox) = cascade
opencv4[sfm](uwp) = cascade
@ -1860,6 +1859,7 @@ opencv4[halide](!android & !(windows & staticcrt) & !uwp & !(arm & windows))=fea
opencv4[opengl]:x64-linux=feature-fails
opencv4[opengl](android)=feature-fails
opencv4[opengl](windows&!uwp)=feature-fails # Option WITH_OPENGL is enabled but corresponding dependency have not been found: "HAVE_OPENGL" is FALSE
opencv4[openvino]:arm64-osx=feature-fails
opencv4[ovis](android)=feature-fails
opencv4[vtk]:arm64-windows-static-md=feature-fails
opencv4[vtk]:arm64-windows=feature-fails

View File

@ -7174,7 +7174,7 @@
},
"opencv4": {
"baseline": "4.11.0",
"port-version": 6
"port-version": 7
},
"opendnp3": {
"baseline": "3.1.1",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "13b9c235bf7c351dee012da006995e26d2c9b709",
"version": "4.11.0",
"port-version": 7
},
{
"git-tree": "f196281c4ecd720c4536cd7c7e5a9325fdc8d3f1",
"version": "4.11.0",