[Buildroot] [PATCH v2 1/1] package/gstreamer1/gstd: new package

Yann E. MORIN yann.morin.1998 at free.fr
Sat Sep 18 15:54:19 UTC 2021


James, All,

On 2021-09-14 18:04 -0600, James Hilliard spake thusly:
> Signed-off-by: James Hilliard <james.hilliard1 at gmail.com>
> ---
[--SNIP--]
> diff --git a/package/gstreamer1/gstd/0003-Use-relative-symlink-for-gstd-gst-client-exe.patch b/package/gstreamer1/gstd/0003-Use-relative-symlink-for-gstd-gst-client-exe.patch
> new file mode 100644
> index 0000000000..18498a90e9
> --- /dev/null
> +++ b/package/gstreamer1/gstd/0003-Use-relative-symlink-for-gstd-gst-client-exe.patch
> @@ -0,0 +1,70 @@
> +From 325699be7119312d8a910e624e35c6fb089404c8 Mon Sep 17 00:00:00 2001
> +From: James Hilliard <james.hilliard1 at gmail.com>
> +Date: Tue, 14 Sep 2021 02:49:10 -0600
> +Subject: [PATCH] Use relative symlink for gstd/gst-client exe.
> +
> +This should fix the symlink path when cross compiling.
> +
> +Signed-off-by: James Hilliard <james.hilliard1 at gmail.com>
> +[Upstream status:
> +https://github.com/RidgeRun/gstd-1.x/pull/249]
> +---
> + gst_client/gst_client_symbolic_link.sh | 2 +-
> + gst_client/meson.build                 | 4 ++--
> + gstd/gstd_symbolic_link.sh             | 2 +-
> + gstd/meson.build                       | 2 +-
> + 4 files changed, 5 insertions(+), 5 deletions(-)
> +
> +diff --git a/gst_client/gst_client_symbolic_link.sh b/gst_client/gst_client_symbolic_link.sh
> +index d8d7617..9e85694 100755
> +--- a/gst_client/gst_client_symbolic_link.sh
> ++++ b/gst_client/gst_client_symbolic_link.sh
> +@@ -4,4 +4,4 @@
> + # $1: target
> + # $2: link name
> + rm -f ${DESTDIR}${MESON_INSTALL_PREFIX}/$2
> +-ln -s ${DESTDIR}${MESON_INSTALL_PREFIX}/$1 ${DESTDIR}${MESON_INSTALL_PREFIX}/$2
> ++ln -s ./$1 ${DESTDIR}${MESON_INSTALL_PREFIX}/$2

As I suggested in your upstream PR [0], why not using:

    ln -s --relative ${DESTDIR}${MESON_INSTALL_PREFIX}/$1 ${DESTDIR}${MESON_INSTALL_PREFIX}/$2

and then for Buildroot, add $(BR2_COREUTILS_HOST_DEPENDENCY) in
GSTD_DEPENDENCIES.

[0] https://github.com/RidgeRun/gstd-1.x/pull/249#discussion_r711606110

[--SNIP--]
> +diff --git a/gstd/gstd_symbolic_link.sh b/gstd/gstd_symbolic_link.sh
> +index d8d7617..9e85694 100755
> +--- a/gstd/gstd_symbolic_link.sh
> ++++ b/gstd/gstd_symbolic_link.sh
> +@@ -4,4 +4,4 @@
> + # $1: target
> + # $2: link name
> + rm -f ${DESTDIR}${MESON_INSTALL_PREFIX}/$2
> +-ln -s ${DESTDIR}${MESON_INSTALL_PREFIX}/$1 ${DESTDIR}${MESON_INSTALL_PREFIX}/$2
> ++ln -s ./$1 ${DESTDIR}${MESON_INSTALL_PREFIX}/$2

Ditto, use:  ln --relative

[--SNIP--]
> diff --git a/package/gstreamer1/gstd/Config.in b/package/gstreamer1/gstd/Config.in
> new file mode 100644
> index 0000000000..3f73dbd1c4
> --- /dev/null
> +++ b/package/gstreamer1/gstd/Config.in
> @@ -0,0 +1,17 @@
> +config BR2_PACKAGE_GSTD
> +	bool "gstd"
> +	depends on BR2_USE_WCHAR # libglib2 -> gettext, libsoup
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2, libsoup
> +	depends on BR2_USE_MMU # libdaemon, libglib2
> +	select BR2_PACKAGE_JANSSON
> +	select BR2_PACKAGE_JSON_GLIB
> +	select BR2_PACKAGE_LIBDAEMON
> +	select BR2_PACKAGE_LIBGLIB2
> +	select BR2_PACKAGE_LIBSOUP
> +	select BR2_PACKAGE_READLINE
> +	help
> +	  GStreamer Daemon, also called gstd, is a GStreamer framework for
> +	  controlling audio and video streaming using an InterProcess
> +	  Communication protocol
> +
> +	  https://developer.ridgerun.com/wiki/index.php?title=GStreamer_Daemon

    $ make check-package
    package/gstreamer1/gstd/Config.in:13: help text: <tab><2 spaces><62 chars> (http://nightly.buildroot.org/#writing-rules-config-in)

Regards,
Yann E. MORIN.

> diff --git a/package/gstreamer1/gstd/gstd.hash b/package/gstreamer1/gstd/gstd.hash
> new file mode 100644
> index 0000000000..6ec84bd58d
> --- /dev/null
> +++ b/package/gstreamer1/gstd/gstd.hash
> @@ -0,0 +1,3 @@
> +# Locally calculated
> +sha256  94c10c798d3618b63cc68cbe053fabd19335a57f982a47b3d66c27c37d325da3  gstd-0.13.0.tar.gz
> +sha256  8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING
> diff --git a/package/gstreamer1/gstd/gstd.mk b/package/gstreamer1/gstd/gstd.mk
> new file mode 100644
> index 0000000000..2e785853cd
> --- /dev/null
> +++ b/package/gstreamer1/gstd/gstd.mk
> @@ -0,0 +1,36 @@
> +################################################################################
> +#
> +# gstd
> +#
> +################################################################################
> +
> +GSTD_VERSION = 0.13.0
> +GSTD_SITE = $(call github,RidgeRun,gstd-1.x,v$(GSTD_VERSION))
> +GSTD_LICENSE_FILES = COPYING
> +GSTD_LICENSE = GPL-2.0+
> +
> +GSTD_DEPENDENCIES = \
> +	gstreamer1 \
> +	jansson \
> +	json-glib \
> +	libdaemon \
> +	libglib2 \
> +	libsoup \
> +	readline
> +
> +GSTD_CONF_OPTS += \
> +	-Denable-tests=disabled \
> +	-Denable-examples=disabled \
> +	-Denable-gtk-doc=false \
> +	-Dwith-gstd-runstatedir=/var/run/gstd \
> +	-Dwith-gstd-logstatedir=/var/log/gstd \
> +	-Dwith-gstd-systemddir=/usr/lib/systemd/system
> +
> +ifeq ($(BR2_PACKAGE_SYSTEMD),y)
> +GSTD_CONF_OPTS += -Denable-systemd=enabled -Denable-initd=disabled
> +GSTD_DEPENDENCIES += systemd
> +else
> +GSTD_CONF_OPTS += -Denable-systemd=disabled -Denable-initd=enabled
> +endif
> +
> +$(eval $(meson-package))
> -- 
> 2.25.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot at lists.buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'


More information about the buildroot mailing list