kumquat-buildroot/package/libcamera/Config.in

69 lines
1.9 KiB
Plaintext
Raw Normal View History

menuconfig BR2_PACKAGE_LIBCAMERA
package/libcamera: new package http://libcamera.org/ Cameras are complex devices that need heavy hardware image processing operations. Control of the processing is based on advanced algorithms that must run on a programmable processor. This has traditionally been implemented in a dedicated MCU in the camera, but in embedded devices algorithms have been moved to the main CPU to save cost. Blurring the boundary between camera devices and Linux often left the user with no other option than a vendor-specific closed-source solution. To address this problem the Linux media community has very recently started collaboration with the industry to develop a camera stack that will be open-source-friendly while still protecting vendor core IP. libcamera was born out of that collaboration and will offer modern camera support to Linux-based systems, including traditional Linux distributions, ChromeOS and Android. The project has not made an official release as of yet, so we're using the latest sha1 from master We utilise C++ 11 but we mandate GCC5+ due to a bug [0] in earlier versions which result in compile failures on our code base. [0] Bug 54316 - [C++11] move constructor for stringstream https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54316 Documentation and Tests are disabled from the build. With the following added to libcamera.config: BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y BR2_PACKAGE_LIBCAMERA=y ./utils/test-pkg -c libcamera.config -p libcamera br-arm-full [1/6]: SKIPPED br-arm-cortex-a9-glibc [2/6]: OK br-arm-cortex-m4-full [3/6]: SKIPPED br-x86-64-musl [4/6]: OK br-arm-full-static [5/6]: SKIPPED sourcery-arm [6/6]: SKIPPED Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> [Thomas: - add missing Config.in comment - remove empty newline at end of hash file - adjust indentation of upstream URL in Config.in help text] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-04-03 13:29:02 +02:00
bool "libcamera"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # C++14
depends on !BR2_STATIC_LIBS # gnutls
depends on BR2_USE_WCHAR # gnutls
select BR2_PACKAGE_GNUTLS
select BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO if !BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
package/libcamera: new package http://libcamera.org/ Cameras are complex devices that need heavy hardware image processing operations. Control of the processing is based on advanced algorithms that must run on a programmable processor. This has traditionally been implemented in a dedicated MCU in the camera, but in embedded devices algorithms have been moved to the main CPU to save cost. Blurring the boundary between camera devices and Linux often left the user with no other option than a vendor-specific closed-source solution. To address this problem the Linux media community has very recently started collaboration with the industry to develop a camera stack that will be open-source-friendly while still protecting vendor core IP. libcamera was born out of that collaboration and will offer modern camera support to Linux-based systems, including traditional Linux distributions, ChromeOS and Android. The project has not made an official release as of yet, so we're using the latest sha1 from master We utilise C++ 11 but we mandate GCC5+ due to a bug [0] in earlier versions which result in compile failures on our code base. [0] Bug 54316 - [C++11] move constructor for stringstream https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54316 Documentation and Tests are disabled from the build. With the following added to libcamera.config: BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y BR2_PACKAGE_LIBCAMERA=y ./utils/test-pkg -c libcamera.config -p libcamera br-arm-full [1/6]: SKIPPED br-arm-cortex-a9-glibc [2/6]: OK br-arm-cortex-m4-full [3/6]: SKIPPED br-x86-64-musl [4/6]: OK br-arm-full-static [5/6]: SKIPPED sourcery-arm [6/6]: SKIPPED Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> [Thomas: - add missing Config.in comment - remove empty newline at end of hash file - adjust indentation of upstream URL in Config.in help text] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-04-03 13:29:02 +02:00
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_V4L2
bool "libcamera v4l2 compatibility layer"
help
libcamera v4l2 compatibility layer
config BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
bool
config BR2_PACKAGE_LIBCAMERA_PIPELINE_IPU3
bool "ipu3 pipeline"
select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
Pipeline for Intel IPU3.
config BR2_PACKAGE_LIBCAMERA_PIPELINE_RASPBERRYPI
bool "raspberrypi pipeline"
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_RKISP1
bool "rkisp1 pipeline"
select BR2_PACKAGE_LIBCAMERA_HAS_PIPELINE
help
Pipeline for Rockchip ISP1.
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.
endif # BR2_PACKAGE_LIBCAMERA
comment "libcamera needs a toolchain w/ C++, threads, wchar, dynamic library, gcc >= 5"
package/libcamera: new package http://libcamera.org/ Cameras are complex devices that need heavy hardware image processing operations. Control of the processing is based on advanced algorithms that must run on a programmable processor. This has traditionally been implemented in a dedicated MCU in the camera, but in embedded devices algorithms have been moved to the main CPU to save cost. Blurring the boundary between camera devices and Linux often left the user with no other option than a vendor-specific closed-source solution. To address this problem the Linux media community has very recently started collaboration with the industry to develop a camera stack that will be open-source-friendly while still protecting vendor core IP. libcamera was born out of that collaboration and will offer modern camera support to Linux-based systems, including traditional Linux distributions, ChromeOS and Android. The project has not made an official release as of yet, so we're using the latest sha1 from master We utilise C++ 11 but we mandate GCC5+ due to a bug [0] in earlier versions which result in compile failures on our code base. [0] Bug 54316 - [C++11] move constructor for stringstream https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54316 Documentation and Tests are disabled from the build. With the following added to libcamera.config: BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y BR2_PACKAGE_LIBCAMERA=y ./utils/test-pkg -c libcamera.config -p libcamera br-arm-full [1/6]: SKIPPED br-arm-cortex-a9-glibc [2/6]: OK br-arm-cortex-m4-full [3/6]: SKIPPED br-x86-64-musl [4/6]: OK br-arm-full-static [5/6]: SKIPPED sourcery-arm [6/6]: SKIPPED Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> [Thomas: - add missing Config.in comment - remove empty newline at end of hash file - adjust indentation of upstream URL in Config.in help text] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-04-03 13:29:02 +02:00
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_5 || BR2_STATIC_LIBS || !BR2_USE_WCHAR