package/libcamera-apps: new package

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[yann.morin.1998@free.fr:
  - only depend on libx11-xlib or libexpoxy if actually enabled
  - simplify qt5 dependency
  - fix check-package
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Peter Seiderer 2022-02-11 16:06:04 +01:00 committed by Yann E. MORIN
parent 695b21d6a1
commit 7227d005d2
6 changed files with 119 additions and 0 deletions

View File

@ -2283,6 +2283,7 @@ F: package/gstreamer1/gst1-devtools/
F: package/gstreamer1/gst1-interpipe/
F: package/gstreamer1/gstreamer1-editing-services/
F: package/iwd/
F: package/libcamera-apps/
F: package/libevdev/
F: package/libuev/
F: package/log4cplus/

View File

@ -1738,6 +1738,7 @@ menu "Multimedia"
source "package/libbdplus/Config.in"
source "package/libbluray/Config.in"
source "package/libcamera/Config.in"
source "package/libcamera-apps/Config.in"
source "package/libdcadec/Config.in"
source "package/libdvbcsa/Config.in"
source "package/libdvbpsi/Config.in"

View File

@ -0,0 +1,37 @@
From 6bd733b52f0b4039407c676cd3126a9e2f79456b Mon Sep 17 00:00:00 2001
From: Peter Seiderer <ps.report@gmx.net>
Date: Fri, 5 Feb 2021 18:24:08 +0100
Subject: [PATCH] cmake: remove -Werror and -Wfatal-errors compiler command
line option
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Fixes (with bootlin-riscv64-musl toolchain):
.../build/libcamera-apps-2d1009e3badcc8047361ff81149ad6cba3b911b5/core/libcamera_app.cpp:30:22: error: overflow in conversion from long unsigned int to int changes value from 2154321408 to -2140645888 [-Werror=overflow]
30 | int ret = ioctl(fd, VIDIOC_QUERYCAP, &caps);
| ^~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 748c6dd..1ca1e39 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,7 +11,7 @@ endif()
set (CMAKE_EXPORT_COMPILE_COMMANDS ON)
set (CMAKE_CXX_STANDARD 17)
-add_compile_options(-Wall -Wextra -pedantic -Wno-unused-parameter -faligned-new -Werror -Wfatal-errors)
+add_compile_options(-Wall -Wextra -pedantic -Wno-unused-parameter -faligned-new)
add_definitions(-D_FILE_OFFSET_BITS=64)
if (CMAKE_COMPILER_IS_GNUCXX)
--
2.34.1

View File

@ -0,0 +1,29 @@
config BR2_PACKAGE_LIBCAMERA_APPS
bool "libcamera-apps"
depends on BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS # libcamera
depends on BR2_INSTALL_LIBSTDCPP # libcamera/boost
depends on BR2_TOOLCHAIN_HAS_THREADS # libcamera/boost
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # C++17/libcamera
depends on !BR2_STATIC_LIBS # gnutls/libcamera
depends on BR2_USE_WCHAR # gnutls/libcamera/boost
select BR2_PACKAGE_BOOST
select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
select BR2_PACKAGE_JPEG
select BR2_PACKAGE_LIBCAMERA
select BR2_PACKAGE_LIBEXIF
select BR2_PACKAGE_LIBPNG
select BR2_PACKAGE_TIFF
select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 && (BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL)
select BR2_PACKAGE_LIBEPOXY if BR2_PACKAGE_XORG7 && (BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL)
select BR2_PACKAGE_QT5BASE_GUI if BR2_PACKAGE_QT5
select BR2_PACKAGE_QT5BASE_WIDGETS if BR2_PACKAGE_QT5
help
This is a small suite of libcamera-based apps that aim to copy
the functionality of the existing "raspicam" apps.
https://github.com/raspberrypi/libcamera-apps
comment "libcamera-apps needs a toolchain w/ C++, threads, wchar, dynamic library, gcc >= 7"
depends on BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_7 || BR2_STATIC_LIBS || !BR2_USE_WCHAR

View File

@ -0,0 +1,3 @@
# Locally computed
sha256 611aec06dd24de6586580164d9b7c55da0698ac4cf129944b2fc41fe67210597 libcamera-apps-2d1009e3badcc8047361ff81149ad6cba3b911b5.tar.gz
sha256 36dfed86bdef661a0a14ec1a1cc84c771d5a06b6f9b92e9ebb610ba711bd528a license.txt

View File

@ -0,0 +1,48 @@
################################################################################
#
# libcamera-apps
#
################################################################################
LIBCAMERA_APPS_VERSION = 2d1009e3badcc8047361ff81149ad6cba3b911b5
LIBCAMERA_APPS_SITE = $(call github,raspberrypi,libcamera-apps,$(LIBCAMERA_APPS_VERSION))
LIBCAMERA_APPS_LICENSE = BSD-2-Clause
LIBCAMERA_APPS_LICENSE_FILES = license.txt
LIBCAMERA_APPS_DEPENDENCIES = \
host-pkgconf \
boost \
jpeg \
libcamera \
libexif \
libpng \
tiff
LIBCAMERA_APPS_CONF_OPTS = \
-DENABLE_COMPILE_FLAGS_FOR_TARGET=disabled \
-DENABLE_OPENCV=0 \
-DENABLE_TFLITE=0
ifeq ($(BR2_PACKAGE_LIBDRM),y)
LIBCAMERA_APPS_DEPENDENCIES += libdrm
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_DRM=1
else
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_DRM=0
endif
ifeq ($(BR2_PACKAGE_XORG7),y)
LIBCAMERA_APPS_DEPENDENCIES += \
$(if $(BR2_PACKAGE_LIBEPOXY),libepoxy) \
$(if $(BR2_PACKAGE_XLIB_LIBX11),xlib_libX11)
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_X11=1
else
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_X11=0
endif
ifeq ($(BR2_PACKAGE_QT5),y)
LIBCAMERA_APPS_DEPENDENCIES += qt5base
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_QT=1
else
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_QT=0
endif
$(eval $(cmake-package))