Added smile detector
Update samples/c/smiledetect.cpp

- Changed to floating neighbor maximum mode
- Fixed some previous errors.
Update samples/c/smiledetect.cpp

Fixed isdigit() Android build error
Added implementation for RGB to YUV420p color conversion
Added tests for RGB to YUV420p color conversion
Added multithreaded implementation for RGB to YUV420p color conversion
refactored gpu perf tests and fixed sanity tests
fixed gpu bitwise operations with scalars
fixed warp tests
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
fix the blend crash in some cases
adjust some test cases, use original template file name in Haar
fix bug #2787
fixed ffmpeg destination folder for NMake generator
Fix ocl::bruteforcematcher crash on Intel OCL
fixed OpenCVConfig for cross-compilation:

* added CUDA to EXTRA libs if OpenCV uses it
* added -rpath-link option for linker if OpenCV was built as SHARED libs
linux warning fix
Merge pull request #557 from jet47:gpu-sanity
Merge pull request #573 from jet47:config-cross-compilation
Merge pull request #578 from jet47:nmake-ffmpeg-copy