new file mode 100644
@@ -0,0 +1,72 @@
+SUMMARY = "Linux libcamera framework"
+SECTION = "libs"
+
+LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
+
+LIC_FILES_CHKSUM = "\
+ file://LICENSES/GPL-2.0-or-later.txt;md5=fed54355545ffd980b814dab4a3b312c \
+ file://LICENSES/LGPL-2.1-or-later.txt;md5=2a4f4fd2128ea2f65047ee63fbca9f68 \
+"
+
+SRC_URI = " \
+ git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master \
+"
+
+SRCREV = "fb44403f1c5571549ac128c21daee9761eb9249c"
+
+PE = "1"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "python3-pyyaml-native python3-jinja2-native python3-ply-native python3-jinja2-native udev gnutls chrpath-native libevent libyaml"
+DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'qt', 'qtbase qtbase-native', '', d)}"
+
+PACKAGES =+ "${PN}-gst"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[gst] = "-Dgstreamer=enabled,-Dgstreamer=disabled,gstreamer1.0 gstreamer1.0-plugins-base"
+
+LIBCAMERA_PIPELINES ??= "auto"
+
+EXTRA_OEMESON = " \
+ -Dpipelines=${LIBCAMERA_PIPELINES} \
+ -Dv4l2=true \
+ -Dcam=enabled \
+ -Dlc-compliance=disabled \
+ -Dtest=false \
+ -Ddocumentation=disabled \
+"
+
+RDEPENDS:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland qt', 'qtwayland', '', d)}"
+
+inherit meson pkgconfig python3native
+
+do_configure:prepend() {
+ sed -i -e 's|py_compile=True,||' ${S}/utils/ipc/mojo/public/tools/mojom/mojom/generate/template_expander.py
+}
+
+do_install:append() {
+ chrpath -d ${D}${libdir}/libcamera.so
+ chrpath -d ${D}${libdir}/v4l2-compat.so
+}
+
+addtask do_recalculate_ipa_signatures_package after do_package before do_packagedata
+do_recalculate_ipa_signatures_package() {
+ local modules
+ for module in $(find ${PKGD}/usr/lib/libcamera -name "*.so.sign"); do
+ module="${module%.sign}"
+ if [ -f "${module}" ] ; then
+ modules="${modules} ${module}"
+ fi
+ done
+
+ ${S}/src/ipa/ipa-sign-install.sh ${B}/src/ipa-priv-key.pem "${modules}"
+}
+
+FILES:${PN} += " ${libdir}/v4l2-compat.so"
+FILES:${PN}-gst = "${libdir}/gstreamer-1.0"
+
+# libcamera-v4l2 explicitly sets _FILE_OFFSET_BITS=32 to get access to
+# both 32 and 64 bit file APIs.
+GLIBC_64BIT_TIME_FLAGS = ""
+
For kirkstone, an older recipe is present in meta-oe which is using libcamera from December 2021 with many missing features. TI's 6.1 based kernel can support the simple pipeline of libcamera, and benefit from the latest features in release v0.0.5, so we override the recipe here for arago. The new recipe here is taken as-is from meta-oe master. Signed-off-by: Jai Luthra <j-luthra@ti.com> --- v2: No changes Link to v1: https://lore.kernel.org/all/20230705130928.1201894-1-j-luthra@ti.com/ .../libcamera/libcamera_0.0.5.bb | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 meta-arago-extras/recipes-multimedia/libcamera/libcamera_0.0.5.bb