summaryrefslogtreecommitdiff
path: root/src/android
diff options
context:
space:
mode:
authorHirokazu Honda <hiroh@chromium.org>2021-02-04 01:27:30 +0000
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-02-04 05:03:53 +0200
commit9109bcf22c7f5f48afcf4234a4d4a596d6bd7bd2 (patch)
tree742c53537463bc56d02d1b8001254640b8b05907 /src/android
parent5b568b7e41e394b5317057312d07ff71b4d571f7 (diff)
subprojects: Add libyuv and built if -Dandroid=enabled
Android HAL adaptation layer may need image processing, for example, scaling and format conversion. Libyuv is a general image processing. This adds libyuv to subprojects, so that it is forked locally and can be used with Android HAL implementation code. Signed-off-by: Hirokazu Honda <hiroh@chromium.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/android')
-rw-r--r--src/android/meson.build17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/android/meson.build b/src/android/meson.build
index 3d4d3be4..7619517a 100644
--- a/src/android/meson.build
+++ b/src/android/meson.build
@@ -14,6 +14,23 @@ foreach dep : android_deps
endif
endforeach
+if android_enabled
+ cmake = import('cmake')
+
+ libyuv_vars = cmake.subproject_options()
+ libyuv_vars.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON'})
+ libyuv_vars.set_override_option('cpp_std', 'c++17')
+ libyuv_vars.append_compile_args('cpp',
+ '-Wno-sign-compare',
+ '-Wno-unused-variable',
+ '-Wno-unused-parameter')
+ libyuv_vars.append_link_args('-ljpeg')
+ libyuv = cmake.subproject('libyuv', options : libyuv_vars)
+ libyuv_dep = libyuv.dependency('yuv')
+
+ android_deps += [ libyuv_dep, ]
+endif
+
android_hal_sources = files([
'camera3_hal.cpp',
'camera_hal_manager.cpp',