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>
This commit is contained in:
parent
5b568b7e41
commit
9109bcf22c
5 changed files with 24 additions and 2 deletions
|
@ -47,7 +47,7 @@ A C++ toolchain: [required]
|
||||||
Either {g++, clang}
|
Either {g++, clang}
|
||||||
|
|
||||||
Meson Build system: [required]
|
Meson Build system: [required]
|
||||||
meson (>= 0.51) ninja-build pkg-config
|
meson (>= 0.55) ninja-build pkg-config
|
||||||
|
|
||||||
If your distribution doesn't provide a recent enough version of meson,
|
If your distribution doesn't provide a recent enough version of meson,
|
||||||
you can install or upgrade it using pip3.
|
you can install or upgrade it using pip3.
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# SPDX-License-Identifier: CC0-1.0
|
# SPDX-License-Identifier: CC0-1.0
|
||||||
|
|
||||||
project('libcamera', 'c', 'cpp',
|
project('libcamera', 'c', 'cpp',
|
||||||
meson_version : '>= 0.53',
|
meson_version : '>= 0.55',
|
||||||
version : '0.0.0',
|
version : '0.0.0',
|
||||||
default_options : [
|
default_options : [
|
||||||
'werror=true',
|
'werror=true',
|
||||||
|
|
|
@ -14,6 +14,23 @@ foreach dep : android_deps
|
||||||
endif
|
endif
|
||||||
endforeach
|
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([
|
android_hal_sources = files([
|
||||||
'camera3_hal.cpp',
|
'camera3_hal.cpp',
|
||||||
'camera_hal_manager.cpp',
|
'camera_hal_manager.cpp',
|
||||||
|
|
1
subprojects/.gitignore
vendored
Normal file
1
subprojects/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
/libyuv
|
4
subprojects/libyuv.wrap
Normal file
4
subprojects/libyuv.wrap
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
[wrap-git]
|
||||||
|
directory = libyuv
|
||||||
|
url = https://chromium.googlesource.com/libyuv/libyuv.git
|
||||||
|
revision = 93b1b332cd60b56ab90aea14182755e379c28a80
|
Loading…
Add table
Add a link
Reference in a new issue