Skip to contentSkip to conversation

gstreamer1-mm: new package

PATCH Superseded Adam Duskett 1 participant 1 message Sep 25, 2017

v2 of 5 Superseded Latest is v5 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 gstreamer1-mm: new package

Gstreamermm provides C++ bindings for gstreamer.

---
Changes v1 -> v2:
- Changed the name of the package from gst1-mm to gstreamer1-mm (Arnout)
- Added upstream author information to the patches (Arnout)
- Changed the upstream repo from github to git.gnome.org (Arnout)
- Added myself to the DEVELOPERS file.
- Added --enable-unittests=no to the mk file, as the default is auto.

 DEVELOPERS                                         |   1 +
 package/gstreamer1/Config.in                       |   1 +
 ...ock-auto-generate-some-audioclock-methods.patch |  68 +++++++
 .../gstreamer1-mm/0002-fix-iterator-build.patch    | 207 +++++++++++++++++++++
 .../0003-remove-gstreamer-check-dependency.patch   |  29 +++
 package/gstreamer1/gstreamer1-mm/Config.in         |  18 ++
 .../gstreamer1/gstreamer1-mm/gstreamer1-mm.hash    |   2 +
 package/gstreamer1/gstreamer1-mm/gstreamer1-mm.mk  |  24 +++
 8 files changed, 350 insertions(+)
 create mode 100644 package/gstreamer1/gstreamer1-mm/0001-gst-audioclock-auto-generate-some-audioclock-methods.patch
 create mode 100644 package/gstreamer1/gstreamer1-mm/0002-fix-iterator-build.patch
 create mode 100644 package/gstreamer1/gstreamer1-mm/0003-remove-gstreamer-check-dependency.patch
 create mode 100644 package/gstreamer1/gstreamer1-mm/Config.in
 create mode 100644 package/gstreamer1/gstreamer1-mm/gstreamer1-mm.hash
 create mode 100644 package/gstreamer1/gstreamer1-mm/gstreamer1-mm.mk
DEVELOPERS +1 -0
index e34802f2ba..0342b1cc41 100644
@@ -32,6 +32,7 @@ F:	package/gstreamer1/gst1-rtsp-server/
 N:	Adam Duskett <[email protected]>
 F:	package/audit/
 F:	package/checkpolicy/
+F:	package/gstreamer1/gstreamer1-mm/
 F:	package/gstreamer1/gst1-vaapi/
 F:	package/janus-gateway/
 F:	package/libressl/
package/gstreamer1/Config.in +1 -0
index aef75b55bf..a7b2a70d5b 100644
@@ -12,4 +12,5 @@ source "package/gstreamer1/gst1-rtsp-server/Config.in"
 source "package/gstreamer1/gst1-validate/Config.in"
 source "package/gstreamer1/gst1-vaapi/Config.in"
 source "package/gstreamer1/gst-omx/Config.in"
+source "package/gstreamer1/gstreamer1-mm/Config.in"
 endif
package/gstreamer1/gstreamer1-mm/0001-gst-audioclock-auto-generate-some-audioclock-methods.patch new file +68 -0

68 lines not on this page · raw message

package/gstreamer1/gstreamer1-mm/0002-fix-iterator-build.patch new file +207 -0

207 lines not on this page · raw message

package/gstreamer1/gstreamer1-mm/0003-remove-gstreamer-check-dependency.patch new file +29 -0
new file mode 100644
index 0000000000..70a05a6cdb
@@ -0,0 +1,29 @@
+From f65960a21c76bcd1371a9d0d3b008731d02a0e5d Mon Sep 17 00:00:00 2001
+From: Adam Duskett <[email protected]>
+Date: Thu, 31 Aug 2017 11:42:40 -0400
+Subject: [PATCH] remove gstreamer-check dependency
+
+gstreamer-check is disabled by default in buildroot and itsn't required to
+build gstreamermm. Remove the requirement from configure.
+
+Signed-off-by: Adam Duskett <[email protected]>
+---
+ configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index de43442..c30bc4c 100755
+--- a/configure
++++ b/configure
+@@ -16685,7 +16685,7 @@ fi
+ # The format below is used so that the requirements appear nicely in the .pc
+ # file.
+ 
+-GSTREAMERMM_MODULES='giomm-2.4 >= 2.47.6 gstreamer-1.0 >= 1.8.0 gstreamer-base-1.0 >= 1.8.0 gstreamer-check-1.0 >= 1.8.0 gstreamer-controller-1.0 >= 1.8.0 gstreamer-net-1.0 >= 1.8.0 gstreamer-allocators-1.0 >= 1.8.0 gstreamer-app-1.0 >= 1.8.0 gstreamer-audio-1.0 >= 1.8.0 gstreamer-fft-1.0 >= 1.8.0 gstreamer-pbutils-1.0 >= 1.8.0 gstreamer-plugins-base-1.0 >= 1.8.0 gstreamer-riff-1.0 >= 1.8.0 gstreamer-rtp-1.0 >= 1.8.0 gstreamer-rtsp-1.0 >= 1.8.0 gstreamer-sdp-1.0 >= 1.8.0 gstreamer-tag-1.0 >= 1.8.0 gstreamer-video-1.0 >= 1.8.0'
++GSTREAMERMM_MODULES='giomm-2.4 >= 2.47.6 gstreamer-1.0 >= 1.8.0 gstreamer-base-1.0 >= 1.8.0 gstreamer-controller-1.0 >= 1.8.0 gstreamer-net-1.0 >= 1.8.0 gstreamer-allocators-1.0 >= 1.8.0 gstreamer-app-1.0 >= 1.8.0 gstreamer-audio-1.0 >= 1.8.0 gstreamer-fft-1.0 >= 1.8.0 gstreamer-pbutils-1.0 >= 1.8.0 gstreamer-plugins-base-1.0 >= 1.8.0 gstreamer-riff-1.0 >= 1.8.0 gstreamer-rtp-1.0 >= 1.8.0 gstreamer-rtsp-1.0 >= 1.8.0 gstreamer-sdp-1.0 >= 1.8.0 gstreamer-tag-1.0 >= 1.8.0 gstreamer-video-1.0 >= 1.8.0'
+ 
+ 
+ 
+-- 
+2.13.5
+
package/gstreamer1/gstreamer1-mm/Config.in new file +18 -0
new file mode 100644
index 0000000000..a2915547ea
@@ -0,0 +1,18 @@
+config BR2_PACKAGE_GSTREAMER1_MM
+	bool "Gstreamer C++ bindings"
+	select BR2_PACKAGE_GST1_PLUGINS_BASE
+	select BR2_PACKAGE_GLIBMM
+	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
package/gstreamer1/gstreamer1-mm/gstreamer1-mm.hash new file +2 -0
new file mode 100644
index 0000000000..d10e002151
@@ -0,0 +1,2 @@
+#From http://ftp.gnome.org/pub/gnome/sources/gstreamermm/1.8/gstreamermm-1.8.0.sha256sum
+sha256 3ee3c1457ea2c32c1e17b784faa828f414ba27a9731532bf26d137a2ad999a44 gstreamermm-1.8.0.tar.xz
package/gstreamer1/gstreamer1-mm/gstreamer1-mm.mk new file +24 -0
new file mode 100644
index 0000000000..9bc4669ef1
@@ -0,0 +1,24 @@
+################################################################################
+#
+# gstreamer1-mm
+#
+################################################################################
+
+GSTREAMER1_MM_VERSION_MAJOR = 1.8
+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+
+GSTREAMER1_MM_LICENSE_FILES = COPYING.LIB
+GSTREAMER1_MM_INSTALL_STAGING = YES
+GSTREAMER1_MM_DEPENDENCIES += \
+	glibmm \
+	gstreamer1 \
+	gst1-plugins-base
+
+GSTREAMER1_MM_CONF_OPTS += \
+	--disable-gl \
+	--disable-plugins-bad \
+	--enable-unittests=no
+
+$(eval $(autotools-package))
Signature · 1 line
2.13.5