Browse Source

package/libcamera-apps: bump version to v1.7.0-10-ge9645231

This version bump is needed for compatibility with the upcoming bump of
ffmpeg to version 7.1.x.

Use the new configure option disable_rpi_features to allow building for
non-rbpi defconfigs.

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
[Julien: use "git describe --tags --abbrev=40" format in _VERSION]
Signed-off-by: Julien Olivain <ju.o@free.fr>
Bernd Kuhls 1 month ago
parent
commit
c6252c2e50

+ 52 - 0
package/libcamera-apps/0001-core-Update-checks-for-disable_rpi_features-option.patch

@@ -0,0 +1,52 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd@kuhls.net>
+Date: Sat, 21 Jun 2025 18:12:18 +0200
+Subject: [PATCH] core: Update checks for disable_rpi_features option
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Based on the original commit that added the sync feature there
+were a few more options that needed the disable_rpi_features
+code conditionals to ensure compilation against upstream
+libcamera so add them in to ensure this works.
+
+Fixes:
+../core/rpicam_app.cpp: In member function ‘void RPiCamApp::StartCamera()’:
+../core/rpicam_app.cpp:642:78: error: ‘controls::rpi’ has not been declared
+  642 |         if (!controls_.get(controls::ScalerCrop) && !controls_.get(controls::rpi::ScalerCrops))
+      |                                                                              ^~~
+../core/rpicam_app.cpp:673:49: error: ‘controls::rpi’ has not been declared
+  673 |                         controls_.set(controls::rpi::ScalerCrops, libcamera::Span<const Rectangle>(crops.data(), crops.size()));
+      |                                                 ^~~
+
+Upstream: https://github.com/raspberrypi/rpicam-apps/pull/827
+
+Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
+---
+ core/rpicam_app.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/core/rpicam_app.cpp b/core/rpicam_app.cpp
+index bed69c0..1db784f 100644
+--- a/core/rpicam_app.cpp
++++ b/core/rpicam_app.cpp
+@@ -637,6 +637,7 @@ void RPiCamApp::StartCamera()
+ 	// This makes all the Request objects that we shall need.
+ 	makeRequests();
+ 
++#ifndef DISABLE_RPI_FEATURES
+ 	// Build a list of initial controls that we must set in the camera before starting it.
+ 	// We don't overwrite anything the application may have set before calling us.
+ 	if (!controls_.get(controls::ScalerCrop) && !controls_.get(controls::rpi::ScalerCrops))
+@@ -672,6 +673,7 @@ void RPiCamApp::StartCamera()
+ 		else
+ 			controls_.set(controls::rpi::ScalerCrops, libcamera::Span<const Rectangle>(crops.data(), crops.size()));
+ 	}
++#endif
+ 
+ 	if (!controls_.get(controls::AfWindows) && !controls_.get(controls::AfMetering) &&
+ 		options_->Get().afWindow_width != 0 && options_->Get().afWindow_height != 0)
+-- 
+2.39.5
+

+ 1 - 1
package/libcamera-apps/libcamera-apps.hash

@@ -1,3 +1,3 @@
 # Locally computed
-sha256  576bcd585f1c8d8bc80e37fa3c8a172e9d1c8406490438cf6d0fbc7ba4996ec1  rpicam-apps-1.5.0.tar.xz
+sha256  b5535933ebc398616fd1b261fa9e3755dfb419e10ee7866078a8a8d99f54a59a  libcamera-apps-v1.7.0-10-ge9645231008146fa0e75c2b3e0ff8c48ad70511a.tar.gz
 sha256  36dfed86bdef661a0a14ec1a1cc84c771d5a06b6f9b92e9ebb610ba711bd528a  license.txt

+ 8 - 3
package/libcamera-apps/libcamera-apps.mk

@@ -4,9 +4,8 @@
 #
 ################################################################################
 
-LIBCAMERA_APPS_VERSION = 1.5.0
-LIBCAMERA_APPS_SOURCE = rpicam-apps-$(LIBCAMERA_APPS_VERSION).tar.xz
-LIBCAMERA_APPS_SITE = https://github.com/raspberrypi/rpicam-apps/releases/download/v$(LIBCAMERA_APPS_VERSION)
+LIBCAMERA_APPS_VERSION = v1.7.0-10-ge9645231008146fa0e75c2b3e0ff8c48ad70511a
+LIBCAMERA_APPS_SITE = $(call github,raspberrypi,rpicam-apps,$(LIBCAMERA_APPS_VERSION))
 LIBCAMERA_APPS_LICENSE = BSD-2-Clause
 LIBCAMERA_APPS_LICENSE_FILES = license.txt
 LIBCAMERA_APPS_DEPENDENCIES = \
@@ -36,6 +35,12 @@ else
 LIBCAMERA_APPS_CONF_OPTS += -Denable_libav=disabled
 endif
 
+ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
+LIBCAMERA_APPS_CONF_OPTS += -Ddisable_rpi_features=false
+else
+LIBCAMERA_APPS_CONF_OPTS += -Ddisable_rpi_features=true
+endif
+
 ifeq ($(BR2_PACKAGE_XORG7),y)
 LIBCAMERA_APPS_DEPENDENCIES += \
 	$(if $(BR2_PACKAGE_LIBEPOXY),libepoxy) \