Commit Graph

39 Commits

Author SHA1 Message Date
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
Ilya Lavrenov
e03136e951 backport from master 2015-02-24 16:05:21 +03:00
Alexander Smorkalov
0f263e125b Full AARCH64 support with NEON and new CUDA toolkit. 2014-12-28 11:51:33 +03:00
Alexander Smorkalov
284b2fc1e7 Cut path to CUDA libraries to prevent generation of OpenCVModules.cmake with abs path. 2014-03-19 18:47:32 +04:00
Vladislav Vinogradov
8b8c368148 fixed two warnings in gpu sources (-Wshadow, -Wno-sign-promo) 2014-02-14 17:56:03 +04:00
Vladislav Vinogradov
81acc5e73e added -Xptxas;-dlcm=ca and -target-os-variant=Android to nvcc flags 2013-11-28 10:00:55 +04:00
Vladislav Vinogradov
26cb0ce1d5 fixed compilation warnings in .cu files 2013-11-28 10:00:48 +04:00
Vladislav Vinogradov
20641b4a0b fixed CC arch/pts for android (used sm_32) 2013-11-28 10:00:47 +04:00
Roman Donchenko
104b14e0e0 Fixed CMake warnings/bugs caused by #1670 and #1714
include() doesn't create a variable scope, so the settings of
CMAKE_MODULE_PATH and CMAKE_FIND_ROOT_PATH_MODE_* were polluting
everything included after OpenCVDetectCUDA.cmake.

Also, FindCUDA includes FindPackageHandleStandardArgs, which includes
CMakeParseArguments, which causes warnings related to policy CMP0017.
Setting it to NEW seems safe enough.
2013-10-30 16:21:50 +04:00
Vladislav Vinogradov
5e75a22559 fixed find package CUDA for cross-compilation
replaced find_host_package with find_package and
set CMAKE_FIND_ROOT_PATH_MODE_LIBRARY to BOTH, because NEVER 
doesn't work for CUDA_CUDA_LIBRARY, which is located in 
/usr/arm-linux-gnueabihf/lib/libcuda.so for ARM
2013-10-30 12:10:35 +04:00
Vladislav Vinogradov
06c1f9a329 added own version of FindCUDA.cmake 2013-10-28 10:09:16 +04:00
Vladislav Vinogradov
e5947f581a fix CUDA 5.5 support (npp, arm cross compilation) in CMake scripts:
The patch was submitted to CMake and might be available
in the next CMake release.

But until we have the fix in CMake we should add workaround in our scripts.
2013-10-24 18:17:36 +04:00
Vladislav Vinogradov
4e4d2da0b9 fix #3296 : Unsupported gpu architecture 'compute_21' 2013-10-03 10:21:00 +04:00
Vladislav Vinogradov
4b0f6e2d43 updated default parameters for CUDA CC in CMake:
* removed 2.0 PTX from default parameters since it has become obsolete
* added 3.5 BIN to prevent JIT compilation for super-Kepler
2013-07-18 09:44:00 +04:00
Vladislav Vinogradov
371a9cd833 fixed build with CUDA 5.5 on arm platforms 2013-06-18 17:46:57 +04:00
Vladislav Vinogradov
09a7e86a39 fixed NPP library search (it was splitted) 2013-06-03 13:37:30 +04:00
Andrey Kamaev
91f6eb7cab Merge pull request #745 from jet47:fix-gpu-warnings 2013-04-03 15:44:46 +04:00
Alexander Smorkalov
a2561ee0cd Code review notes fixed. 2013-04-03 04:14:40 -07:00
Vladislav Vinogradov
870563ba25 fixed compilation warning for CUDA files
command line option '-Wsign-promo' is valid for C++/ObjC++ but not for C [enabled by default]
2013-04-03 13:47:59 +04:00
marina.kolpakova
7a08bbbcc7 add CUDA_GENERATION macro 2013-02-26 20:13:47 +04:00
Vladislav Vinogradov
78c924baad removed obsolete CARMA toolchain and CMake variable 2013-02-14 16:27:17 +04:00
Vladislav Vinogradov
395f0201e3 fixed build for CARMA:
- added CMake toolchain file
- added WITH_NVCUVID flag
2013-01-23 21:05:08 +04:00
marina.kolpakova
fceb62386d fix for 2504: WITH_CUDA disabled with OSX in 2.4.3. 2012-11-23 23:11:44 +04:00
OpenCV Buildbot
04384a71e4 Normalize line endings and whitespace 2012-10-17 15:32:23 +04:00
Vladislav Vinogradov
8abcad6b00 fixed CUDA_FAST_MATH flag 2012-10-12 12:49:10 +04:00
Anatoly Baksheev
1d68850cb2 Added CUDA fast math flag 2012-10-10 22:16:51 +04:00
Anatoly Baksheev
dffba48517 Added host compiler check before CUDA detection. For not supported compilers CUDA will be disabled. 2012-09-24 16:56:19 +04:00
Anatoly Baksheev
e60a50c43c removed /EHa flag for cuda compilation 2012-08-23 16:53:53 +04:00
marina.kolpakova
ee0dd4d496 disabled -Wunused-but-set-variable because of multiple warnings during building nvcc auto generated files (GCC 4.6) 2012-08-20 23:35:59 +04:00
Andrey Kamaev
c474e27c1d One more fix for zlib search #1902 2012-07-09 19:16:38 +00:00
Marina Kolpakova
1365e28a54 initial support of GPU LBP classifier: added new style xml format loading 2012-06-22 15:00:36 +00:00
Marina Kolpakova
e7f6c4b7ef scan operations are moved in separate header 2012-06-20 05:41:16 +00:00
Anatoly Baksheev
1313d8a570 added check for CMake 2.8.3 for CUDA support 2012-05-05 09:43:18 +00:00
Anatoly Baksheev
962754141a Added check for CUDA toolkit version ( older can't compile Kepler ) 2012-05-04 10:31:40 +00:00
Anatoly Baksheev
03f122ca88 Added check for CUDA toolkit version ( older can't compile Kepler ) 2012-05-04 10:20:20 +00:00
Anatoly Baksheev
c05ebdffd8 Added default compilation for Kepler 2012-05-04 09:54:48 +00:00
Vladislav Vinogradov
2d81ecce23 fixed required CUDA version in OpenCVDetectCUDA.cmake 2012-02-29 20:24:28 +00:00
Vladislav Vinogradov
6f7e3434ca moved finding CUDA_npp_LIBRARY to OpenCVDetectCUDA.cmake 2012-02-15 06:44:20 +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