Commit Graph

1682 Commits

Author SHA1 Message Date
Alexander Alekhin
4af55e64e9 cmake: support OPENCV_ABI_SKIP_MODULES_LIST
backporting of commit f163778da7
2020-01-27 14:40:48 +03:00
Alexander Alekhin
8af87d5792 cmake: apply '-Wl,--as-needed' linker option 2020-01-21 19:09:38 +03:00
h6197627
fb3a334bbe cmake: fix Linux system OpenEXR detection 2020-01-16 23:12:41 +02:00
Alexander Alekhin
d064079a4e build: eliminate build warnings 2019-12-25 23:28:24 +00:00
Tatsuro Shibamura
971ae00942 Merge pull request #16027 from shibayan:arm64-windows10
* Support ARM64 Windows 10 platform

* Fixed detection issue for ARM64 Windows 10

* Try enabling ARM NEON intrin

* build: disable NEON with MSVC compiler

* samples(directx): gdi32 dependency
2019-12-17 00:23:30 +03:00
Alexander Alekhin
60ba6ef916 Merge pull request #16163 from alalek:fix_16122 2019-12-14 18:51:22 +00:00
Alexander Alekhin
424e1150ae cmake: fix OpenCV_ARCH 2019-12-14 15:02:43 +00:00
Alexander Alekhin
a45928045a
Merge pull request #16150 from alalek:cmake_avoid_deprecated_link_private
* cmake: avoid deprecated LINK_PRIVATE/LINK_PUBLIC

see CMP0023 (CMake 2.8.12+)

* cmake: fix 3rdparty list

- don't include OpenCV modules
2019-12-13 17:52:40 +03:00
Alexander Alekhin
6ea29a7696 cmake: prefer using CMAKE_SYSTEM_PROCESSOR / CMAKE_SIZEOF_VOID_P
Drop:
- discouraged CMAKE_CL_64
- MSVC64
- MINGW64
2019-12-11 00:21:10 +00:00
Pádraig Brady
7b298b0995 Fix pch generation when linker flags used with GCC
-c is required to avoid linking (and the associated missing "main" message)
when linker flags like "-Wl,-z,relro" are passed to GCC
2019-12-10 14:55:56 +00:00
Lubov Batanina
7523c777c5 Merge pull request #15537 from l-bat:ngraph
* Support nGraph

* Fix resize
2019-12-02 16:16:06 +03:00
Alexander Alekhin
70146700aa Merge pull request #15839 from alalek:core_simd_v_setall_template 2019-11-27 19:19:35 +00:00
Alexander Alekhin
6773b938b3 Merge pull request #15896 from alalek:build_gcc_9 2019-11-14 14:22:02 +00:00
Alexander Alekhin
7ecdcf6ca6 build: GCC9 compilation 2019-11-12 18:49:34 +03:00
Alexander Alekhin
af92a517a7 cmake: set _WIN32_WINNT for Windows 7 API 2019-11-11 20:19:40 +00:00
Alexander Alekhin
d32d31577c Merge pull request #15835 from alalek:cmake_cpu_optimizations_fix_15802 2019-11-10 09:22:45 +00:00
Alexander Smorkalov
377fcc062d Merge pull request #15159 from SSE4:fix_find_openexr 2019-11-06 13:37:37 +00:00
SSE4
2e20f06f8e - fix FindOpenEXR to respect OPENEXR_ROOT
Signed-off-by: SSE4 <tomskside@gmail.com>
2019-11-06 17:26:52 +07:00
Alexander Alekhin
a893969ec9 core(simd): v_setall template 2019-11-03 12:49:25 +00:00
Alexander Alekhin
21c38bbdaf cmake(cpu optmizations): fix cleanup of OPENCV_DEPENDANT_TARGETS_* vars 2019-11-02 10:34:54 +00:00
Alexander Alekhin
6e85e852d4 Merge pull request #15740 from xerus:fix_typo 2019-10-18 18:41:35 +00:00
Fei Wu
90af2835a2 Fix issue 15730. 2019-10-19 00:36:18 +08:00
Pavel Grunt
83e2e124a3 OpenCVFindMKL: Fix a typo 2019-10-18 18:33:06 +02:00
Alexander Alekhin
c4e2e17b0c cmake: fix UWP scripts path 2019-10-16 21:42:31 +00:00
Alexander Alekhin
42ac089e12 build: update AVX2 check
- _mm256_bslli_epi128() works in GCC 4.9.3+ only
- Android NDK r10 doesn't support this instruction
2019-10-08 13:12:02 +03:00
Alexander Alekhin
98fc098216 Merge pull request #15646 from alalek:fix_avx512_detection 2019-10-05 15:30:09 +00:00
Alexander Alekhin
bdc097495a fix avx512 detection
- renamed Cascade Lake AVX512_CEL => AVX512_CLX (align with Intel SDE tool)
- fixed CLX instruction sets (no IFMA/VBMI)
- added flag to bypass CPU baseline check: OPENCV_SKIP_CPU_BASELINE_CHECK
2019-10-05 11:03:57 +00:00
Alexander Alekhin
2b66495a9d dnn: use OpenVINO 2019R3 defines 2019-10-02 18:47:01 +03:00
Alexander Alekhin
c92f3072b4 cmake: add check for IPP IW license files 2019-10-01 18:24:03 +03:00
mipsopen-fwu
b1ea91d8bd Merge pull request #15422 from mipsopen-fwu:msa-dev
* Added MSA implementations for mips platforms. Intrinsics for MSA and build scripts for MIPS platforms are added.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* Removed some unused code in mips.toolchain.cmake.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* Added comments for mips toolchain configuration and disabled compiling warnings for libpng.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* Fixed the build error of unsupported opcode 'pause' when mips isa_rev is less than 2.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* 1. Removed FP16 related item in MSA option defines in OpenCVCompilerOptimizations.cmake.
2. Use CV_CPU_COMPILE_MSA instead of __mips_msa for MSA feature check in cv_cpu_dispatch.h.
3. Removed hasSIMD128() in intrin_msa.hpp.
4. Define CPU_MSA as 150.
Signed-off-by: Fei Wu <fwu@wavecomp.com>

* 1. Removed unnecessary CV_SIMD128_64F guarding in intrin_msa.hpp.
2. Removed unnecessary CV_MSA related code block in dotProd_8u().

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* 1. Defined CPU_MSA_FLAGS_ON as "-mmsa".
2. Removed CV_SIMD128_64F guardings in intrin_msa.hpp.

Signed-off-by: Fei Wu <fwu@wavecomp.com>

* Removed unused msa_mlal_u16() and msa_mlal_s16 from msa_macros.h.

Signed-off-by: Fei Wu <fwu@wavecomp.com>
2019-09-20 19:52:48 +03:00
Alexander Alekhin
33e9fe9312 Merge pull request #15540 from alalek:issue_15278_2 2019-09-18 20:12:36 +00:00
Alexander Alekhin
65c209fad3 Merge pull request #15519 from mshabunin:fix-custom-install 2019-09-18 15:31:25 +00:00
Alexander Alekhin
c657c6cbac cmake: use 'long long' for atomic check 2019-09-18 15:18:09 +00:00
Maksim Shabunin
5a75808516 Windows: partially restore install config generation 2019-09-16 12:11:48 +03:00
Alexander Alekhin
89b82e796e Merge pull request #15449 from mshabunin:cmake-download-params 2019-09-13 17:03:28 +00:00
huihut
fe42933ac5 Merge pull request #15433 from huihut:master
* fix 'chmod' is not recognized as an internal or external command in Windows

https://github.com/opencv/opencv/issues/14939

* cmake: update PCH command handling
2019-09-04 18:36:56 +03:00
Maksim Shabunin
9d4f01626c cmake: add directory creation to download helper scripts 2019-09-04 17:09:13 +03:00
Maksim Shabunin
d974d4c6ce cmake: download tries, customizable download parameters 2019-09-04 17:09:13 +03:00
Maksim Shabunin
8c849a48cc Ported install layout refactoring from master branch 2019-08-29 17:01:49 +03:00
Ilya Lavrenov
d0c4a92b4c Adopted detection of Inference Engine 2019-08-23 17:37:57 +03:00
Alexander Alekhin
464972855e cmake: add libatomic check 2019-08-21 13:02:36 +03:00
luz.paz
57ccf14952 FIx misc. source and comment typos
Found via `codespell -q 3 -S ./3rdparty,./modules -L amin,ang,atleast,dof,endwhile,hist,uint`

backporting of commit: 32aba5e64b
2019-08-15 13:09:52 +03:00
Alexander Alekhin
a703b9ed84 Merge pull request #15101 from alalek:cmake_initialization 2019-08-14 19:17:07 +00:00
Alexander Alekhin
6f267be6f1 Merge pull request #15260 from tomoaki0705:suppressNoisyWarning 2019-08-08 15:45:29 +00:00
Tomoaki Teshima
40c71a2463 suppress noisy warning
* add -Wno-psabi when using GCC 6
  * add -Wundef for CUDA 10
  * add -Wdeprecated-declarations when using GCC 7
  * add -Wstrict-aliasing and -Wtautological-compare for GCC 7
  * replace cudaThreadSynchronize with cudaDeviceSynchronize
2019-08-08 21:49:32 +09:00
Alexander Alekhin
5ef548a985 cmake: update initialization 2019-08-08 15:23:16 +03:00
Victor Romero
987bb2ca61 Fix build for UWP
backport of commit: f18cbd036a
2019-08-05 17:19:36 +03:00
Hugo Lindström
03fe1cb7fc Support building shared libraries on WINCE. 2019-08-01 15:28:04 +02:00
Alexander Alekhin
d2911a8d41 dnn: use OpenVINO 2019R2 defines 2019-07-24 21:37:03 +00:00
Alexander Alekhin
ff877af2af Merge pull request #14929 from alalek:cmake_rpath_link_support 2019-07-02 20:31:33 +00:00
Alexander Alekhin
3b8701e97e Merge pull request #14963 from alalek:pr14925_fix 2019-07-02 19:43:09 +00:00
Alexander Alekhin
e3e8a58799 Merge pull request #14958 from tomoaki0705:fixArmFp16Behavior 2019-07-02 16:40:21 +00:00
Alexander Alekhin
275579a835 Merge pull request #14925 from StefanBruens:handle_absolute_include_path 2019-07-02 16:05:53 +00:00
Tomoaki Teshima
db6a6ccaba re-enable CPU_BASELINE=FP16 on Armv7 platform 2019-07-02 21:57:15 +09:00
Alexander Alekhin
bc79f477dd cmake: support rpath-link linker option
- builds with CMAKE_SKIP_RPATH=ON should properly find project .so files from <build>/lib directory
- $ORIGIN doesn't work properly in cross-compilation mode
2019-06-29 11:03:45 +00:00
Alexander Alekhin
e3aa96ccf2 cmake: normalize include directories in OpenCVConfig.cmake 2019-06-28 20:57:58 +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
Stefan Brüns
e10c01047c Fix detection of 32bit ARM builds on Aarch64
It is perfectly possible to compile ARM binaries on Aarch64. Generalize
the code to no only swap X86 with X86_64, but also ARM and AARCH64.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
2019-06-28 14:17:30 +02:00
Vitaly Tuzov
d2aadabc5e Merge pull request #14743 from terfendail:wui512_fixvswarn
Fix for MSVS2019 build warnings (#14743)

* AVX512 arch support for MSVS

* Fix for MSVS2019 build warnings: updated integral() AVX512 implementation

* Fix for MSVS2019 build warnings: reworked v_rotate_right AVX512 implementation

* fix indentation
2019-06-11 23:07:39 +03:00
Alexander Alekhin
878af7ada8
Merge pull request #14725 from alalek:update_openexr_2.3.0
3rdparty: update OpenEXR 2.3.0 (#14725)

* openexr 2.2.1

* openexr 2.3.0

* openexr: build fixes

* openexr: build dwa tables on-demand
2019-06-10 20:04:23 +03:00
Maksim Shabunin
65919ed839 AVX 512 detection: workaround for older GCC 2019-06-07 13:58:09 +03:00
Alexander Alekhin
d8b42792a6 cmake: update ENABLE_FAST_MATH option 2019-05-30 19:44:35 +03:00
Maksim Shabunin
472f3b7347 Fix TBB debug 2019-05-27 10:26:06 +03:00
Maksim Shabunin
dc28a1aba2 highgui: fixed build GTK2+OpenGL 2019-05-23 16:30:22 +03:00
Maksim Shabunin
fff7b7e459 LAPACK: add support for complex numbers for MSVC 2019-05-22 18:43:45 +03:00
Sergiu Deitsch
bc4b2d521c Merge pull request #13337 from sergiud:eigen-cross-compile
* added support for Eigen cross-compilation

* cmake: fix Eigen detection
2019-05-20 21:05:42 +03:00
Alexander Alekhin
eb161942de Merge pull request #14486 from alalek:cmake_dispatch_all 2019-05-07 14:25:02 +00:00
Maksim Shabunin
5acfa524cb Added support for Clang build hardening (including Apple) 2019-05-07 13:00:43 +03:00
Alexander Alekhin
6b6222bfbb cmake: support CPU_DISPATCH=ALL, fix misused CPU_DISPATCH
- CPU_DISPATCH_FINAL should be used for filtering
2019-05-05 11:24:21 +00:00
Sayed Adel
5a77f4cee3 Merge pull request #14007 from seiko2plus:core_avx512_infa
* core: improve AVX512 infrastructure by adding more CPU features groups

* cmake: use groups for AVX512 optimization flags

* core: remove gap in CPU flags enumeration

* cmake: restore default CPU_DISPATCH
2019-05-05 14:19:49 +03:00
Alexander Alekhin
82be2d6210 Merge pull request #14430 from alalek:cmake_fix_include_pkgconfig_3.4 2019-04-26 20:18:59 +00:00
Alexander Alekhin
b95fdc1992 Merge pull request #14394 from alalek:build_support_memory_sanitizers 2019-04-26 16:13:52 +00:00
Alexander Alekhin
90c34c5c17 cmake: fix pkg-config handling
backporting commit c9f3f4d1d3
2019-04-26 18:25:47 +03:00
Alexander Alekhin
0023d8a106 Merge pull request #14410 from adamrankin:master 2019-04-25 18:45:14 +00:00
Adam Rankin
a164a131f9 BUG: Qt5 components not correctly detected if only Qt5_DIR is provided, when this is supported by Qt CMake system.
Fixed by updating Qt5 find_package call to use modern CMake syntax
2019-04-24 15:46:30 -04:00
Alexander Alekhin
c1981f28ad build: +OPENCV_ENABLE_MEMORY_SANITIZER flag 2019-04-22 21:35:25 +00:00
Alexander Alekhin
319e891d7d cmake: guard macro definitions in PCH scripts
fixes build with VTK
2019-04-22 17:43:32 +03:00
Alexander Alekhin
2e4d771005 cmake: fix PDB handling 2019-04-19 14:53:35 +03:00
Alexander Alekhin
2b84039a16 Merge pull request #14313 from alalek:cmake_pch_fix_defines_from_interface_targets 2019-04-17 19:02:28 +00:00
Alexander Alekhin
6d3ae8d4ca Merge pull request #14341 from alalek:cmake_fix_pkgconfig_libs 2019-04-16 19:04:07 +00:00
Alexander Alekhin
7c1d9fea8b Merge pull request #14308 from m000:master 2019-04-16 11:58:21 +00:00
Alexander Alekhin
0d747daf47 cmake: use absolute library paths from 'pkgconfig'
- drop legacy check_module() macro
- drop 'ALIASOF_'
2019-04-15 22:11:49 +00:00
lain
246733382f Fix OpenCVConfig.cmake for Arch Linux. 2019-04-14 12:22:57 -07:00
Manolis Stamatogiannakis
ef16e4203e Fix compile error with external TBB and -DBUILD_SHARED_LIBS=OFF.
Adds IMPORTED for the TBB::tbb alias target as otherwise cmake produces
the following error:

CMake Error: install(EXPORT "OpenCVModules" ...) includes target "opencv_core" which requires target "tbb" that is not in the export set.

This problem occurs with the defaults used by homebrew on macOS, which
compiles both static and shared versions of TBB and OpenCV.
2019-04-13 21:53:04 +02:00
Alexander Alekhin
9515137cb2 cmake: fix PCH generation
process defines from INTERFACE targets
2019-04-12 17:39:02 +03:00
Alexander Alekhin
a9ddf12187 Merge pull request #14078 from alalek:test_python_from_modules 2019-04-12 11:39:12 +00:00
Alexander Alekhin
39630e076a
Merge pull request #14294 from alalek:issue_14286
cmake: fix WITH_OPENCL_D3D11_NV check
2019-04-11 17:50:15 +03:00
Alexander Alekhin
a0a1fb5fec python: discover tests from module/misc/python/test paths 2019-04-10 18:35:35 +00:00
Alexander Alekhin
d8b8c3b145 Merge pull request #14233 from alalek:cmake_fix_license_install 2019-04-03 19:30:47 +00:00
Alexander Alekhin
8483801eab dnn: use OpenVINO 2019R1 defines 2019-04-03 15:39:47 +03:00
Alexander Alekhin
4fa4bef41d cmake: fix licenses install rules 2019-04-02 19:24:14 +03:00
Alexander Alekhin
2a2d195240 cmake: don't add tests dirs as include directories
- use relative paths for includes
- fix PCH generation with GCC (dummy file has been used)
2019-04-02 12:28:25 +03:00
iPanda
097fc1a271 Merge pull request #13972 from Mainvooid:add_cuda_support_for_D3D11_interop
* Add CUDA support for D3D11 interop. #13888

color_detail.hpp: fixed build error : dynamic initialization is not supported for a __constant__ variable.
directx.cpp: Add CUDA support(cl_nv_d3d11_sharing) for D3D11 interop.  #13888

Update directx.cpp

Format adjustment.

Update directx.cpp

fix error.

Update directx.cpp

Format adjustment

Update directx.cpp

fix trailing whitespace.

fix format errors

convert indentation to spaces .
Trim trailing whitespace.
Add information about source of cl_d3d11_ext.h
Avoid unrelated changes.

Increase compile-time conditional judgment.

Increase the judgment of whether the OCL device has the required extensions at compile time.

Add compilation option  `HAVE_CLNVEXT`.Check CL support in runtime.

Check result of `clGetExtensionFunctionAddressForPlatform` for KHR is invalid.It always can get the address(from OpenCL.dll),So I check NV support(from nvopencl64.dll) before KHR when `HAVE_CLNVEXT` is enabled.

Delete cl_d3d11_ext.h

Modified parameter list

fix "cannot open include file: 'CL/cl_d3d11_ext.h'"

 remove not referenced var

fix C2143: syntax error

Improve compile-time judgment.

dlrectx.cpp Modify the detection order.
initializeContextFromD3D11Device:
```
    // try with NV(Need to check it first)
    // try with KHR
```

fix warnig C4100

Revert "fix warnig C4100"

This reverts commit 76e5becb67780071d0cbde61cc4f5f807ad7c5ac.

fix warning C4100

fix warning C4505

Format alignment

Format adjustment and automatically detect header files.

Automatically detect header files when users are not configured or configuration errors occur.

avoid unrelated changes.

Update .cmake

Update .cmake

* fix build errors

* fix warning:defined but not used

* Revert "fix warning:defined but not used"

This reverts commit 7ab3537cd0.

* fix warning:defined but not used

* fix build error for mac

* fix build error for win

* optimizing branch judgment

* Revert "optimizing branch judgment"

This reverts commit 88b72b870e.

* fix warning C4702: unreachable code

* remove unused code

* Fix problems that may lead to undefined behavior

* Add status check

* fix error C2664,C2665 : cannot convert argument

* Format adjustment

VSCODE will automatically format the indentation to 4 spaces in some situation.

* fix error C2440

* fix error C2440

* add cl_d3d11_ext.h

* Format adjustment

* remove unnecessary checks
2019-03-24 18:34:09 +03:00
Alexander Alekhin
65fc863d86 cmake: support OpenVINO env variable: INTEL_OPENVINO_DIR 2019-03-22 00:03:03 +03:00
Sayed Adel
0df607e5dd cmake:vsx Fix compilation fail on aligned runtime test when c++11 enabled 2019-03-21 11:21:00 +02:00
Sayed Adel
f41359688b core:vsx Add support for VSX3 half precision conversions 2019-03-20 10:19:42 +02:00
Alexander Alekhin
fdf6323942 Merge pull request #14026 from Palmitoxico:android-ndk 2019-03-18 15:40:03 +00:00
Augusto Fraga Giachero
032e458085 Avoid unexpected line breaks in version_string.inc
The Android NDK 16b has a bug that sets the ANDROID_NDK_REVISION
variable incorrectly, generating an unexpected line break in the
middle of the string. This breaks the build as the generated
version_string.inc presents an invalid C string.

Remove leading and trailing line breaks, warns for line breaks in the
middle of 'msg' and escape them before appending to
OPENCV_BUILD_INFO_STR.
2019-03-18 11:57:05 -03:00
Alexander Alekhin
ccbc16f3a9 cmake: clean unreferenced functions from OpenCV modules too 2019-03-15 18:54:08 +03:00
Sayed Adel
872e7894b4 core:vsx working around gcc aligned memory access bug
- allow cmake to check sanity of vsx aligned ld/st
 - force universal intrinsics v_load_aligned/v_store_aligned
   to failback to unaligned ld/st if cmake runtime vsx aligned test fail
2019-03-14 01:55:40 +02:00