diff options
| -rw-r--r-- | meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-media_device-Add-bool-return-type-to-unlock.patch | 59 | ||||
| -rw-r--r-- | meta-multimedia/recipes-multimedia/libcamera/libcamera/0002-libcamera-Add-missing-stdint.h-include-to-dma_buf_al.patch | 38 | ||||
| -rw-r--r-- | meta-multimedia/recipes-multimedia/libcamera/libcamera_0.5.2.bb (renamed from meta-multimedia/recipes-multimedia/libcamera/libcamera_0.4.0.bb) | 16 | 
3 files changed, 11 insertions, 102 deletions
| diff --git a/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-media_device-Add-bool-return-type-to-unlock.patch b/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-media_device-Add-bool-return-type-to-unlock.patch deleted file mode 100644 index 12f034effd..0000000000 --- a/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-media_device-Add-bool-return-type-to-unlock.patch +++ /dev/null | |||
| @@ -1,59 +0,0 @@ | |||
| 1 | From 6914c4fd3d53c0c6ea304123bf57429bb64ec16f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Wed, 31 Jan 2024 21:01:27 -0800 | ||
| 4 | Subject: [PATCH 1/2] media_device: Add bool return type to unlock() | ||
| 5 | |||
| 6 | unlock uses lockf which is marked with __attribute__ | ||
| 7 | ((warn_unused_result)) and compilers warn about it and some treat | ||
| 8 | -Wunused-result as error with -Werror turned on, It would be good to | ||
| 9 | check if lockf failed or succeeded, however, that piece is not changed | ||
| 10 | with this, this fixes build with clang++ 18 | ||
| 11 | |||
| 12 | ../git/src/libcamera/media_device.cpp:167:2: error: ignoring return value of function declared with 'warn_unused_result' attribute [-Werror,-Wunused-result] | ||
| 13 | 167 | lockf(fd_.get(), F_ULOCK, 0); | ||
| 14 | | ^~~~~ ~~~~~~~~~~~~~~~~~~~~~ | ||
| 15 | 1 error generated. | ||
| 16 | |||
| 17 | Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2024-February/040380.html] | ||
| 18 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 19 | --- | ||
| 20 | include/libcamera/internal/media_device.h | 2 +- | ||
| 21 | src/libcamera/media_device.cpp | 6 +++--- | ||
| 22 | 2 files changed, 4 insertions(+), 4 deletions(-) | ||
| 23 | |||
| 24 | diff --git a/include/libcamera/internal/media_device.h b/include/libcamera/internal/media_device.h | ||
| 25 | index eb8cfde4..b09dfd16 100644 | ||
| 26 | --- a/include/libcamera/internal/media_device.h | ||
| 27 | +++ b/include/libcamera/internal/media_device.h | ||
| 28 | @@ -33,7 +33,7 @@ public: | ||
| 29 | bool busy() const { return acquired_; } | ||
| 30 | |||
| 31 | bool lock(); | ||
| 32 | - void unlock(); | ||
| 33 | + bool unlock(); | ||
| 34 | |||
| 35 | int populate(); | ||
| 36 | bool isValid() const { return valid_; } | ||
| 37 | diff --git a/src/libcamera/media_device.cpp b/src/libcamera/media_device.cpp | ||
| 38 | index 2949816b..eaa2fdb0 100644 | ||
| 39 | --- a/src/libcamera/media_device.cpp | ||
| 40 | +++ b/src/libcamera/media_device.cpp | ||
| 41 | @@ -159,12 +159,12 @@ bool MediaDevice::lock() | ||
| 42 | * | ||
| 43 | * \sa lock() | ||
| 44 | */ | ||
| 45 | -void MediaDevice::unlock() | ||
| 46 | +bool MediaDevice::unlock() | ||
| 47 | { | ||
| 48 | if (!fd_.isValid()) | ||
| 49 | - return; | ||
| 50 | + return false; | ||
| 51 | |||
| 52 | - lockf(fd_.get(), F_ULOCK, 0); | ||
| 53 | + return lockf(fd_.get(), F_ULOCK, 0) == 0; | ||
| 54 | } | ||
| 55 | |||
| 56 | /** | ||
| 57 | -- | ||
| 58 | 2.43.0 | ||
| 59 | |||
| diff --git a/meta-multimedia/recipes-multimedia/libcamera/libcamera/0002-libcamera-Add-missing-stdint.h-include-to-dma_buf_al.patch b/meta-multimedia/recipes-multimedia/libcamera/libcamera/0002-libcamera-Add-missing-stdint.h-include-to-dma_buf_al.patch deleted file mode 100644 index 18ba353de2..0000000000 --- a/meta-multimedia/recipes-multimedia/libcamera/libcamera/0002-libcamera-Add-missing-stdint.h-include-to-dma_buf_al.patch +++ /dev/null | |||
| @@ -1,38 +0,0 @@ | |||
| 1 | From 91de550243121056984e5b9b693b486860655d31 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Sergei Trofimovich <slyich@gmail.com> | ||
| 3 | Date: Sat, 28 Dec 2024 19:11:19 +0000 | ||
| 4 | Subject: [PATCH] libcamera: Add missing <stdint.h> include to | ||
| 5 | dma_buf_allocator.h | ||
| 6 | |||
| 7 | Without the change the build fails on upcoming `gcc-15` as: | ||
| 8 | |||
| 9 | In file included from ../src/libcamera/dma_buf_allocator.cpp:9: | ||
| 10 | ../include/libcamera/internal/dma_buf_allocator.h:66:19: error: 'uint64_t' has not been declared | ||
| 11 | 66 | void sync(uint64_t step); | ||
| 12 | | ^~~~~~~~ | ||
| 13 | |||
| 14 | Signed-off-by: Sergei Trofimovich <slyich@gmail.com> | ||
| 15 | Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | ||
| 16 | Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> | ||
| 17 | Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | ||
| 18 | |||
| 19 | Upstream-Status: Backport [https://git.libcamera.org/libcamera/libcamera.git/commit/?id=91de550243121056984e5b9b693b486860655d31] | ||
| 20 | --- | ||
| 21 | include/libcamera/internal/dma_buf_allocator.h | 1 + | ||
| 22 | 1 file changed, 1 insertion(+) | ||
| 23 | |||
| 24 | diff --git a/include/libcamera/internal/dma_buf_allocator.h b/include/libcamera/internal/dma_buf_allocator.h | ||
| 25 | index d26f8a74..13600915 100644 | ||
| 26 | --- a/include/libcamera/internal/dma_buf_allocator.h | ||
| 27 | +++ b/include/libcamera/internal/dma_buf_allocator.h | ||
| 28 | @@ -8,6 +8,7 @@ | ||
| 29 | #pragma once | ||
| 30 | |||
| 31 | #include <memory> | ||
| 32 | +#include <stdint.h> | ||
| 33 | #include <string> | ||
| 34 | #include <vector> | ||
| 35 | |||
| 36 | -- | ||
| 37 | 2.34.1 | ||
| 38 | |||
| diff --git a/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.4.0.bb b/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.5.2.bb index c7fe631a43..88fe9cf39c 100644 --- a/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.4.0.bb +++ b/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.5.2.bb | |||
| @@ -9,16 +9,13 @@ LIC_FILES_CHKSUM = "\ | |||
| 9 | " | 9 | " | 
| 10 | 10 | ||
| 11 | SRC_URI = " \ | 11 | SRC_URI = " \ | 
| 12 | git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master \ | 12 | git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master;tag=v${PV} \ | 
| 13 | file://0001-media_device-Add-bool-return-type-to-unlock.patch \ | ||
| 14 | file://0002-libcamera-Add-missing-stdint.h-include-to-dma_buf_al.patch \ | ||
| 15 | " | 13 | " | 
| 16 | 14 | ||
| 17 | SRCREV = "35ed4b91291d9f3d08e4b51acfb51163e65df8f8" | 15 | SRCREV = "096c50ca881f72d858aca19757a5e73b4775a7cc" | 
| 18 | 16 | ||
| 19 | PE = "1" | 17 | PE = "1" | 
| 20 | 18 | ||
| 21 | |||
| 22 | DEPENDS = "python3-pyyaml-native python3-jinja2-native python3-ply-native python3-jinja2-native udev gnutls chrpath-native libevent libyaml" | 19 | DEPENDS = "python3-pyyaml-native python3-jinja2-native python3-ply-native python3-jinja2-native udev gnutls chrpath-native libevent libyaml" | 
| 23 | DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'qt', 'qtbase qtbase-native', '', d)}" | 20 | DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'qt', 'qtbase qtbase-native', '', d)}" | 
| 24 | 21 | ||
| @@ -28,8 +25,17 @@ PACKAGECONFIG ??= "" | |||
| 28 | PACKAGECONFIG[dng] = ",,tiff" | 25 | PACKAGECONFIG[dng] = ",,tiff" | 
| 29 | PACKAGECONFIG[gst] = "-Dgstreamer=enabled,-Dgstreamer=disabled,gstreamer1.0 gstreamer1.0-plugins-base" | 26 | PACKAGECONFIG[gst] = "-Dgstreamer=enabled,-Dgstreamer=disabled,gstreamer1.0 gstreamer1.0-plugins-base" | 
| 30 | PACKAGECONFIG[pycamera] = "-Dpycamera=enabled,-Dpycamera=disabled,python3 python3-pybind11" | 27 | PACKAGECONFIG[pycamera] = "-Dpycamera=enabled,-Dpycamera=disabled,python3 python3-pybind11" | 
| 28 | PACKAGECONFIG[raspberrypi] = ",,libpisp" | ||
| 29 | |||
| 30 | # Raspberry Pi requires the meta-raspberrypi layer | ||
| 31 | # These values are coming from the project's meson.build file, | ||
| 32 | # which lists the supported values by arch. | ||
| 33 | ARM_PIPELINES = "${@bb.utils.contains('PACKAGECONFIG', 'raspberrypi', 'rpi/pisp,rpi/vc4,', '', d)}" | ||
| 34 | ARM_PIPELINES .= "imx8-isi,mali-c55,simple,uvcvideo" | ||
| 31 | 35 | ||
| 32 | LIBCAMERA_PIPELINES ??= "auto" | 36 | LIBCAMERA_PIPELINES ??= "auto" | 
| 37 | LIBCAMERA_PIPELINES:arm ??= "${ARM_PIPELINES}" | ||
| 38 | LIBCAMERA_PIPELINES:aarch64 ??= "${ARM_PIPELINES}" | ||
| 33 | 39 | ||
| 34 | EXTRA_OEMESON = " \ | 40 | EXTRA_OEMESON = " \ | 
| 35 | -Dpipelines=${LIBCAMERA_PIPELINES} \ | 41 | -Dpipelines=${LIBCAMERA_PIPELINES} \ | 
