gstreamer1-mm: new package
authorAdam Duskett <aduskett@gmail.com>
Mon, 4 Dec 2017 14:26:58 +0000 (09:26 -0500)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thu, 14 Dec 2017 15:37:56 +0000 (16:37 +0100)
Gstreamermm provides C++ bindings for gstreamer.

Signed-off-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
DEVELOPERS
package/gstreamer1/Config.in
package/gstreamer1/gstreamer1-mm/Config.in [new file with mode: 0644]
package/gstreamer1/gstreamer1-mm/gstreamer1-mm.hash [new file with mode: 0644]
package/gstreamer1/gstreamer1-mm/gstreamer1-mm.mk [new file with mode: 0644]

index 8f941756b6edf9210c897ca253618454a8115c96..b476f4ef2186c041f15abe8787acf454721f6ff4 100644 (file)
@@ -35,6 +35,7 @@ F:    package/busybox/
 F:     package/checkpolicy/
 F:     package/cppdb/
 F:     package/gstreamer1/gstreamer1/
+F:     package/gstreamer1/gstreamer1-mm/
 F:     package/gstreamer1/gst1-plugins-bad/
 F:     package/gstreamer1/gst1-plugins-base/
 F:     package/gstreamer1/gst1-plugins-good/
index aef75b55bfc4caaa4e91b43a5f1715c4dca282fd..76c32bc6c67b2792ec4821f0c423dfcdef63351b 100644 (file)
@@ -2,6 +2,7 @@
 source "package/gstreamer1/gstreamer1/Config.in"
 
 if BR2_PACKAGE_GSTREAMER1
+source "package/gstreamer1/gstreamer1-mm/Config.in"
 source "package/gstreamer1/gst1-plugins-base/Config.in"
 source "package/gstreamer1/gst1-plugins-good/Config.in"
 source "package/gstreamer1/gst1-plugins-bad/Config.in"
diff --git a/package/gstreamer1/gstreamer1-mm/Config.in b/package/gstreamer1/gstreamer1-mm/Config.in
new file mode 100644 (file)
index 0000000..471c083
--- /dev/null
@@ -0,0 +1,29 @@
+config BR2_PACKAGE_GSTREAMER1_MM
+       bool "gstreamer1-mm"
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # glibmm
+       depends on BR2_INSTALL_LIBSTDCPP # glibmm
+       depends on BR2_USE_WCHAR # glibmm -> libglib2
+       depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
+       depends on BR2_USE_MMU # glibmm -> libglib2
+       select BR2_PACKAGE_GLIBMM
+       select BR2_PACKAGE_GSTREAMER1_CHECK
+       select BR2_PACKAGE_GST1_PLUGINS_BASE
+       help
+         gstreamermm provides C++ bindings for the GStreamer streaming
+         multimedia library (http://gstreamer.freedesktop.org). With
+         gstreamermm it is possible to develop applications that work
+         with multimedia in C++.
+
+         gstreamermm is developed over glibmm, libsigc++ and libxml++
+         and the functionalities they provide. This means that, among
+         other things, referencing and unreferencing of GObjects is
+         handled automatically via glibmm's automatic pointer class,
+         Glib::RefPtr, and libsigc++'s slots are used for callbacks and
+         signals.
+
+         https://gstreamer.freedesktop.org/bindings/cplusplus.html
+
+comment "gstreamer1-mm needs a toolchain w/ C++, wchar, threads, gcc >= 4.9"
+       depends on BR2_USE_MMU
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_USE_WCHAR \
+               || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/gstreamer1/gstreamer1-mm/gstreamer1-mm.hash b/package/gstreamer1/gstreamer1-mm/gstreamer1-mm.hash
new file mode 100644 (file)
index 0000000..425cf05
--- /dev/null
@@ -0,0 +1,6 @@
+# From http://ftp.gnome.org/pub/gnome/sources/gstreamermm/1.10/gstreamermm-1.10.0.sha256sum
+sha256 be58fe9ef7d7e392568ec85e80a84f4730adbf91fb0355ff7d7c616675ea8d60 gstreamermm-1.10.0.tar.xz
+
+# Locally computed
+sha256 7c78a8d7fc6781d51402d5a6036bedda9cffb0e5d28757e25d54d6eacbb1949f  COPYING
+sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6  COPYING.examples
diff --git a/package/gstreamer1/gstreamer1-mm/gstreamer1-mm.mk b/package/gstreamer1/gstreamer1-mm/gstreamer1-mm.mk
new file mode 100644 (file)
index 0000000..539c9df
--- /dev/null
@@ -0,0 +1,24 @@
+################################################################################
+#
+# gstreamer1-mm
+#
+################################################################################
+
+GSTREAMER1_MM_VERSION_MAJOR = 1.10
+GSTREAMER1_MM_VERSION = $(GSTREAMER1_MM_VERSION_MAJOR).0
+GSTREAMER1_MM_SITE = http://ftp.gnome.org/pub/gnome/sources/gstreamermm/$(GSTREAMER1_MM_VERSION_MAJOR)
+GSTREAMER1_MM_SOURCE = gstreamermm-$(GSTREAMER1_MM_VERSION).tar.xz
+GSTREAMER1_MM_LICENSE = LGPL-2.1+ (library), GPL-2.0 (examples)
+GSTREAMER1_MM_LICENSE_FILES = COPYING COPYING.examples
+GSTREAMER1_MM_INSTALL_STAGING = YES
+GSTREAMER1_MM_DEPENDENCIES += \
+       glibmm \
+       gstreamer1 \
+       gst1-plugins-base
+
+GSTREAMER1_MM_CONF_OPTS += \
+       --disable-gl \
+       --enable-unittests=no \
+       --disable-deprecated-api
+
+$(eval $(autotools-package))