AGP 8.0 build.gradle namespace and aidl buildFeature requirement added #23447
Hello,
Android Gradle Plugin version 8.0 is asking for namespace. This is become mandatory and after I update my AGP to 8.0, I got this error
```
Namespace not specified. Please specify a namespace in the module's build.gradle file like so:
android {
namespace 'com.example.namespace'
}
If the package attribute is specified in the source AndroidManifest.xml, it can be migrated automatically to the namespace value in the build.gradle file using the AGP Upgrade Assistant; please refer to https://developer.android.com/studio/build/agp-upgrade-assistant for more information.
```
This change fix this future releases. However I am not sure how opencv wants to user namespace I used "org.opencv" if there is a different namespace please let me know so I can changed that too. Also should I add namepsace into "opencv/modules/java/android_sdk/android_gradle_lib/build.gradle" here ?
### Sources
Android developer link: https://developer.android.com/studio/preview/features#namespace-dsl
Issue Tracker Google: https://issuetracker.google.com/issues/191813691?pli=1#comment19
### Pull Request Readiness Checklist
See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request
- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [ ] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
Patch to opencv_extra has the same branch name.
- [ ] The feature is well documented and sample code can be built with the project CMake
* fix openmp include and link issue on macos
* turn off have_openmp if OpenMP_CXX_INCLUDE_DIRS is empty
* test commit
* use condition HAVE_OPENMP and OpenMP_CXX_LIBRARIES for linking
* remove trailing whitespace
* remove notes
* update conditions
* use OpenMP_CXX_LIBRARIES for linking
Use reinterpret instead of c-style casting for GCC
Co-authored-by: Xu Zhang <xu.zhang@hexintek.com>
Co-authored-by: Maksim Shabunin <maksim.shabunin@gmail.com>
* cann backend impl v1
* cann backend impl v2: use opencv parsers to build models for cann
* adjust fc according to the new transA and transB
* put cann net in cann backend node and reuse forwardLayer
* use fork() to create a child process and compile cann model
* remove legacy code
* remove debug code
* fall bcak to CPU backend if there is one layer not supoorted by CANN backend
* fix netInput forward
Adds the option to enable delay loading of CUDA DLLs on Windows. This is particularly useful to use the same binary on systems with and without CUDA support without distributing the CUDA DLLs to systems that cannot use them at all due to missing CUDA-supported hardware.
Resolves#13509
* cmake: Fix DirectX detection in mingw
The pragma comment directive is valid for MSVC only. So, the DirectX detection
fails in mingw. The failure is fixed by adding the required linking library
(here d3d11) in the try_compile() function in OpenCVDetectDirectX.cmake file.
Also add a message if the first DirectX check fails.
* gapi: Fix compilation with mingw
These changes remove MSVC specific pragma directive. The compilation fails at
linking time due to absence of proper linking library. The required libraries
are added in corresponding CMakeLists.txt file.
* samples: Fix compilation with mingw
These changes remove MSVC specific pragma directive. The compilation fails at
linking time due to absence of proper linking library. The required libraries
are added in corresponding CMakeLists.txt file.
Support downloading 3rdparty resources from Gitcode & Gitlab-style mirrors
* replace github.com with gitcode.net for ocv_download
* replace raw.githubusercontent.com with gitcode.net for ocv_download
* rename funtions and remove some comments
* add options for custom mirrors, which simply replace domain github.com & githubusercontent.com
* run ocv_init_download once; replace DL_URL with mirrored one when calling ocv_download
* fix for empty download links when not using mirror
* fix bugs: set(.. .. PARENT_SCOPE) for ocv_init_download; correct macro names for replace github archives and raw githubusercontent
* adjusted mirror swapping impl: replace with mirrored link before each ocv_download; update md5sum for archives
* fix a bug: macro invoked with incorrect arguments by non-set vars
* enclose if statement
* workable impl
* shorten the var names of two key options
* scalable implementation of downloading from mirror and using custom mirror
* improve ocv_init_download help message
* fix the different extracted directory name in case of ADE & TBB which are downloaded from release page
* improve help message printing
* Download ADE & TBB using commit ids instead of from release pages
* support custom mirrors on downloading archives
* improve hints
* add missing parentheses
* reset ocv_download calls
* mirror support implementation using ocv_cmake_hook & ocv_cmake_hook_append
* move ocv_init_download into cmake/OpenCVDownload.cmake
* move ocv_cmake_hook before checking CMake cache
* improve hints when not fetching as git repo
* add WORKING_DIRECTORY in execute_process in ocv_init_download
* use OPENCV_DOWNLOAD_MIRROR_ID
* add custom.cmake for custom mirror
* detect github origin
* fix broken var name
* download from github by default if custom tbb is set
* add checksum checks for gitcode.cmake before replacing urls and checksums
* add checksum checks for custom.cmake before replacing urls and checkusms
* use description specify instead of set for messages in custom.cmake; use warning message for warnings
* updates and fixes
* Added NEON support in builds for Windows on ARM
* Fixed `HAVE_CPU_NEON_SUPPORT` display broken during compiler test
* Fixed a build error prior to Visual Studio 2022