Commit Graph

42 Commits

Author SHA1 Message Date
Giles Payne
02385472b6
Merge pull request #17165 from komakai:objc-binding
Objc binding

* Initial work on Objective-C wrapper

* Objective-C generator script; update manually generated wrappers

* Add Mat tests

* Core Tests

* Imgproc wrapper generation and tests

* Fixes for Imgcodecs wrapper

* Miscellaneous fixes. Swift build support

* Objective-C wrapper build/install

* Add Swift wrappers for videoio/objdetect/feature2d

* Framework build;iOS support

* Fix toArray functions;Use enum types whenever possible

* Use enum types where possible;prepare test build

* Update test

* Add test runner scripts for iOS and macOS

* Add test scripts and samples

* Build fixes

* Fix build (cmake 3.17.x compatibility)

* Fix warnings

* Fix enum name conflicting handling

* Add support for document generation with Jazzy

* Swift/Native fast accessor functions

* Add Objective-C wrapper for calib3d, dnn, ml, photo and video modules

* Remove IntOut/FloatOut/DoubleOut classes

* Fix iOS default test platform value

* Fix samples

* Revert default framework name to opencv2

* Add converter util functions

* Fix failing test

* Fix whitespace

* Add handling for deprecated methods;fix warnings;define __OPENCV_BUILD

* Suppress cmake warnings

* Reduce severity of "jazzy not found" log message

* Fix incorrect #include of compatibility header in ios.h

* Use explicit returns in subscript/get implementation

* Reduce minimum required cmake version to 3.15 for Objective-C/Swift binding
2020-06-08 18:32:53 +00:00
Alexander Alekhin
a74fe2ec01 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-09-20 21:11:49 +00:00
Maksim Shabunin
5a75808516 Windows: partially restore install config generation 2019-09-16 12:11:48 +03:00
Maksim Shabunin
8c849a48cc Ported install layout refactoring from master branch 2019-08-29 17:01:49 +03:00
Maksim Shabunin
4e67eb6c42 Extracted install layout configuration to separate file 2019-08-26 18:15:32 +03:00
Alexander Alekhin
097d81363b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-07-02 21:17:45 +00:00
Stefan Brüns
0a45b8c478 Handle absolute OPENCV_INCLUDE_INSTALL_PATH correctly
In case OPENCV_INCLUDE_INSTALL_PATH is absolute (i.e. starts with a "/"),
the path ends up with a double "/".

While this is mostly equivalent to a single slash, it may have a nasty
side effect when:
- OpenCV_INSTALL_PATH is empty
- OPENCV_INCLUDE_INSTALL_PATH is "/usr/include"
- the calling build script uses "-isystem" to specify the path to the
  headers of dependencies (to avoid warnings)

Specifying "-isystem /usr/include" breaks the path ordering, and GCC can
no longer find its "stdlib.h", thus CMake filters such statements.
Unfortunately it fails to do so when using "//usr/include".
2019-06-28 15:44:45 +02:00
Maksim Shabunin
73959fed45 Merge pull request #13422 from mshabunin:split-videoio-cmake
* Split videoio dependencies search into pieces, removed obsolete backends
2018-12-26 15:50:20 +03:00
Alexander Alekhin
9097ccf515 drop legacy headers 2018-09-10 08:33:16 +00:00
Alexander Alekhin
36f11a54e1 cmake: customize OpenCV build via CMake script hooks 2018-02-15 14:03:38 +03:00
Maksim Shabunin
7349b8f5ce Build for embedded systems 2017-12-11 13:27:37 +03:00
Alexander Alekhin
f3eff00bf7 cmake: update handling of IPPICV/IPPIW 2017-04-26 00:15:54 +03:00
Alexander Alekhin
f57e3ce5f3 cmake: don't use absolute paths with/without CMAKE_INSTALL_PREFIX
CPack can't work with absolute paths.
2016-06-22 16:38:54 +03:00
Alexander Alekhin
c6c651212c cmake: refactoring of OpenCVConfig
- removed OpenCV_LIB_DIR* vars (they are broken and not required anymore)
- OpenCVConfig.cmake doesn't contain ANDROID/CUDA code if there is no such support
- removed OpenCV2_INCLUDE_DIRS_CONFIGCMAKE, merged into OpenCV_INCLUDE_DIRS_CONFIGCMAKE
- fix hard-coded relative paths for OpenCV_INSTALL_PATH
- removed OpenCV_TBB_ARCH
- switch OpenCVConfig.cmake into 2-level mode for Android SDK
2016-06-20 15:15:21 +03:00
Xiaolei Yu
40eb613bbf Make install paths relative to CMAKE_INSTALL_PREFIX 2016-03-19 16:41:51 +08:00
Alexander Alekhin
fe2f5c175a distrib: remove useless static files from shared distribution package 2015-12-12 15:23:31 +03:00
Maksim Shabunin
632afe6ae3 Fixed mangled install layout on unix machines 2015-03-13 14:18:37 +03:00
xantares
9d13c7b1e2 Move cmake config files too on non-windows hosts. 2014-09-30 09:36:37 +00:00
Alexander Alekhin
df9aa8898d icv: fix OpenCV Windows package 2014-05-07 15:20:29 +00:00
Roman Donchenko
0dad2876e2 Removed all use of the obsolete IMMEDIATE parameter to configure_file.
It's not documented, and it does nothing unless CMake 2.0 compatibility
is enabled (and it isn't):

https://github.com/Kitware/CMake/blob/v2.6.0/Source/cmConfigureFileCommand.cxx
2014-01-29 19:34:02 +04:00
Alexander Smorkalov
b75cbfde45 All installed files marked with component names for install customization. 2014-01-21 20:34:36 +04:00
Roman Donchenko
7973594a01 Removed all slashes after ${OpenCV_INSTALL_BINARIES_PREFIX}.
If it's followed by a slash and OpenCV_INSTALL_BINARIES_PREFIX is empty,
then the resulting path becomes absolute.

Fixes <http://code.opencv.org/issues/3350>.
2013-11-18 19:21:31 +04:00
Roman Donchenko
c016c43d25 Fixed Android SDK build - again. 2013-10-25 19:12:32 +04:00
Alexander Alekhin
7a8f9fe746 cmake: fix android installation for different NDK ABIs 2013-10-25 17:17:00 +04:00
Alexander Alekhin
9941d3f71a cmake: restore find_package() for build directory 2013-10-15 23:05:40 +04:00
Alexander Alekhin
fbe7448250 cmake: export OpenCVModules for unix 'install', move macros desclarations 2013-10-09 18:29:03 +04:00
Alexander Alekhin
555c505b70 update cmake 'install' target for Windows platform
Allow to build samples via OpenCV binaries from distribution package
(find_package with OpenCV_DIR).
2013-10-09 17:49:10 +04:00
Alexander Smorkalov
20fef00a77 android -> plarforms/android 2013-05-27 11:10:38 +04:00
Andrey Kamaev
024185b9ed Fix OpenCVConfig.cmake generated for Android platform (issue #2496)
* fix path to libraries in Android SDK
* allow to link to opencv_java.so as Android.mk does

To link to opencv_java.so you can either change your cmake to find OpenCV as

    find_package(OpenCV opencv_java)

or pass -DOpenCV_FIND_COMPONENTS=opencv_java to your cmake command
2013-02-27 15:04:29 +04:00
cuda_geek
6b19c76233 fix hardcoded paths for static build OpenCV with CUDA 2012-10-08 10:52:58 +04:00
Andrey Kamaev
682dede87e #2215 Fix dependencies escaping in generated OpenCVConfig.cmake 2012-08-20 19:53:03 +04:00
Andrey Kamaev
15e50420bc Fixed linux and android install 2012-06-27 13:52:29 +00:00
Andrey Pavlenko
3804ca3e20 changing package layout after 'make install' for Android build 2012-06-27 06:22:26 +00:00
Marina Kolpakova
6e6271d995 Debug/Release folders fix for QTCreator build 2012-05-02 20:26:19 +00:00
Andrey Kamaev
7d51a4ab78 #1416 added option to install OpenCVConfig.cmake i arch-dependent lo 2012-03-28 10:38:50 +00:00
Andrey Morozov
52b4536d39 fixed module name for mingw compiler under Windows 2012-03-11 07:00:22 +00:00
Andrey Kamaev
212ceb3e24 Minor improvement for Android TBB 2012-02-27 12:49:00 +00:00
Andrey Kamaev
4f97b20ff6 Refactored OpenCVConfig.cmake generation code. 2012-02-19 21:30:13 +00:00
Andrey Kamaev
691d392312 Fixes: Android NDK r7b, android build warnings, build with Visual Studio 2005. 2012-02-16 20:29:35 +00:00
Andrey Kamaev
68a54e7f3c Fixed incorrectly merged patch. 2012-02-09 20:22:36 +00:00
Andrey Kamaev
23af203e00 Better variant of OpenCVConfig.cmake generation; several smaller changes in the options section and Android build scripts 2012-02-06 11:30:59 +00:00
Andrey Kamaev
984eb99428 Global CMake reorganization:
[~] Automatically tracked dependencies between modules
 [+] Support for optional module dependencies
 [+] Options to choose modules to build
 [~] Removed hardcoded modules lists from OpenCVConfig.cmake, opencv.pc and OpenCV.mk
 [+] Added COMPONENTS support for FIND_PACKAGE(OpenCV)
 [~] haartraining and traincascade are moved outside of modules folder since they aren't the modules
2012-02-03 11:26:49 +00:00