Commit Graph

200 Commits

Author SHA1 Message Date
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
0c16d8f6c3 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-13 15:12:26 +03:00
Alexander Alekhin
6fa23f330f cmake: fix compiler flags filtering 2018-12-12 13:35:43 +03:00
Alexander Alekhin
ea64e860de Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-09 13:21:58 +00:00
Maksim Shabunin
05131af8da Merge pull request #13367 from mshabunin:cmake-verify
* Added dependency verification mechanism for cmake
2018-12-07 15:57:25 +03:00
Alexander Alekhin
22dbcf98c5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-17 14:17:35 +00:00
Alexander Alekhin
53af811530 cmake: emit warnings about unsupported options if turned ON only 2018-11-16 20:24:31 +00:00
Alexander Alekhin
1913482cf5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-10 20:50:26 +00:00
Alexander Alekhin
467eb4d240 Merge pull request #12901 from alalek:cmake_unsupported_option_warning 2018-11-08 12:21:38 +00:00
Alexander Alekhin
2c6f1ab57d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-06 20:04:31 +00:00
Alexander Alekhin
fbe41703e4 cmake: introduce setup_vars scripts
- CMake install COMPONENT: "scripts"
2018-11-01 17:38:40 +03:00
Alexander Alekhin
971c4ca10b cmake: don't undefine passed options 2018-10-23 14:46:26 +03:00
Alexander Alekhin
5115e5decb Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-13 16:19:05 +00:00
Alexander Alekhin
7b9b876726 cmake: improve PDB support 2018-10-11 10:54:37 +00:00
Alexander Alekhin
a956732874 cmake: update install paths (Linux) 2018-09-19 15:43:52 +03:00
Alexander Alekhin
29bee6f07e cmake: move Matlab scripts to opencv_contrib (#12541)
* matlab: move to opencv_contrib

* cmake: preserve variables scope for processing modules

- use macro instead of function to avoid scope resets
2018-09-17 14:55:42 +03:00
Khem Raj
a4f53988c4 Check for clang before using -isystem
When cross compiling with clang, the internal C++ headers are not found
when adding sysroot to -isystem, that is redundant anyway because it
will look for headers insider --sysroot path with same quality as it
would do with -isystem otherwise

Fixes errors like

FAILED: 3rdparty/openexr/CMakeFiles/IlmImf.dir/Iex/IexBaseExc.cpp.o
....
In file included from
TOPDIR/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/opencv/3.4.3+gitAUTOINC+b38c50b3d0_1f6d6f0626_bdb7bb85f3_34e4206aef_fccf7cd6a4-r0/git/3rdparty/openexr/Iex/IexBaseExc.cpp:43:
In file included from
TOPDIR/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/opencv/3.4.3+gitAUTOINC+b38c50b3d0_1f6d6f0626_bdb7bb85f3_34e4206aef_fccf7cd6a4-r0/git/3rdparty/openexr/Iex/IexBaseExc.h:48:
In file included from
TOPDIR/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/opencv/3.4.3+gitAUTOINC+b38c50b3d0_1f6d6f0626_bdb7bb85f3_34e4206aef_fccf7cd6a4-r0/recipe-sysroot/usr/lib//arm-bec-linux-musleabi/8.2.0/../../../include/c++/8.2.0/string:52:
In file included from
TOPDIR/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/opencv/3.4.3+gitAUTOINC+b38c50b3d0_1f6d6f0626_bdb7bb85f3_34e4206aef_fccf7cd6a4-r0/recipe-sysroot/usr/lib//arm-bec-linux-musleabi/8.2.0/../../../include/c++/8.2.0/bits/basic_string.h:6391:
In file included from
TOPDIR/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/opencv/3.4.3+gitAUTOINC+b38c50b3d0_1f6d6f0626_bdb7bb85f3_34e4206aef_fccf7cd6a4-r0/recipe-sysroot/usr/lib//arm-bec-linux-musleabi/8.2.0/../../../include/c++/8.2.0/ext/string_conversions.h:41:
TOPDIR/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-musleabi/opencv/3.4.3+gitAUTOINC+b38c50b3d0_1f6d6f0626_bdb7bb85f3_34e4206aef_fccf7cd6a4-r0/recipe-sysroot/usr/lib//arm-bec-linux-musleabi/8.2.0/../../../include/c++/8.2.0/cstdlib:75:15:
fatal error: 'stdlib.h' file not found
              ^~~~~~~~~~
1 error generated.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-12 18:16:39 -07:00
Kuang Fangjun
8e24a8b7c0 remove a redundant option. 2018-07-02 09:45:28 +08:00
Alexander Alekhin
80934dc488 cmake: update 'git describe' information 2018-04-28 17:17:31 +03:00
Alexander Alekhin
12e8e33144 build: enable -Wimplicit-fallthrough warning for OpenCV modules 2018-04-19 19:54:03 +03:00
Alexander Alekhin
784c8436fd cmake: update PDB installation 2018-04-09 18:50:58 +03:00
Alexander Alekhin
6abfc6761e android: refactor Android SDK detection
- properly detect Android SDK support of Ant/Gradle projects
- divide processing of And/Gradle based projects
2018-04-05 19:19:31 +00:00
Alexander Alekhin
6c8014e7d1 cmake: disable checks for protobuf generated files 2018-03-28 18:43:28 +03:00
Alexander Alekhin
08941b7890 cmake: avoid amending of CMAKE_COMPILER_IS_[GNUCXX|CLANGCXX|CCACHE] vars
- Recommended compiler checks:
  - GCC: CV_GCC
  - Clang: CV_CLANG
- fixed problem with CMAKE_CXX_COMPILER_ID=Clang/AppleClang mess on MacOSX
  Details: cmake --help-policy CMP0025
- do not declare Clang as GCC compiler
2018-03-27 16:16:59 +03:00
Maksim Shabunin
7bbe002a2f Add install component for 3rdparty libraries licenses 2018-03-06 16:32:30 +03:00
Alexander Alekhin
36f11a54e1 cmake: customize OpenCV build via CMake script hooks 2018-02-15 14:03:38 +03:00
Alexander Alekhin
5a791e6e06 cmake: update reporting of excluded dispatching files (#10711)
* cmake: add ocv_get_smart_file_name() macro

* cmake: avoid adding files for unavailable dispatch modes
2018-02-12 14:48:20 +03:00
Maksim Shabunin
34a9ce6eb3 cmake: support searching for TBB via cmake package mechanism 2018-02-03 13:51:54 +03:00
Maksim Shabunin
82aff110b7 cmake: allow providing list of extra modules paths 2018-02-01 19:02:02 +03:00
Maksim Shabunin
1b0ff57562 Merge pull request #10621 from mshabunin:disable-docs
Documentation generation refactoring (#10621)

* Documentation build updates:

- disable documentation by default, do not add to ALL target
- combine Doxygen and Javadoc
- optimize Doxygen html

* javadoc: fix path in build directory

* cmake: fix "Documentation" status line
2018-01-18 16:37:19 +03:00
Alexander Alekhin
91e10a3105 cmake: ocv_target_include_directories() handle SYSTEM directories 2018-01-13 02:12:39 +00:00
Alexander Alekhin
9deaddcdff Merge pull request #10490 from alalek:cmake_android_refactor_copy_project_files 2018-01-12 12:23:37 +00:00
Alexander Alekhin
f3dde79ed6 cmake: allow BUILD_FAT_JAVA_LIB for non-Android targets too 2018-01-08 19:24:39 +00:00
Alexander Alekhin
431b3b4323 cmake(android): refactor copying of Android samples project files 2018-01-05 17:32:27 +00:00
Alexander Alekhin
94b236872c cmake: avoid unnecessary files creation in ocv_cmake_configure() 2018-01-02 19:16:51 +00:00
Alexander Alekhin
ea5a3e557f python: filter modules headers (from <module>/include directory) 2018-01-01 15:56:14 +00:00
Alexander Alekhin
4bd1e3dcbd cmake: avoid timestamp change of version_string.inc file 2017-12-30 20:26:15 +00:00
Alexander Alekhin
0b33eb0929 cmake: fix ocv_target_compile_definitions() for world builds
fixes CUDA build
2017-12-15 23:30:53 +03:00
Maksim Shabunin
5ebb234746 cmake: simplified configuration output 2017-11-17 11:57:49 +03:00
Amro
bbba9ac121 fix pkg-config generation for mingw 2017-11-15 18:54:46 +02:00
Alexander Alekhin
a0e1def83b cmake: fix pkg-config generation for MacOSX 2017-11-08 16:06:48 +03:00
Maksim Shabunin
b1fe298764 Removed cmake submodules and contrib_world references 2017-10-19 17:34:59 +03:00
Maksim Shabunin
2ac57a2b1f Merge pull request #9457 from alalek:type_traits_issue_7599 2017-09-06 13:34:29 +00:00
Alexander Alekhin
164a41b399 fix CUDA build
CUDA implementation wants to convert std::vector<KeyPoint> <-> GpuMat.
There is no direct mapping from KeyPoint (mix of int/float fields)
into cv::Mat element type, so this conversion must be avoided.

Legacy mode is turned back for CUDA builds.
2017-09-04 14:41:29 +03:00
Alexander Alekhin
3df41b3263 Merge pull request #9426 from borisfom:dispatch 2017-09-03 09:24:59 +00:00
Boris Fomitchev
76f7fb5231 Extending CPU dispatch to the tests; fixing a typo 2017-08-21 20:58:12 -07:00
KUANG Fangjun
336996152a Improve the documentation. 2017-08-20 17:21:39 +02:00
Alexander Alekhin
87a98e4562 cmake: CMP0026 NEW 2017-08-19 15:15:05 +00:00
Alexander Alekhin
bf0173bf38 ts: update valgrind suppressions 2017-07-26 17:21:45 +03:00
Alexander Alekhin
07334bc25c cmake: fix ocv_add_testdata() hardcoded path 2017-07-25 06:56:03 +03:00
Alexander Alekhin
a44c0fd51f cmake: ocv_cmake_dump_vars() remove duplicated information 2017-07-19 12:37:36 +03:00
Maksim Shabunin
6320ede98e Removed extra dependencies from videoio library 2017-06-30 18:54:42 +03:00
Vadim Pisarevsky
fa7e7e0ff9 Merge pull request #8900 from alalek:update_android_build 2017-06-23 10:58:53 +00:00
Dmitry Kurtaev
16368a275b cmake: add Halide support (#8794) 2017-06-21 14:33:47 +03:00
Alexander Alekhin
3e3e2dd512 android: make optional "cpufeatures", build fixes for NDK r15 2017-06-21 13:34:19 +03:00
Alexander Alekhin
db35e13b46 build: added VERSIONINFO resource 2017-06-20 15:45:21 +03:00
Alexander Alekhin
f3eff00bf7 cmake: update handling of IPPICV/IPPIW 2017-04-26 00:15:54 +03:00
Maksim Shabunin
e72d353b45 Download cache 2017-03-24 16:19:56 +03:00
Alexander Alekhin
69df0eee77 cmake: fix try_compile() with --coverage flags 2017-03-23 18:15:24 +03:00
Alexander Alekhin
e16227b53c cmake: support multiple CPU targets 2017-02-13 19:52:59 +03:00
Alexander Alekhin
36b34465a4 cmake: include contrib modules into opencv_world 2017-01-23 18:45:53 +03:00
Dal Rupnik
e71ff78f7f Merge pull request #8009 from Legoless:master
CMake: Building Dynamic Framework on iOS (#8009)

* Updated python script with dynamic parameter

Updated python script to build static library by default

Updated python script to include bitcode flag

Added bitcode flag to c flags

Fixed directories and targets with static

Bitcode parameter fixed

Fixed script for static library

Fixed parameters in build function

Updated cmake common toolchain

Added changes to OpenCV Utils

Updates to cmake

Added cache internal

Updates to common toolchain

Fixed path in framework destination and added UIKit dependency

Dynamic plist for framework

Lib version removed hardcoded value

Removed trailing whitespace in toolchain

* Removed trailing whitespace

* Fixed typo in comment

* Renamed bitcode variable to bitcodedisabled

* Fixed target device family
2017-01-20 19:16:01 +03:00
Alexander Alekhin
35308bc45f cmake: fix CMake error
"install DIRECTORY does not allow "COMPONENT" after PATTERN or REGEX."
2016-12-19 14:58:56 +03:00
Alexander Alekhin
0e4dde1781 Merge pull request #7872 from alalek:merge-2.4 2016-12-16 16:03:14 +02:00
Alexander Alekhin
540ece74a5 cmake: support ICC warnings 2016-12-15 15:57:27 +03:00
Alexander Alekhin
3ae1990727 Merge pull request #7769 from alalek:cmake_ffmpeg_cleanup 2016-12-01 20:24:05 +00:00
Vadim Pisarevsky
5e75503fc2 Merge pull request #7750 from alalek:ts_find_or_skip 2016-12-01 18:10:18 +00:00
Alexander Alekhin
39ff8a0d26 cmake: cleanup ffmpeg detection 2016-12-01 19:33:27 +03:00
mshabunin
695c518384 Updated TBB search script and code checks 2016-12-01 16:58:38 +03:00
Alexander Alekhin
71b2409df0 ts: added findDataFile() utility function and SkipTestException 2016-11-29 23:17:39 +03:00
Alexander Alekhin
6cfe4a85f7 cmake: fix ocv_check_compiler_flag 2016-10-08 02:19:43 +03:00
Alexander Alekhin
b640e72877 cmake: update PCH
1) fix include directories
2) don't use PCH for source file with custom COMPILE_FLAGS
2016-10-04 19:41:28 +03:00
Alexander Alekhin
21d9412c93 cmake: fix for GCC 6.x 2016-10-03 19:39:04 +03:00
Alexander Alekhin
db6d94a7b0 cmake: minimize MSVS projects layout
Also put "object" targets to off by default (they doesn't work well)
2016-08-26 13:40:16 +03:00
Alexander Alekhin
5f269d08b4 bigdata: add test, resolve split/merge issue 2016-07-08 18:05:53 +03:00
Alexander Alekhin
c5a8619493 cmake: fix install path
CMake doesn't work with empty paths ("") or paths which contains "./"
2016-06-28 13:29:00 +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
Alexander Alekhin
f4ebc504d1 cmake: refactor HAL attaching process 2016-06-15 17:34:30 +03:00
Alexander Alekhin
9393a0c5bb cmake: don't use -isystem for opencv_contrib paths 2016-04-18 12:48:14 +03:00
Alexander Alekhin
8f37a3a37c cmake: make ocv_cmake_dump_vars() case insensitive 2016-01-15 14:38:25 +03:00
Alexander Alekhin
9cd6731894 cmake: add DEBUG_PRE/DEBUG_POST commands handling
Useful for debug purposes:
    cmake -DDEBUG_POST="ocv_cmake_dump_vars(CUDA)" .
    cmake -DCMAKE_PRE="ocv_cmake_dump_vars(\"OPENCL|opencl\")" .
2016-01-15 14:36:03 +03:00
Alexander Alekhin
c8ff7a4867 build: fix opencv_world with CUDA 2016-01-14 17:23:55 +03:00
Alexander Alekhin
24dbb43c09 pkg-config: modules list contains only OpenCV modules (fixes #5852) 2015-12-22 17:28:38 +03:00
Alexander Alekhin
be23846c4e update osx and ios build_framework.py 2015-12-17 16:17:31 +03:00
Alexander Alekhin
2bfad68812 pkg-config: remove $<LINK_ONLY:...> expressions 2015-12-12 15:23:31 +03:00
Alexander Alekhin
d86d8ed909 Merge 2.4 into master
PR #2968: cce2d99 8578f9c
Fixed bug which caused crash of GPU version of feature matcher in stitcher

The bug caused crash of GPU version of feature matcher in stitcher when
we use ORB features.

PR #3236: 5947519
Check sure that we're not already below required leaf false alarm rate before continuing to get negative samples.

PR #3190
fix blobdetector

PR #3562 (part): 82bd82e
TBB updated to 4.3u2. Fix for aarch64 support.

PR #3604 (part): 091c7a3
OpenGL interop sample reworked not ot use cvconfig.h

PR #3792: afdf319
Add -L for CUDA libs path to pkg-config

Add all dirs from CUDA_LIBS_PATH as -L linker options to
OPENCV_LINKER_LIBS. These will end up in opencv.pc.

PR #3893: 122b9f8
Turn ocv_convert_to_lib_name into a function

PR #5490: ec5244a
fixed memory leak in findHomography tests

PR #5491: 0d5b739
delete video readers

PR #5574

PR #5202
2015-12-08 10:24:54 +03:00
Alexander Alekhin
937a096bf1 export simple libs from OPENCV_LINKER_LIBS (fix #5541) 2015-10-19 13:49:41 +03:00
Vladislav Vinogradov
02c48ab7d6 add CTest support to build tree 2015-10-13 17:34:08 +03:00
Ashley Stacey
d8d78b4a98 Fix pdb file generation on Windows for CMake versions after 3.1.0.
Pdb file support was changed in CMake 2.8.12, support was added in CMake 3.1.0 to work around the problems created by the change introduced in CMake 2.8.12.
2015-08-17 10:28:22 +10:00
Alexander Alekhin
56ad207d37 update ffmpeg wrapper binaries
Scripts are updated for Linux-based (Ubuntu 14.04) mingw cross-compilation (full stack of scripts provided)
Part of these scripts may work under Windows installation of MinGW, but it is not supported.

FFMPEG update: 2.7.1
Added OpenH264 Cisco binaries support for H264 encoding: v1.4.0
2015-07-03 19:13:15 +03:00
Maksim Shabunin
11ca4e61a7 Merge pull request #4134 from alalek:fix_get_target_property 2015-06-18 08:36:55 +00:00
Alexander Alekhin
f11ed4b91d fix "non target" warning for "world" build 2015-06-17 20:07:56 +03:00
Alexander Alekhin
1ce0ef9d41 fix build without IPP (and empty 3rdparty) 2015-06-17 17:24:35 +03:00
Maksim Shabunin
3863dc5b2b Updated pkg-config generation, added sample makefile 2015-05-22 16:09:07 +03:00
Maksim Shabunin
f803c2a7bb Generators: updated the library gathering loop 2015-04-08 14:15:20 +03:00
Maksim Shabunin
979721c979 Fix generating of android.mk 2015-04-06 16:12:00 +03:00
Roman Donchenko
6e121b2e29 Use imported targets for linking to CUDA
This retains the desirable quality of not including paths to CUDA libraries
from the build system into the config files, and has two major advantages:

* It removes the need to use link_directories, which doesn't guarantee that
  the libraries from the supplied directory will be used (there may be
  libraries with the same names earlier in the search path).

* It removes the need to put -L entries into OPENCV_LINKER_LIBS. This variable
  is used with target_link_libraries, where such entries are treated as linker
  flags, so doing this is unportable. I remove the support for -L entries
  from OpenCVGenPkgconfig.cmake, as well, to discourage adding them in the
  future.
2015-03-31 13:46:28 +03:00
Roman Donchenko
122b9f8e17 Turn ocv_convert_to_lib_name into a function 2015-03-30 14:58:37 +03:00
Maksim Shabunin
eb30799aed Disable object libraries building for cmake 2.8.7 and earlier 2015-02-25 15:00:44 +03:00