diff mbox series

[meta-multimedia] aravis: new recipe aravis is a vision library for genicam based cameras. aravis project allows to stream from genicam and GigE cameras

Message ID 20240417140412.87875-1-perceval.arenou@ptxtrimble.com
State New
Headers show
Series [meta-multimedia] aravis: new recipe aravis is a vision library for genicam based cameras. aravis project allows to stream from genicam and GigE cameras | expand

Commit Message

perceval.arenou@ptxtrimble.com April 17, 2024, 2:04 p.m. UTC
From: Perceval Arenou <perceval.arenou@gmail.com>

---
 .../aravis/aravis_0.8.31.bb                   | 45 +++++++++++++++++++
 1 file changed, 45 insertions(+)
 create mode 100644 meta-multimedia/recipes-multimedia/aravis/aravis_0.8.31.bb

Comments

Ross Burton April 17, 2024, 2:54 p.m. UTC | #1
On 17 Apr 2024, at 15:04, Perceval via lists.openembedded.org <perceval.arenou=ptxtrimble.com@lists.openembedded.org> wrote:
> +DEPENDS += "\
> + glib-2.0 \
> + glib-2.0-native \
> + intltool-native \
> + libxml2 \
> + zlib \
> +"

Considering this uses Meson, I’m surprised this uses intltool.  Is this still valid?

> +S = "${WORKDIR}/${BPN}-${PV}"

This is the default, remove.

> +PACKAGECONFIG ?= ""
> +PACKAGECONFIG[gstreamer] = "-Dgst-plugin=enabled, -Dgst-plugin=disabled, gstreamer1.0 gstreamer1.0-plugins-base,"
> +PACKAGECONFIG[introspection] = "-Dintrospection=enabled, -Dintrospection=disabled, gobject-introspection,"
> +PACKAGECONFIG[usb] = "-Dusb=enabled, -Dusb=disabled, libusb1,"
> +PACKAGECONFIG[viewer] = "-Dviewer=enabled, -Dviewer=disabled, gtk+3 gstreamer1.0-plugins-base,"

I’d suggest enabling more things by default, so they get tested.

> +# needs to be after PACKAGECONFIG to make sure it is defined
> +inherit meson pkgconfig ${@bb.utils.contains('PACKAGECONFIG', 'introspection', 'gobject-introspection', '', d)}

Use inherit_defer to solve this problem.

Ross
diff mbox series

Patch

diff --git a/meta-multimedia/recipes-multimedia/aravis/aravis_0.8.31.bb b/meta-multimedia/recipes-multimedia/aravis/aravis_0.8.31.bb
new file mode 100644
index 000000000..f2bbad674
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/aravis/aravis_0.8.31.bb
@@ -0,0 +1,45 @@ 
+SUMMARY = "A vision library for genicam based cameras"
+DESCRIPTION = "\
+    Aravis is a glib/gobject based library for video acquisition using Genicam cameras.\
+    It currently implements the gigabit ethernet and USB3 protocols used by industrial cameras.\
+    It also provides a basic ethernet camera simulator and a simple video viewer.\
+"
+AUTHOR = "Emmanuel Pacaud"
+HOMEPAGE = "https://github.com/AravisProject/aravis"
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS += "\
+    glib-2.0 \
+    glib-2.0-native \
+    intltool-native \
+    libxml2 \
+    zlib \
+"
+
+SRC_URI = "https://github.com/AravisProject/aravis/releases/download/${PV}/${BPN}-${PV}.tar.xz"
+SRC_URI[sha256sum] = "9c4ebe6273ed3abe466cb6ed8fa5c132bdd7e9a9298ca43fa0212c4311a084da"
+
+S = "${WORKDIR}/${BPN}-${PV}"
+
+# These options are found in AravisProject/aravis meson_options.txt
+EXTRA_OEMESON += "\
+    -Ddocumentation=disabled \
+    -Dfast-heartbeat=false \
+    -Dpacket-socket=enabled \
+    -Dtests=false \
+"
+
+PACKAGECONFIG ?= ""
+PACKAGECONFIG[gstreamer] = "-Dgst-plugin=enabled, -Dgst-plugin=disabled, gstreamer1.0 gstreamer1.0-plugins-base,"
+PACKAGECONFIG[introspection] = "-Dintrospection=enabled, -Dintrospection=disabled, gobject-introspection,"
+PACKAGECONFIG[usb] = "-Dusb=enabled, -Dusb=disabled, libusb1,"
+PACKAGECONFIG[viewer] = "-Dviewer=enabled, -Dviewer=disabled, gtk+3 gstreamer1.0-plugins-base,"
+
+# needs to be after PACKAGECONFIG to make sure it is defined
+inherit meson pkgconfig ${@bb.utils.contains('PACKAGECONFIG', 'introspection', 'gobject-introspection', '', d)}
+
+FILES:${PN} += "\
+    ${datadir} \
+    ${libdir}/gstreamer-1.0/libgstaravis.0.8.so \
+"