[{"id":1774074,"web_url":"http://patchwork.ozlabs.org/comment/1774074/","msgid":"<b7c64db0-eeb9-8e2f-5b33-c68d1192d336@mind.be>","list_archive_url":null,"date":"2017-09-23T18:49:36","subject":"Re: [Buildroot] [PATCH 2/2] gst1-mm: new package","submitter":{"id":11809,"url":"http://patchwork.ozlabs.org/api/people/11809/","name":"Arnout Vandecappelle","email":"arnout@mind.be"},"content":"Hi Adam,\n\n I have a lot of nitpicky comments :-)\n\n\nOn 31-08-17 17:53, Adam Duskett wrote:\n> Gstreamermm provides C++ bindings for gstreamer.\n\n Since upstream calls it gstreamermm, we should have a name that closely\nresembles it. I think we could even use gstreamermm itself, but it could also be\ngstreamer1-mm to be more similar to the existing gst1 packages. Note that the\nupstream of gst1-plugins-bad is called gst-plugins-bad, not gstreamer-plugins-bad.\n\n But since we already have a gst-omx (this is a plugin that didn't exist in\ngstreamer-0.10), I think we could choose gstreamermm.\n\n\n> Signed-off-by: Adam Duskett <aduskett@gmail.com>\n[snip]\n> diff --git a/package/gstreamer1/gst1-mm/0001-gst-audioclock-auto-generate-some-audioclock-methods.patch b/package/gstreamer1/gst1-mm/0001-gst-audioclock-auto-generate-some-audioclock-methods.patch\n> new file mode 100644\n> index 000000000..c2db2657a\n> --- /dev/null\n> +++ b/package/gstreamer1/gst1-mm/0001-gst-audioclock-auto-generate-some-audioclock-methods.patch\n> @@ -0,0 +1,68 @@\n> +From 631414d89ba50bb207ce1fb7e0324c0e91cdcf43 Mon Sep 17 00:00:00 2001\n> +From: Adam Duskett <aduskett@gmail.com>\n\n You should really keep the upstream author information...\n\ngit clone https://git.gnome.org/browse/gstreamermm\ncd gstreamermm\ngit checkout 1.8.0\ngit cherry-pick -s 167eeba7757027e5faf8cdb59030ca094af04763\ngit commit --amend\n\n> +Date: Thu, 31 Aug 2017 11:40:37 -0400\n> +Subject: [PATCH] Gst::AudioClock: auto generate some audioclock methods\n> +\n> +Those methods used to have object of GstClock type  as a\n> +first argument, so had to be wrapped manually. It has been\n> +fixed in GStreamer (https://bugzilla.gnome.org/show_bug.cgi?id=756628)\n> +in version 1.12.0\n> +https://bugzilla.gnome.org/show_bug.cgi?id=783628\n> +\n> +Signed-off-by: Adam Duskett <aduskett@gmail.com>\n> +[Upstream commit: https://github.com/GNOME/gstreamermm/commit/167eeba7757027e5faf8cdb59030ca094af04763]\n\n The upstream repo is (AFAIK) https://git.gnome.org/browse/gstreamermm, github\nis just a mirror.\n\n[snip]\n> diff --git a/package/gstreamer1/gst1-mm/0003-remove-gstreamer-check-dependency.patch b/package/gstreamer1/gst1-mm/0003-remove-gstreamer-check-dependency.patch\n> new file mode 100644\n> index 000000000..70a05a6cd\n> --- /dev/null\n> +++ b/package/gstreamer1/gst1-mm/0003-remove-gstreamer-check-dependency.patch\n> @@ -0,0 +1,29 @@\n> +From f65960a21c76bcd1371a9d0d3b008731d02a0e5d Mon Sep 17 00:00:00 2001\n> +From: Adam Duskett <aduskett@gmail.com>\n> +Date: Thu, 31 Aug 2017 11:42:40 -0400\n> +Subject: [PATCH] remove gstreamer-check dependency\n> +\n> +gstreamer-check is disabled by default in buildroot and itsn't required to\n                                                           it isn't\n\n> +build gstreamermm. Remove the requirement from configure.\n\n Do you think this patch could be sent upstream?\n\n> +\n> +Signed-off-by: Adam Duskett <aduskett@gmail.com>\n> +---\n> + configure | 2 +-\n> + 1 file changed, 1 insertion(+), 1 deletion(-)\n> +\n> +diff --git a/configure b/configure\n> +index de43442..c30bc4c 100755\n> +--- a/configure\n> ++++ b/configure\n> +@@ -16685,7 +16685,7 @@ fi\n> + # The format below is used so that the requirements appear nicely in the .pc\n> + # file.\n> + \n> +-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'\n> ++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'\n> + \n> + \n> + \n> +-- \n> +2.13.5\n> +\n> diff --git a/package/gstreamer1/gst1-mm/Config.in b/package/gstreamer1/gst1-mm/Config.in\n> new file mode 100644\n> index 000000000..bbddbbd0c\n> --- /dev/null\n> +++ b/package/gstreamer1/gst1-mm/Config.in\n> @@ -0,0 +1,18 @@\n> +config BR2_PACKAGE_GST1_MM\n> +\tbool \"Gstreamer C++ bindings\"\n> +\tselect BR2_PACKAGE_GST1_PLUGINS_BASE\n\n Based on the modules listed above, I'd guess that you actually need to select a\nbunch of modules from plugins-base, e.g.\nBR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP. And isn't e.g.\nBR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP needed as well?\n\n\n> +\tselect BR2_PACKAGE_GLIBMM\n> +\thelp\n> +\t  gstreamermm provides C++ bindings for the GStreamer streaming\n> +\t  multimedia library (http://gstreamer.freedesktop.org). With\n> +\t  gstreamermm it is possible to\tdevelop applications that work\n> +\t  with multimedia in C++.\n> +\n> +\t  gstreamermm is developed over glibmm, libsigc++ and libxml++\n> +\t  and the functionalities they provide. This means that, among\n> +\t  other things, referencing and unreferencing of GObjects is\n> +\t  handled automatically via glibmm's automatic pointer class,\n> +\t  Glib::RefPtr, and libsigc++'s slots are used for callbacks and\n> +\t  signals.\n> +\n> +\t  https://gstreamer.freedesktop.org/bindings/cplusplus.html\n\n Good choice of upstream URL!\n\n\n Regards,\n Arnout\n\n> diff --git a/package/gstreamer1/gst1-mm/gst1-mm.hash b/package/gstreamer1/gst1-mm/gst1-mm.hash\n> new file mode 100644\n> index 000000000..d10e00215\n> --- /dev/null\n> +++ b/package/gstreamer1/gst1-mm/gst1-mm.hash\n> @@ -0,0 +1,2 @@\n> +#From http://ftp.gnome.org/pub/gnome/sources/gstreamermm/1.8/gstreamermm-1.8.0.sha256sum\n> +sha256 3ee3c1457ea2c32c1e17b784faa828f414ba27a9731532bf26d137a2ad999a44 gstreamermm-1.8.0.tar.xz\n> diff --git a/package/gstreamer1/gst1-mm/gst1-mm.mk b/package/gstreamer1/gst1-mm/gst1-mm.mk\n> new file mode 100644\n> index 000000000..d54a4d6b3\n> --- /dev/null\n> +++ b/package/gstreamer1/gst1-mm/gst1-mm.mk\n> @@ -0,0 +1,23 @@\n> +################################################################################\n> +#\n> +# gst1-mm\n> +#\n> +################################################################################\n> +\n> +GST1_MM_VERSION_MAJOR = 1.8\n> +GST1_MM_VERSION = $(GST1_MM_VERSION_MAJOR).0\n> +GST1_MM_SITE = http://ftp.gnome.org/pub/gnome/sources/gstreamermm/$(GST1_MM_VERSION_MAJOR)\n> +GST1_MM_SOURCE = gstreamermm-$(GST1_MM_VERSION).tar.xz\n> +GST1_MM_LICENSE = LGPL-2.1+\n> +GST1_MM_LICENSE_FILES = COPYING.LIB\n> +GST1_MM_INSTALL_STAGING = YES\n> +GST1_MM_DEPENDENCIES += \\\n> +\tglibmm \\\n> +\tgstreamer1 \\\n> +\tgst1-plugins-base\n> +\n> +GST1_MM_CONF_OPTS += \\\n> +\t--disable-gl \\\n> +\t--disable-plugins-bad\n> +\n> +$(eval $(autotools-package))\n>","headers":{"Return-Path":"<buildroot-bounces@busybox.net>","X-Original-To":["incoming@patchwork.ozlabs.org","buildroot@lists.busybox.net"],"Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","buildroot@osuosl.org"],"Authentication-Results":"ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=busybox.net\n\t(client-ip=140.211.166.137; helo=fraxinus.osuosl.org;\n\tenvelope-from=buildroot-bounces@busybox.net;\n\treceiver=<UNKNOWN>)","Received":["from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xzztJ0Lvjz9t2M\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSun, 24 Sep 2017 04:49:58 +1000 (AEST)","from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 4434B888FB;\n\tSat, 23 Sep 2017 18:49:56 +0000 (UTC)","from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id axKgHEPXosZN; Sat, 23 Sep 2017 18:49:53 +0000 (UTC)","from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id C0336888F2;\n\tSat, 23 Sep 2017 18:49:53 +0000 (UTC)","from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n\tby ash.osuosl.org (Postfix) with ESMTP id 74C571C21AC\n\tfor <buildroot@lists.busybox.net>;\n\tSat, 23 Sep 2017 18:49:52 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 61E9288FF3\n\tfor <buildroot@lists.busybox.net>;\n\tSat, 23 Sep 2017 18:49:52 +0000 (UTC)","from whitealder.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id mgjXGMEzIukl for <buildroot@lists.busybox.net>;\n\tSat, 23 Sep 2017 18:49:50 +0000 (UTC)","from exchange.essensium.com (220.77.144.195.ipv4.evonet.be\n\t[195.144.77.220])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 59F8A88F7B\n\tfor <buildroot@buildroot.org>; Sat, 23 Sep 2017 18:49:50 +0000 (UTC)","from [10.8.0.14] (10.3.7.11) by beleexch01.local.ess-mail.com\n\t(10.3.7.8) with Microsoft SMTP Server (TLS) id 15.0.847.32;\n\tSat, 23 Sep 2017 20:49:37 +0200"],"X-Virus-Scanned":["amavisd-new at osuosl.org","amavisd-new at osuosl.org"],"X-Greylist":"domain auto-whitelisted by SQLgrey-1.7.6","To":"Adam Duskett <aduskett@gmail.com>, <buildroot@buildroot.org>","References":"<20170831155352.4644-1-aduskett@gmail.com>","From":"Arnout Vandecappelle <arnout@mind.be>","Organization":"Essensium/Mind","Message-ID":"<b7c64db0-eeb9-8e2f-5b33-c68d1192d336@mind.be>","Date":"Sat, 23 Sep 2017 20:49:36 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<20170831155352.4644-1-aduskett@gmail.com>","Content-Language":"en-GB","X-Originating-IP":"[10.3.7.11]","X-ClientProxiedBy":"beleexch01.local.ess-mail.com (10.3.7.8) To\n\tbeleexch01.local.ess-mail.com (10.3.7.8)","Subject":"Re: [Buildroot] [PATCH 2/2] gst1-mm: new package","X-BeenThere":"buildroot@busybox.net","X-Mailman-Version":"2.1.18-1","Precedence":"list","List-Id":"Discussion and development of buildroot <buildroot.busybox.net>","List-Unsubscribe":"<http://lists.busybox.net/mailman/options/buildroot>,\n\t<mailto:buildroot-request@busybox.net?subject=unsubscribe>","List-Archive":"<http://lists.busybox.net/pipermail/buildroot/>","List-Post":"<mailto:buildroot@busybox.net>","List-Help":"<mailto:buildroot-request@busybox.net?subject=help>","List-Subscribe":"<http://lists.busybox.net/mailman/listinfo/buildroot>,\n\t<mailto:buildroot-request@busybox.net?subject=subscribe>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"buildroot-bounces@busybox.net","Sender":"\"buildroot\" <buildroot-bounces@busybox.net>"}}]