Commit Graph

1057 Commits

Author SHA1 Message Date
Samuel Martin
671a630f47 cmake/OpenCVGenPkgconfig.cmake: rework opencv.pc generation
Using absolute path to locate the components in the "Libs:" field of the
*.pc can badly break cross-compilation, especially when building
statically linked objects.

Indeed, pkg-config automatically replaces the '-I...' and '-L...' paths
when the PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR environment
variables are set [1]. This feature is very helpful and common in
cross-compilation framework like Buildroot [2,3].

When there are absolute paths in the *.pc files, pkg-config won't be
able to do the path substitutions for these paths when the
aforementioned environment variables are set.
In such case, since the prefix is the target one, not the sysroot one,
these libraries' absolute paths will point to:
- in the best case: a non-existing file (i.e. these files do not exists
  on the host system;
- at worst: the host system's libraries. This will make the linking
  failed because these host system's libraries will most likely not be
  build for the target architecture [4].

So, this patch replace the components' absolute paths by the form:
  -L<libdir> -l<libname>

This way, the linker will be able to resolve each dependency path,
whatever the kind of objects/build (shared object or static build) it
is dealing with.

Note that for static link, the library order does matter [5]. The order
of the opencv components has been carefully chosen to comply with this
requirement.

Fixes #3931

This patch is a port of [6] on the master branch.

[1] http://linux.die.net/man/1/pkg-config
[2] http://buildroot.org/
[3] http://git.buildroot.net/buildroot/tree/package/pkgconf/pkg-config.in
[4] http://autobuild.buildroot.net/results/e8a/e8a859276db34aff87ef181b0cce98916b0afc90/build-end.log
[5] http://stackoverflow.com/questions/45135/linker-order-gcc
[6] eceada586b

Signed-off-by: Samuel Martin <s.martin49@gmail.com>
2015-05-22 16:09:05 +03:00
Ilya Lavrenov
d89b6226a3 fixed Android mk generation for arm64-v8a 2015-05-21 15:00:46 +03:00
Piotr Dobrowolski
6d0407b65e VideoCapture with digital camera and gPhoto2 library 2015-05-21 00:41:39 +02:00
Vladislav Vinogradov
21d8b588a2 exclude dates from report names 2015-05-19 18:26:13 +03:00
Vladislav Vinogradov
5d66b1130b save tests console output to separate log files 2015-05-19 18:26:13 +03:00
Vladislav Vinogradov
0550b2c1fe check that current directory has write access 2015-05-19 18:26:04 +03:00
Alexander Smorkalov
7f63776395 Precise default CUDA version for Tegra X1 chips. 2015-05-19 13:24:17 +03:00
Maksim Shabunin
e936670571 Install cvconfig.h file 2015-05-18 19:19:48 +03:00
Alexander Smorkalov
0410fe6978 Merge pull request #3785 from jet47:tiny-gpu-module 2015-05-18 08:00:12 +00:00
Vadim Pisarevsky
35884a7e3f Merge pull request #3982 from patrikhuber:vs2015-support-master 2015-05-15 12:32:27 +00:00
Vadim Pisarevsky
a26ab3ab16 Merge pull request #3917 from yanlend:patch-1 2015-05-14 21:16:24 +00:00
Marvin Smith
ae933db526 Fixing the gdal include error that Macports seems to only mess up. 2015-05-11 20:27:50 -07:00
Vadim Pisarevsky
1aa03cecf1 Merge pull request #3981 from patrikhuber:vs2015-support 2015-05-06 15:35:36 +00:00
Vladislav Vinogradov
cde697dd14 introduce BUILD_TINY_GPU_MODULE CMake option
it adds OPENCV_TINY_GPU_MODULE definition, that will allow
to build tiny version of gpu module (with limited image format support)
2015-05-06 17:13:59 +03:00
Alexander Smorkalov
63d6cc5ca6 Added explicit deb package dependency from libtbb-dev if TBB is enabled. 2015-05-06 13:10:39 +03:00
Patrik Huber
40b765b7c2 Add VS2015 compatibility to CMake scripts 2015-05-02 15:24:14 +01:00
Patrik Huber
2b1103c1d3 Add support for VS2015
Without the fix, OpenCV will compile and silently copy the compiled libs/executables to a location not prefixed with arch/vc14, and OpenCV won't be picked up by find_package and OpenCVConfig.cmake.
2015-05-02 13:31:43 +01:00
Vadim Pisarevsky
30a3ff0de6 fixed compile errors on OSX and other systems where ffmpeg is detected manually, not via pkg-config 2015-04-29 11:43:53 +03:00
Vadim Pisarevsky
e60dcc9b3b Merge pull request #3966 from Dikay900:master_diff_to_2_4_2 2015-04-28 11:00:57 +00:00
Maksim Shabunin
bcf02ae439 Merge pull request #3678 from mshabunin:explicit-sse-disable 2015-04-28 10:41:14 +00:00
Maksim Shabunin
1138a38dbe Use explicit no-sse flags when SSE is off
Also:
- Silence clang warnings about unsupported command line arguments
- Add diagnostic print to calib3d test
- Fixed perf test relative error check
- Fix iOS build problem
2015-04-27 15:36:10 +03:00
Mansour Moufid
655b28ee0c Use the CMake find_library command to find the FFmpeg libraries.
Conflicts:
	cmake/OpenCVFindLibsVideo.cmake
2015-04-25 19:00:33 +02:00
Vladimir Kolesnikov
2c73e49dac Not block PDB file in multithreaded build on Windows.
If used cl compiler, but generator is not Visual Studio e.g. Ninja,
enable FS option to prevent blocking PDB file in multithreaded build.
2015-04-25 18:54:50 +02:00
Abhijit Kundu
fd4df0f67d Added suuport for finding Intel TBB for Visual Studio 2013 2015-04-25 10:23:34 +02:00
Alexander Nitsch
d6c95621e8 Implement CMAKE_CURRENT_LIST_DIR for older CMake
The use of built-in CMAKE_CURRENT_LIST_DIR requires at least
CMake 2.8.3. This fix properly defines the variable to allow its
use in versions < 2.8.3 as well.

Fixes issue #4205.

Exclude >= 2.8.3 from reimplementation of CMAKE_CURRENT_LIST_DIR

This avoids violation of possible future CMake policy checks
regarding reserved/read-only variables.
2015-04-24 23:10:50 +02:00
Ilya Lavrenov
614edafe73 typo 2015-04-24 22:38:51 +02:00
Ilya Lavrenov
f57063efa2 port of aarch64 cuda changes from 2.4 2015-04-23 17:57:29 +03:00
Ilya Lavrenov
847976de4e fixed find cuda for aarch64 2015-04-23 14:49:12 +03:00
Vadim Pisarevsky
2b2e3ee93c make sure opencv builds fine with the recent versions of libav (e.g. from Ubuntu 14.10) 2015-04-22 21:57:29 +03:00
Vadim Pisarevsky
063e4004ba Merge pull request #3935 from vpisarev:extending_hal_part1 2015-04-21 14:02:02 +00:00
Vadim Pisarevsky
926754a66e another attempt to resolve ABI checker complains 2015-04-21 12:42:46 +03:00
Vadim Pisarevsky
fa41653420 trying to avoid ABI checker failures 2015-04-21 11:30:41 +03:00
Alexander Alekhin
8c2bde2af4 Merge pull request #3923 from ilya-lavrenov:typo 2015-04-13 16:57:13 +00:00
yanlend
443b3157e0 Fix win32 search for same bitness executable
find_package(PythonInterp) calls find_program(PYTHON_EXECUTABLE), i.e. without version number. For the Win32-search before to be effective, the same variable has to be used.
2015-04-10 14:57:31 +02:00
Maksim Shabunin
97c78838a4 Fixed windows build and one warning 2015-04-10 11:37:16 +03:00
Maksim Shabunin
728bd0ba84 Merge pull request #3905 from mshabunin:fix-android-mk 2015-04-09 12:08:05 +00:00
Maksim Shabunin
f803c2a7bb Generators: updated the library gathering loop 2015-04-08 14:15:20 +03:00
Maksim Shabunin
35b2139929 Basic HAL module 2015-04-07 18:16:22 +03:00
Ilya Lavrenov
4273534c92 typo 2015-04-07 11:08:21 +03:00
Maksim Shabunin
979721c979 Fix generating of android.mk 2015-04-06 16:12:00 +03:00
Alexander Smorkalov
772fcf4088 Merge pull request #3893 from SpecLad:cuda-imported-targets 2015-04-02 13:56:31 +00:00
Vadim Pisarevsky
da0e2c5bf3 Merge pull request #3889 from nitsch:fix-mingw-cmake 2015-04-02 11:45:20 +00:00
Vadim Pisarevsky
100c2dd91c Merge pull request #3852 from renko:multithread_cl_not_studio_generator 2015-04-01 13:25:39 +00:00
Vladimir Kolesnikov
58c9135626 Not block PDB file in multithreaded build on Windows.
If used cl compiler, but generator is not Visual Studio e.g. Ninja,
enable FS option to prevent blocking PDB file in multithreaded build.
2015-04-01 13:52:07 +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
149c1c16ba cap_libv4l.cpp depends on both libv4l 1 and 2, so search for both
How this worked before, I do not know.
2015-03-31 12:41:50 +03:00
Alexander Nitsch
afd9de6f1b Fix static/shared lib detection
The check for BUILD_SHARED_LIBS had its logic backwards. If this
variable is not defined we must assume a build of static libs.
2015-03-31 00:05:49 +02:00
Alexander Nitsch
66e653d24d Remove local variables from CMAKE namespace 2015-03-31 00:05:48 +02:00
Alexander Nitsch
3fff0e5b3c Fix MinGW detection on x86
Make detection of x64 using the gcc's target triplet identical
to the one used in cmake/OpenCVDetectCXXCompiler.cmake.
Otherwise, MinGW-w64 setups will always be treated as x64 since
they contain "w64" as vendor key.
2015-03-31 00:05:48 +02:00
Alexander Nitsch
8f84a73b82 Fix MinGW architecture detection
Fix typo that would always lead to detection of x86 for MinGW
builds in the OpenCVConfig.cmake file.
2015-03-31 00:05:47 +02:00
Alexander Nitsch
2e86cedef2 Fix MinGW detection on x86
MinGW-w64 always uses "w64" as vendor key which the previously
used check for "64" anywhere in the target triplet matched. This
would lead to MinGW-w64 setups always being treated as x64.

Turns out we do not even need this additional check since the
architecture has been correctly determined earlier in this file.
No need to do it again.
2015-03-31 00:02:03 +02:00
Roman Donchenko
e6619cf580 Move the CUDA searching code in OpenCVConfig.cmake.in out of the foreach loop
There's no reason to do it twice.
2015-03-30 15:04:27 +03:00
Roman Donchenko
122b9f8e17 Turn ocv_convert_to_lib_name into a function 2015-03-30 14:58:37 +03:00
howtobeahacker
ebd7d08408 fix bug 4269 2015-03-30 00:01:20 +08:00
Kevin Squire
5e354fa844 Allow PYTHON_LIBRARY and PYTHON_INCLUDE_DIR to actually be overridden 2015-03-26 17:48:03 -07:00
Vadim Pisarevsky
174593643c Merge pull request #3863 from MSOpenTech:fix_winrt_linker 2015-03-24 15:05:43 +00:00
Alexander Nitsch
d430664791 Remove local variables from CMAKE namespace 2015-03-24 14:42:55 +01:00
Evgeny Agafonchikov
c196df6db0 Do not link vfw32 library for WinRT
HAVE_VFW flag is defined by CMake try_compile check.

Check fails for WINRT as vfw.h begins with

and contains empty set of functions for Store apps.

So we can safely remove vfw32.lib for WINRT in general

(independently of availability for specific configuration)
2015-03-23 20:45:58 +03:00
Evgeny Agafonchikov
17d36b7835 Removing unused winrttest.cpp file 2015-03-23 16:56:50 +03:00
Maksim Shabunin
796bf01797 Do not compare extra modules in ABI check 2015-03-23 13:10:40 +03:00
Maksim Shabunin
9fbc92aace Added cmake option for abi descriptor generating (GENERATE_ABI_DESCRIPTOR) 2015-03-17 16:04:04 +03:00
Maksim Shabunin
632afe6ae3 Fixed mangled install layout on unix machines 2015-03-13 14:18:37 +03:00
Roman Donchenko
c71e94f054 Mark the libs component required
Everything else depends on it, after all.

(cherry picked from commit cf54e3b97e)

Conflicts:
	cmake/OpenCVPackaging.cmake
2015-03-10 16:24:23 +03:00
Roman Donchenko
8a732e306f Add component display names
(cherry picked from commit 6d52ea8984)
2015-03-10 16:24:23 +03:00
Roman Donchenko
87eb3f6e68 Update the CPack variables to match the changes in asmorkalov/CMake#1
Which also happens to align the non-Debian specific variables
with the ones used by upstream CMake.

(cherry picked from commit b8c60234c3)

Conflicts:
	cmake/OpenCVPackaging.cmake
2015-03-10 16:24:23 +03:00
Roman Donchenko
35760bb6bf Add a script to run all tests on Windows
It's pretty much a simplified copy of the Linux script, lacking fancy colors.
Also, I had to drop Python testing, because it's not easy to pass the Python
module location to the script, and I have no pressing need to run the Python
tests at the moment.

(cherry picked from commit c1e3ca170e)

Conflicts:
	CMakeLists.txt
2015-03-10 16:24:23 +03:00
Roman Donchenko
1a3273a7e3 Remove useless CPACK_*_COMPONENT_INSTALL variables
They don't actually do anything. And even if they did, all components are
enabled by default, anyway.

(cherry picked from commit 49fe496914)

Conflicts:
	cmake/OpenCVPackaging.cmake
2015-03-10 12:53:28 +03:00
Alexander Nitsch
13694c8ae8 Fix MinGW detection on x86
Make detection of x64 using the gcc's target triplet identical
to the one used in cmake/OpenCVDetectCXXCompiler.cmake.
Otherwise, MinGW-w64 setups will always be treated as x64 since
they contain "w64" as vendor key.
2015-03-07 15:49:48 +01:00
Alexander Nitsch
dde7c22fad Fix MinGW architecture detection
Fix typo that would always lead to detection of x86 for MinGW
builds in the OpenCVConfig.cmake file.
2015-03-07 15:37:21 +01:00
Vadim Pisarevsky
643bbb2d93 looks like Maksim was right; the new fix does not do the second attempt to detect python libs, it finds it correctly with the first attempt 2015-03-06 16:57:38 +03:00
Vadim Pisarevsky
4aa6d10a60 added Maksim's fix as well; they both handle correctly more cases than each of them individually 2015-03-06 15:48:36 +03:00
Vadim Pisarevsky
5d8a1bf813 explained reason why IPP is disabled on 32-bit Linux. disable IPP's minMaxLoc_32f on 32-bit OSes only 2015-03-06 15:02:22 +03:00
Vadim Pisarevsky
7a52c3d9f1 1) make sure Python 2.7 is detected on Ubuntu (including libs) when it's there.
2) disable IPP on 32-bit Linux when OpenCV is built as shared libs. Otherwise we get linker errors
3) disable IPP's minMaxIdx 32-bit floating-point flavor in a hope that it fixes some test failures
2015-03-05 18:58:54 +03:00
Vadim Pisarevsky
6820292256 Merge pull request #3700 from MSOpenTech:winrt-cmake-contrib 2015-03-03 12:52:03 +00:00
Maxim Kostin
22a30af353 Fixing buildbot job:
- explicitly turning OCL off since WinRT does not support it
 - fixing macro definitions in core/ocl.cpp

Signed-off-by: Maxim Kostin <v-maxkos@microsoft.com>
2015-03-02 22:26:45 +03:00
Maxim Kostin
cdd23440c9 Adding support for WinRT(WinPhone 8/8.1 and Win Store) via CMake 3.1
- Substituted HAVE_WINRT with WINRT
- Fixed compilation issues in ocl.cpp and parallel.cpp
- Fixed compiler issue for WP8: "C2678: binary '+' : no operator found which takes a left-hand - Fixed gitignore
- Added #ifdef HAVE_OPENCL to remove compiler warnings in ocl.cpp
- Used NO_GETENV similar to '3rdparty\libjpeg\jmemmgr.c;
- Added ole32.lib for core module (for WindowsStore 8.0 builds)
- Made OpenCV_ARCH aware of ARM

Signed-off-by: Maxim Kostin <v-maxkos@microsoft.com>
2015-03-02 22:26:43 +03:00
Maksim Shabunin
37c74e38f4 Python support 2015-03-02 18:13:00 +03:00
Maksim Shabunin
457123027e Modified java wrapping mechanism 2015-03-02 18:12:30 +03:00
Vadim Pisarevsky
b595812bd0 Merge pull request #3745 from nitsch:fix-mingw-detection 2015-03-02 10:55:00 +00:00
Vadim Pisarevsky
8e37a693e5 Merge pull request #3758 from ilya-lavrenov:aarch64 2015-03-02 10:50:31 +00:00
Vadim Pisarevsky
0a5df01626 Merge pull request #3763 from laomaiweng:patch-1 2015-03-02 10:35:40 +00:00
Quentin Minster
98d7e52b0a Update OpenCVDetectCUDA.cmake
Add check for CUDA version >= 7.0 (currently in RC1), which drops support for arches 1.x.
2015-02-27 00:41:31 +01:00
Ilya Lavrenov
c5a80193a8 aarch64 support 2015-02-26 19:43:32 +03:00
Maksim Shabunin
eb30799aed Disable object libraries building for cmake 2.8.7 and earlier 2015-02-25 15:00:44 +03:00
Alexander Nitsch
a5b293b412 Fix setting of architecture for MinGW builds
The architecture has been correctly determined earlier in this
file. No need to do it again.
2015-02-24 23:13:27 +01:00
Alexander Smorkalov
96d7bcc2a9 Merge pull request #3677 from ilya-lavrenov:cuda_backport 2015-02-24 15:06:15 +00:00
Ilya Lavrenov
e03136e951 backport from master 2015-02-24 16:05:21 +03:00
Alexander Smorkalov
1c6e9fdfae Merge pull request #3735 from SpecLad:align-cpack-variables 2015-02-24 11:42:40 +00:00
Alexander Nitsch
8ae6402799 Fix MinGW detection on x86
MinGW-w64 always uses "w64" as vendor key which the previously
used check for "64" anywhere in the target triplet matched. This
would lead to MinGW-w64 setups always being treated as x64.

Since we are actually interested in finding the "64" in the
triplet's operating system key, this fix makes sure to look for
"mingw64" and thus avoids the false match.

Fixes issue #3835. Credits to Lode Leroy for the original patch.
2015-02-23 15:03:28 +01:00
Ilya Lavrenov
58b3869730 fixed cross-compilation 2015-02-22 13:20:37 +03:00
Ilya Lavrenov
0832b47d21 fixed cross-compilation for Android with CUDA 2015-02-22 13:18:57 +03:00
Alexander Smorkalov
dcc569ee5c Merge pull request #3721 from nitsch:fix-cmake-current-list-dir 2015-02-21 16:49:36 +00:00
Alexander Nitsch
c2944dbc0c Exclude >= 2.8.3 from reimplementation of CMAKE_CURRENT_LIST_DIR
This avoids violation of possible future CMake policy checks
regarding reserved/read-only variables.
2015-02-20 19:55:46 +01:00
Roman Donchenko
cf54e3b97e Mark the libs component required
Everything else depends on it, after all.
2015-02-20 18:37:21 +03:00
Roman Donchenko
6d52ea8984 Add component display names 2015-02-20 18:22:01 +03:00
Roman Donchenko
b8c60234c3 Update the CPack variables to match the changes in asmorkalov/CMake#1
Which also happens to align the non-Debian specific variables
with the ones used by upstream CMake.
2015-02-20 18:21:47 +03:00
Roman Donchenko
c1e3ca170e Add a script to run all tests on Windows
It's pretty much a simplified copy of the Linux script, lacking fancy colors.
Also, I had to drop Python testing, because it's not easy to pass the Python
module location to the script, and I have no pressing need to run the Python
tests at the moment.
2015-02-20 12:38:25 +03:00
Alexander Nitsch
9665e08bac Implement CMAKE_CURRENT_LIST_DIR for older CMake
The use of built-in CMAKE_CURRENT_LIST_DIR requires at least
CMake 2.8.3. This fix properly defines the variable to allow its
use in versions < 2.8.3 as well.

Fixes issue #4205.
2015-02-20 00:55:26 +01:00
Vadim Pisarevsky
a649aea82a Merge pull request #3699 from SpecLad:rm-component-install 2015-02-18 13:55:07 +00:00
Vadim Pisarevsky
6b371865af Merge pull request #3716 from mshabunin:fix-vs-solution-build 2015-02-18 13:48:18 +00:00
Vadim Pisarevsky
4fcfcfd002 Merge pull request #3663 from eliteraspberries:ffmpeg-dylib 2015-02-18 12:50:10 +00:00
Maksim Shabunin
2085251df2 Exclude object libraries from visual studio solution build 2015-02-18 14:16:54 +03:00
Maksim Shabunin
c41db69f98 Fixed cmake issues 2015-02-18 12:44:48 +03:00
Maksim Shabunin
553020c448 Enabled STL usage within the library 2015-02-18 12:36:50 +03:00
Roman Donchenko
49fe496914 Remove useless CPACK_*_COMPONENT_INSTALL variables
They don't actually do anything. And even if they did, all components are
enabled by default, anyway.
2015-02-13 15:31:19 +03:00
Roman Donchenko
0387f8ad56 Don't use ${CMAKE_INSTALL_PREFIX} as an install destination
Absolute destinations are not necessary, and prevent CPack from working.
2015-02-10 19:43:29 +03:00
Maksim Shabunin
a5a510da4b Support for compound modules, support for contrib_world 2015-02-10 18:30:05 +03:00
Vladislav Vinogradov
6a3f33090d make color output in run_test script optional 2015-02-09 15:24:46 +03:00
Vladislav Vinogradov
682fdcfc9b make color output in run_test script optional 2015-02-09 15:23:34 +03:00
Vladislav Vinogradov
098389d8eb fix opencv_run_all_tests_unix.sh script:
use `bash` shell instead of `sh`, since on Ubuntu `sh` by default is `dash`,
and `dash` doesn't support `PIPESTATUS` feature used in this sctipt
2015-02-06 12:36:18 +03:00
Vladislav Vinogradov
94d14c637f fix opencv_run_all_tests_unix.sh script:
use `bash` shell instead of `sh`, since on Ubuntu `sh` by default is `dash`,
and `dash` doesn't support `PIPESTATUS` feature used in this sctipt
2015-02-06 12:34:50 +03:00
Vadim Pisarevsky
98f9a013d1 Merge pull request #3674 from jet47:colorize-run-test-script-2.4 2015-02-05 07:35:01 +00:00
Mansour Moufid
c60fa84027 Add back the version variables removed in ab40630f. 2015-02-04 10:55:38 -05:00
Alexander Smorkalov
a87ccb9ac0 Added Debian changelog to -tests package. 2015-02-04 16:52:39 +03:00
Vladislav Vinogradov
a9325102a2 colorize opencv_run_all_tests_unix.sh script output 2015-02-04 12:39:51 +03:00
Vladislav Vinogradov
2b303f38a8 colorize opencv_run_all_tests_unix.sh script output 2015-02-04 12:38:51 +03:00
Alexander Smorkalov
e6ac64008b Debian package names replaced by lower case version to satisfy lintian. 2015-02-04 11:56:29 +03:00
Mansour Moufid
8c68f1f626 Fix indentation of 98a157f5. 2015-02-03 23:17:43 -05:00
Mansour Moufid
98a157f589 Remove Apple-specific logic in finding the FFmpeg libraries.
Thanks to SpecLad.
2015-02-03 23:14:11 -05:00
Mansour Moufid
a1cc9380e5 Correct the new find_library commands.
Thanks to SpecLad.
2015-02-02 11:54:09 -05:00
Mansour Moufid
ab40630ff4 Use the CMake find_library command to find the FFmpeg libraries. 2015-02-01 15:51:33 -05:00
Alexander Smorkalov
cf852972d1 Fixed samples install permissions for Debian packaging. 2015-02-01 00:34:23 +03:00
Vadim Pisarevsky
1f47c22371 Merge pull request #3655 from asmorkalov:remove_opencv_testing_sh 2015-01-31 14:46:40 +00:00
Vadim Pisarevsky
602b034a03 Merge pull request #3658 from asmorkalov:numpy_dependency 2015-01-31 14:45:11 +00:00
Alexander Smorkalov
ddc1b965b6 Added Debian changelog installation step for Debian package generation. 2015-01-30 13:21:52 +03:00
Alexander Smorkalov
be6b847675 Added dependency from numpy to debian package with python bindings. 2015-01-30 12:27:33 +03:00
Alexander Smorkalov
9206ec30a2 opencv_testing.sh script installation is removed as run tests script does the same thing. 2015-01-29 19:20:18 +03:00
Vadim Pisarevsky
97aa8d3341 Merge pull request #3603 from alalek:ocl_svm 2015-01-29 05:35:46 +00:00
Vadim Pisarevsky
f3311f9e2a Merge pull request #3638 from jet47:remove-cuda-module 2015-01-28 18:51:32 +00:00
Vadim Pisarevsky
5cbdce97aa Merge pull request #3645 from SeninAndrew:mp-msvs-fix 2015-01-28 18:50:39 +00:00
Andrew Senin
d08589d435 Fix for Visual Studio multiprocess builds for CMake versions > 2.8 2015-01-26 18:54:27 +04:00
Vladislav Vinogradov
482feb7266 FindCUDA fix : do not unset CACHE variables on first call
This will allow to override CUDA CMake variables from first CMake call,
like cmake -DCUDA_TOOLKIT_ROOT_DIR=... -DCUDA_CUDA_LIBRARY=...
2015-01-26 10:24:53 +03:00
Alexander Alekhin
0a07d780e0 ocl: OpenCL SVM support 2015-01-23 20:37:45 +03:00
Vladislav Vinogradov
fa23a01775 fix FindCUDA CMake module:
do not unset variables if CUDA_TOOLKIT_TARGET_DIR is not defined
2015-01-23 19:17:00 +03:00
Vladislav Vinogradov
124ac15f1e remove cuda module 2015-01-22 15:02:21 +03:00
Vadim Pisarevsky
03fc3d1ceb Merge pull request #3591 from ilya-lavrenov:sse_avx 2015-01-21 10:46:23 +00:00
Vadim Pisarevsky
adbe84425f Merge pull request #3622 from nagua:fix_find_gstreamer 2015-01-21 10:44:11 +00:00
Ilya Lavrenov
e9a6c5db21 sqsum 2015-01-20 21:10:06 +03:00
Vadim Pisarevsky
579ce93885 Merge pull request #3598 from caraffi:bug4108_testCasesLinkError 2015-01-20 12:59:34 +00:00
Vadim Pisarevsky
aacb9b7cf5 Merge pull request #3610 from jet47:fix-ocv_add_module-3.0 2015-01-20 12:35:36 +00:00
Vadim Pisarevsky
c29c52a216 Merge pull request #3609 from jet47:fix-ocv_add_module-2.4 2015-01-20 12:34:50 +00:00
Nicolas Riebesel
052fe626b3 Corrected the WITH_GSTREAMER and WITH_GSTREAMER_0_10 semantic 2015-01-18 20:27:09 +01:00
Vadim Pisarevsky
396f7e1a17 Merge pull request #3604 from asmorkalov:ocv_samples_package 2015-01-16 10:23:32 +00:00
Vladislav Vinogradov
698c367d8d fix ocv_add_module CMake macro:
it tries to remove 'opencv_' prefix from 'name' variable, but
it creates new variable with the same name as module
2015-01-16 11:00:56 +03:00
Vladislav Vinogradov
12a3eb776d fix ocv_add_module CMake macro:
it tries to remove 'opencv_' prefix from 'name' variable, but
it creates new variable with the same name as module
2015-01-16 10:59:52 +03:00
Vladislav Vinogradov
0376a8643e fix CMake CMP0054 warning:
ported from c105b72945
2015-01-15 18:40:33 +03:00
Alexander Smorkalov
6628714fc6 Fixed -samples debian package dependencies. 2015-01-15 15:36:45 +03:00
Claudio Caraffi
efc7dbaae2 Prevent linking failure, bug 4108 2015-01-14 11:55:41 +01:00
Vadim Pisarevsky
9cadc1e530 Merge pull request #3310 from tSed:opencv-2.4/fix-gstreamer-detection 2015-01-13 11:25:32 +00:00
Ilya Lavrenov
f2cd65cf1e fixes 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
25e99c453f avx2 in arithm 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
612b8ce2cb fixed compilation issues 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
fc0869735d used popcnt 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
bc394e7516 detection of other CPU features 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
8d48632ebe avx2 2015-01-12 10:59:28 +03:00
Vladislav Vinogradov
d8272b9395 remove "-target-os-variant" NVCC option for CUDA 7.0
it is marked as obsolete
2015-01-12 10:58:43 +03:00
Alexander Smorkalov
c778011f14 More accurate AVX and AVX2 control.
- Previous version just checked option support, but not enable it.
- Also OpenCV tests reports invalid AVX and AVX2 support status.
2015-01-04 23:41:14 +03:00
Alexander Smorkalov
0f263e125b Full AARCH64 support with NEON and new CUDA toolkit. 2014-12-28 11:51:33 +03:00
Maksim Shabunin
bebf6c47c6 Removed Sphinx generation commands from cmake scripts 2014-12-26 19:17:08 +03:00
Andrey Kamaev
7ec6d8a336 Fix Android build with the most resent android.toolchain.cmake 2014-12-25 12:41:17 +03:00
Andrey Kamaev
c105b72945 Assorted fixes:
* cmake CMP0054 and CMP0045
* aarch64 build
* portable code options in PCH cmake
* some of gcc 4.9 warnings
2014-12-25 12:41:16 +03:00
Maksim Shabunin
128e509527 Added enviroment search paths for OpenNI2 for linux and fixed specific warning 2014-12-24 15:07:05 +03:00
Vadim Pisarevsky
214f633dd4 Merge pull request #3541 from jet47:find-cuda-update 2014-12-24 11:14:54 +00:00
Vadim Pisarevsky
8d4d36f805 Merge pull request #3538 from alalek:icv_fix_package 2014-12-24 09:00:32 +00:00
Vladislav Vinogradov
e4d0652899 [FindCUDA] improvements for cross-platform build
* improve `CUDA_TARGET_CPU_ARCH` cache initialization,
    allow to override initial value from calling script;
* add `CUDA_TARGET_OS_VARIANT` option to select OS variant;
* add `CUDA_TARGET_TRIPLET` option to select target triplet from
    `${CUDA_TOOLKIT_ROOT_DIR}/targets` folder;
* remove `CUDA_TOOLKIT_TARGET_DIR` option, now it is calculated from
    `CUDA_TARGET_TRIPLET`, the old approach still can be used for compatibility;
* for CUDA 6.5 and newer try to locate static libraries too, because
   in 6.5 toolkit for ARM cross compilation only static libraries are included.
2014-12-23 17:48:18 +03:00
Vladislav Vinogradov
c4246bc59c update FindCUDA CMake module to the latest version from upstream 2014-12-23 17:47:04 +03:00
Alexander Alekhin
864ec5ef45 IPPICV: don't use full paths in dependencies 2014-12-23 17:23:35 +03:00
Vadim Pisarevsky
fd6ef87c32 Merge pull request #3529 from jet47:fix-linux-install 2014-12-23 13:38:23 +00:00
Vadim Pisarevsky
5fea331d42 Merge pull request #3510 from boaz001:feature-4057 2014-12-22 10:27:33 +00:00
Vladislav Vinogradov
b15cf355af remove opencv_testing.sh installation to /etc/profile.d/
opencv_run_all_tests_unix.sh already exports OPENCV_TEST_DATA_PATH
2014-12-19 11:55:38 +03:00
Boaz Stolk
bb873b1de5 add option to link to dynamic IPP libraries 2014-12-12 14:21:47 +01:00
Ilya Lavrenov
ce81433aff ability to enable OpenMP simultaneously with other parallel framework 2014-12-10 13:34:39 +03:00
Maksim Shabunin
c28fea32c7 Build separate world-like iOS framework for contrib 2014-12-05 17:48:28 +03:00
orestis
aad98e545f Remove redundant -mfpu=neon flag.
This flag is already added in line 131.
2014-11-19 23:26:36 +02:00
Philipp Hasper
799646e5d0 Typos in CMake 2014-11-17 12:30:12 +01:00
Daniel Sjölie
a9a45e1546 Merge remote-tracking branch 'upstream/master' into daniel 2014-11-14 13:44:06 +01:00
Michae Gharbi
28103ad386 Fix Cuda -Wl linker options
This line causes the following error when building custom projects that use OpenCV beta 3:
ld: warning: directory not found for option '-L/<project_root>/-Wl,/usr/local/cuda'
2014-11-11 12:12:28 -05:00
Vadim Pisarevsky
b80a3a91a8 Merge pull request #3401 from SpecLad:optflow-bogus-Warray-bounds 2014-11-11 13:27:41 +00:00
Roman Donchenko
13d67b6ae7 Suppress a bogus -Warray-bounds in modules/superres/src/optical_flow.cpp
This is actually the same warning that the suppression at the bottom
suppresses, but that one doesn't suppress it when using a native compiler
(go figure).

I remove the forced inclusion of precompiled headers into all sources,
since otherwise this workaround doesn't work - the header with the warning
is included before I can use a pragma.
2014-11-10 18:38:54 +03:00
Vadim Pisarevsky
3da1144cef Merge pull request #3305 from tSed:opencv-2.4.x/opencv.pc-generation-refactoring 2014-11-06 08:41:07 +00:00
Samuel Martin
eceada586b cmake/OpenCVGenPkgconfig.cmake: rework opencv.pc generation
Using absolute path to locate the components in the "Libs:" field of the
*.pc can badly break cross-compilation, especially when building
statically linked objects.

Indeed, pkg-config automatically replaces the '-I...' and '-L...' paths
when the PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR environment
variables are set [1]. This feature is very helpful and common in
cross-compilation framework like Buildroot [2,3].

When there are absolute paths in the *.pc files, pkg-config won't be
able to do the path substitions for these paths when the afromentioned
environment variables are set.
In such case, since the prefix is the target one, not the sysroot one,
these libraries' abolute paths will point to:
- in the best case: a non-existing file (i.e. these files do not exists
  on the host system;
- at worst: the host system's libraries. This will make the linking
  failed because these host system's libraries will most likely not be
  build for the target architecture [4].

So, this patch replace the components' absolute paths by the form:
  -L<libdir> -l<libname>

This way, the linker will be able to resolve each dependency path,
whatever the kind of objects/build (shared object or static build) it
is dealing with.

Note that for static link, the library order does matter [5]. The order
of the opencv components has been carefully chosen to comply with this
requirement.

Fixes #3931

[1] http://linux.die.net/man/1/pkg-config
[2] http://buildroot.org/
[3] http://git.buildroot.net/buildroot/tree/package/pkgconf/pkg-config.in
[4] http://autobuild.buildroot.net/results/e8a/e8a859276db34aff87ef181b0cce98916b0afc90/build-end.log
[5] http://stackoverflow.com/questions/45135/linker-order-gcc

Signed-off-by: Samuel Martin <s.martin49@gmail.com>

---
Note: this patch properly applies on top of the master branch, though it
      has been written on top of the 2.4 branch.
2014-11-05 11:32:11 +01:00
Daniel Sjölie
323c922322 Use OPENNI2_INCLUDE64 environment variable.
(Set on windows with install from http://structure.io/openni).
2014-11-03 16:25:59 +01:00
Jose-Luis Blanco-Claraco
539acaf348 OpenCVConfig.cmake: Fix CMake CMP0012 warning
"TRUE"/"FALSE" should not be used as literals, as CMake has to decide
whether they are literals or variable names (sigh).
This patch should make it work with any version of CMake and with any
user-side decision on old vs. new policy behavior.
2014-10-28 09:46:18 +01:00
Maksim Shabunin
09fb7512ed Fixed iOS framework compilation warnings 2014-10-27 15:28:21 +03:00
Vadim Pisarevsky
0cf170587f Merge pull request #3363 from asmorkalov:qnx_support 2014-10-26 17:42:24 +00:00
Alexander Smorkalov
6bb6039ebb Fixes for QNX 6.6 Neitrino support. 2014-10-23 17:17:35 +04:00
Vladislav Vinogradov
4f8a1213bd determine test category (Public vs Extra) based on module location 2014-10-21 18:51:02 +04:00
Vladislav Vinogradov
edf54ac3a9 add CTest targets for sanity tests 2014-10-21 18:50:38 +04:00
Vladislav Vinogradov
f44c29ad7d disable CTest target for opencv_test_viz:
opencv_test_viz creates windows and waits until user close them,
it is not appropriate for automatic testing
2014-10-21 18:49:53 +04:00
Vladislav Vinogradov
0c57dc2e00 rewrite add_test command for accuracy tests:
* use new syntax introduced in CMake 2.8.0
* set OPENCV_TEST_DATA_PATH enviroment property
2014-10-21 18:48:46 +04:00
Maksim Shabunin
571ebb2373 Fixing iOS clang warnings, part 3 2014-10-17 18:15:21 +04:00
Maksim Shabunin
ef3d02214b Fixing iOS clang warnings, part 2 2014-10-17 18:14:54 +04:00
Maksim Shabunin
630eddf25a Extracted repeated cmake instruction block 2014-10-17 18:14:53 +04:00
Vladislav Vinogradov
f55c1cc0fb fix installation layout for debian packages:
Install symlinks to shared libraries as a part of development package,
not runtime package.

It is default behavior for debian packages.
2014-10-17 13:23:23 +04:00
Samuel Martin
38bb0db9db cmake: fix gstreamer check conditions
The current situation of the Gstreamer detection does not always honor
all the configurations set by the user, among this:
- if both WITH_GSTREAMER and WITH_GSTREAMER_0_10 are off, but
  Gstreamer 0.10 is installed in the system, Gstreamer 0.10 support will
  be enable;
- if both WITH_GSTREAMER and WITH_GSTREAMER_0_10 are on, only checks for
  Gstreamer 0.10 will be run.

This patch fixes the Gstreamer detection like this:

  |        -DWITH_...          | Package installed  ||    OpenCV    |
  | GSTREAMER | GSTREAMER_0_10 | gst-1.x | gst-0.10 || gst. support |
  +===========+================+=========+==========##==============+
  |    OFF    |      OFF       |    -    |    -     ||     none     |
  |    OFF    |      ON        |    -    |    no    ||     none     |
  |    OFF    |      ON        |    -    |   yes    ||   gst-0.10   |
  |    ON     |      OFF       |    no   |    no    ||     none     |
  |    ON     |      OFF       |    no   |   yes    ||   gst-0.10   |
  |    ON     |      OFF       |   yes   |    -     ||    gst-1.x   |
  |    ON     |      ON        |   yes   |    -     ||    gst-1.x   |

Signed-off-by: Samuel Martin <s.martin49@gmail.com>
2014-10-06 21:40:55 +02:00
Maksim Shabunin
b8457be394 Merge pull request #3216 from xantares:patch-1 2014-10-02 13:25:06 +00:00
Roman Donchenko
d54d580f79 Merge pull request #3275 from asmorkalov:ocv_gstreamer_backport 2014-09-30 15:55:26 +00:00
xantares
9d13c7b1e2 Move cmake config files too on non-windows hosts. 2014-09-30 09:36:37 +00:00
Alexander Smorkalov
1f4fe3bb27 GStreamer 1.0 backport from master branch. 2014-09-30 12:30:09 +04:00
Alexander Smorkalov
1c3c94fd2c Exclude OpenCL tests from default test list for Android as they are experimental. 2014-09-29 20:45:12 +04:00