[OE-core] [PATCH 1/6] gstreamer1.0-plugin-base: Update packageconfigs

Peter Kjellerstedt peter.kjellerstedt at axis.com
Wed Jul 18 12:16:17 UTC 2018


> -----Original Message-----
> From: openembedded-core-bounces at lists.openembedded.org
> [mailto:openembedded-core-bounces at lists.openembedded.org] On Behalf Of
> Carlos Rafael Giani
> Sent: den 17 juli 2018 11:35
> To: openembedded-core at lists.openembedded.org
> Subject: [OE-core] [PATCH 1/6] gstreamer1.0-plugin-base: Update
> packageconfigs
> 
> * Always enable zlib, since it is part of oe-core, and dependencies that
>   are in oe-core can be always enabled

Just because it can be enabled does not mean it should be unconditionally 
enabled. If building for an environment where, e.g., flash memory is scarce, 
every byte counts. Keeping the packageconfig and leaving it enabled by 
default will give the same result, but for someone trying to remove anything 
they do not need, it is then more obvious that the jpeg dependency is 
optional and can be removed if wanted.

> * The jpeg packageconfig is not needed, since there are no configuration
>   switches to enable or disable it, and libjpeg-turbo is part of oe-core

Same here as for zlib.

> * libpng is a dependency, and is part of oe-core, so add it to DEPENDS

This too is optional and should have a packageconfig (which can be 
enabled by default since it is pulled in anyway due to other dependencies).

> * There is no libvisual recipe in oe-core or in meta-openembedded, so
>   the visual packageconfig needs to go
> * Reorder the packageconfigs alphabetically

You also add dependencies on libgudev and libdrm, without mentioning it here.
Why is this? They too are optional, and they have not been needed before. 
If you want to add support for them, then do so by adding packageconfigs 
(which I don't think should be enabled by default to maintain the 
configuration as it was).

> Signed-off-by: Carlos Rafael Giani <dv at pseudoterminal.org>
> ---
>  .../gstreamer1.0-plugins-base_1.14.1.bb       | 26 +++++++++++--------
>  1 file changed, 15 insertions(+), 11 deletions(-)
> 
> diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb
> index 8d7d3c6192..52722ff615 100644
> --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb
> +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.1.bb
> @@ -24,18 +24,21 @@ SRC_URI[sha256sum] =
> "1026c7c3082d825d9b5d034c1a6dd8a4ebab60eb3738b0a0afde4ad2dc
> 
>  S = "${WORKDIR}/gst-plugins-base-${PV}"
> 
> -DEPENDS += "iso-codes util-linux"
> +DEPENDS += "iso-codes util-linux zlib libgudev libdrm jpeg libpng"
> 
>  inherit gettext
> 
>  PACKAGES_DYNAMIC =+ "^libgst.*"
> 
> +# opengl packageconfig factored out to make it easy for distros
> +# and BSP layers to pick either (desktop) opengl, gles2, or no GL
>  PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
> +
>  PACKAGECONFIG ??= " \
>      ${GSTREAMER_ORC} \
> -    ${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \
> -    gio-unix-2.0 ogg pango theora vorbis zlib jpeg \
>      ${PACKAGECONFIG_GL} \
> +    ${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \
> +    gio-unix-2.0 ogg pango theora vorbis \
>      ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \
>  "
> 
> @@ -45,26 +48,27 @@ X11DISABLEOPTS = "--disable-x --disable-xvideo --
> disable-xshm"
> 
>  PACKAGECONFIG[alsa]         = "--enable-alsa,--disable-alsa,alsa-lib"
>  PACKAGECONFIG[cdparanoia]   = "--enable-cdparanoia,--disable-cdparanoia,cdparanoia"
> +PACKAGECONFIG[egl]          = "--enable-egl,--disable-egl,virtual/egl"
>  PACKAGECONFIG[gio-unix-2.0] = "--enable-gio_unix_2_0,--disable-gio_unix_2_0,glib-2.0"
> +PACKAGECONFIG[gles2]        = "--enable-gles2,--disable-gles2,virtual/libgles2"
>  PACKAGECONFIG[ivorbis]      = "--enable-ivorbis,--disable-ivorbis,tremor"
>  PACKAGECONFIG[ogg]          = "--enable-ogg,--disable-ogg,libogg"
> +PACKAGECONFIG[opengl]       = "--enable-opengl,--disable-opengl,virtual/libgl libglu"
>  PACKAGECONFIG[opus]         = "--enable-opus,--disable-opus,libopus"
>  PACKAGECONFIG[pango]        = "--enable-pango,--disable-pango,pango"
>  PACKAGECONFIG[theora]       = "--enable-theora,--disable-theora,libtheora"
> -PACKAGECONFIG[visual]       = "--enable-libvisual,--disable-libvisual,libvisual"
>  PACKAGECONFIG[vorbis]       = "--enable-vorbis,--disable-vorbis,libvorbis"
>  PACKAGECONFIG[x11]          = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}"
> -PACKAGECONFIG[zlib]         = "--enable-zlib,--disable-zlib,zlib"
> -PACKAGECONFIG[opengl]       = "--enable-opengl,--disable-opengl,virtual/libgl libglu"
> -PACKAGECONFIG[gles2]        = "--enable-gles2,--disable-gles2,virtual/libgles2"
> -PACKAGECONFIG[egl]          = "--enable-egl,--disable-egl,virtual/egl"
>  PACKAGECONFIG[wayland]      = "--enable-wayland,--disable-wayland,wayland-native wayland wayland-protocols libdrm"
> -PACKAGECONFIG[jpeg]         = ",,jpeg"
> 
> +EXTRA_OECONF += " \
> +    --enable-zlib \
> +    --disable-libvisual \
> +"
> +
> +FILES_${PN}-dev += "${libdir}/gstreamer-${LIBV}/include/gst/gl/gstglconfig.h"
>  FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict"
> 
>  do_compile_prepend() {
>          export GIR_EXTRA_LIBS_PATH="${B}/gst-libs/gst/tag/.libs:${B}/gst-libs/gst/video/.libs:${B}/gst-libs/gst/audio/.libs:${B}/gst-libs/gst/rtp/.libs:${B}/gst-libs/gst/allocators/.libs"
>  }
> -
> -FILES_${PN}-dev += "${libdir}/gstreamer-${LIBV}/include/gst/gl/gstglconfig.h"
> --
> 2.17.1

//Peter




More information about the Openembedded-core mailing list