buildroot/package/libcamera/Config.in
Kieran Bingham 81ae3116e4 package/libcamera: Enable python bindings
Since libcamera commit f513fd70ba1a ("subprojects: Drop leftovers of
pybind11"), merged before libcamera v0.1.0, libcamera has no longer
relied on an external subproject branch of pybind to build the python
bindings.

Provide a new package option to allow enabling the python bindings on
libcamera when python3 is available in the buildroot configuration.
Enabling the python bindings will select and bring in pybind as a
dependency.

Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Marcus Folkesson <marcus.folkesson@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2024-10-23 20:36:25 +02:00

112 lines
3.2 KiB
Plaintext

config BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS
bool
default y
# Invalid packing size of ControlValue struct on m68k
depends on !BR2_m68k
menuconfig BR2_PACKAGE_LIBCAMERA
bool "libcamera"
depends on BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17
depends on !BR2_STATIC_LIBS # gnutls
depends on BR2_USE_WCHAR # gnutls
select BR2_PACKAGE_GNUTLS
select BR2_PACKAGE_LIBYAML
select BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO if !BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
libcamera provides a software stack to support
complex devices that need heavy hardware image
processing operations.
http://www.libcamera.org/
if BR2_PACKAGE_LIBCAMERA
config BR2_PACKAGE_LIBCAMERA_PYTHON
bool "python bindings"
depends on BR2_PACKAGE_PYTHON3
select BR2_PACKAGE_PYTHON_PYBIND
help
Enable libcamera python bindings
config BR2_PACKAGE_LIBCAMERA_V4L2
bool "libcamera v4l2 compatibility layer"
help
libcamera v4l2 compatibility layer
config BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
bool
config BR2_PACKAGE_LIBCAMERA_PIPELINE_IMX8_ISI
bool "imx8-isi pipeline"
depends on BR2_arm || BR2_aarch64
select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
Pipeline for i.MX8 SoC ISI capture interface.
config BR2_PACKAGE_LIBCAMERA_PIPELINE_IPU3
bool "ipu3 pipeline"
depends on BR2_i386 || BR2_x86_64
select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
Pipeline for Intel IPU3.
config BR2_PACKAGE_LIBCAMERA_PIPELINE_RKISP1
bool "rkisp1 pipeline"
depends on BR2_arm || BR2_aarch64
select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
Pipeline for Rockchip ISP1.
config BR2_PACKAGE_LIBCAMERA_PIPELINE_RPI_VC4
bool "rpi/vc4 pipeline"
depends on BR2_arm || BR2_aarch64
depends on BR2_USE_WCHAR # boost (already enforced for gnutls)
select BR2_PACKAGE_BOOST
select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
Pipeline for Raspberry Pi devices.
config BR2_PACKAGE_LIBCAMERA_PIPELINE_SIMPLE
bool "simple pipeline"
select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
Pipeline for simple pipelines.
config BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO
bool "uvcvideo pipeline"
help
Pipeline for uvcvideo devices.
config BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC
bool "vimc pipeline"
select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
Pipeline for the vimc device.
config BR2_PACKAGE_LIBCAMERA_COMPLIANCE
bool "lc-compliance test application"
depends on BR2_USE_WCHAR # gtest
depends on BR2_TOOLCHAIN_HAS_THREADS # gtest
depends on BR2_INSTALL_LIBSTDCPP # gtest
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # gtest
depends on BR2_USE_MMU # gtest
select BR2_PACKAGE_GTEST
select BR2_PACKAGE_LIBEVENT
help
lc-compliance test application
comment "lc-compliance test application needs a toolchain w/ C++, wchar, threads, gcc >= 5"
depends on BR2_USE_MMU
depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
!BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_5
endif # BR2_PACKAGE_LIBCAMERA
comment "libcamera needs a toolchain w/ C++, threads, wchar, dynamic library, gcc >= 8"
depends on BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_8 || BR2_STATIC_LIBS || !BR2_USE_WCHAR