[OE-core] [PATCH v2 2/5] alsa-ucm-conf: new recipe, version 1.2.1.2

Martin Jansa martin.jansa at gmail.com
Sat Feb 1 10:31:54 UTC 2020


In LuneOS we have .bbappend in distro layer adding the UCM files for
MACHINEs we support.

It's not nice, but before this recipe we were adding the same in alsa-lib
bbappend, so it's not worse than before for sure.

BSP layer with .bbappend is a bit worse, because including BSP layer
shouldn't change anything for other MACHINEs. For UCM it's on edge, because
if the files are added correctly, then there won't be any change in
behavior for other MACHINEs in practise, but still people won't be happy
from even alsa-ucm-conf being rebuilt just by adding BSP layer to
bblayers.conf. (In theory distro layers shouldn't influence anything when
their supported DISTRO isn't selected as well, but this rule is much less
enforced, because often it doesn't make much sense to include the distro
layer without using that DISTRO - unlike BSP where multiple BSP layers will
be included just to sequentially build the images for various MACHINEs in
the same build directory).

Maybe nobody replied, because there isn't really good way how to handle
this :/.

On Sat, Feb 1, 2020 at 9:21 AM Tanu Kaskinen <tanuk at iki.fi> wrote:

> On Thu, 2020-01-30 at 15:01 +0100, Nicolas Dechesne wrote:
> > hey,
> >
> > On Mon, Jan 6, 2020 at 10:18 AM Tanu Kaskinen <tanuk at iki.fi> wrote:
> > > The UCM configuration files were moved from the alsa-lib repository to
> a
> > > new alsa-ucm-conf repository. The move was accompanied by a license
> > > change from LGPL2.1 to BSD-3-Clause.
> > >
> > > Signed-off-by: Tanu Kaskinen <tanuk at iki.fi>
> > > ---
> > >  meta/conf/distro/include/maintainers.inc      |  1 +
> > >  .../alsa/alsa-lib_1.2.1.2.bb                  |  2 +-
> > >  .../alsa/alsa-ucm-conf_1.2.1.2.bb             | 23
> +++++++++++++++++++
> > >  3 files changed, 25 insertions(+), 1 deletion(-)
> > >  create mode 100644 meta/recipes-multimedia/alsa/
> alsa-ucm-conf_1.2.1.2.bb
> > >
> > > diff --git a/meta/conf/distro/include/maintainers.inc
> b/meta/conf/distro/include/maintainers.inc
> > > index 39eee9475c..c9fb373f52 100644
> > > --- a/meta/conf/distro/include/maintainers.inc
> > > +++ b/meta/conf/distro/include/maintainers.inc
> > > @@ -35,6 +35,7 @@ RECIPE_MAINTAINER_pn-alsa-lib = "Tanu Kaskinen <
> tanuk at iki.fi>"
> > >  RECIPE_MAINTAINER_pn-alsa-plugins = "Tanu Kaskinen <tanuk at iki.fi>"
> > >  RECIPE_MAINTAINER_pn-alsa-state = "Tanu Kaskinen <tanuk at iki.fi>"
> > >  RECIPE_MAINTAINER_pn-alsa-tools = "Tanu Kaskinen <tanuk at iki.fi>"
> > > +RECIPE_MAINTAINER_pn-alsa-ucm-conf = "Tanu Kaskinen <tanuk at iki.fi>"
> > >  RECIPE_MAINTAINER_pn-alsa-utils = "Tanu Kaskinen <tanuk at iki.fi>"
> > >  RECIPE_MAINTAINER_pn-alsa-utils-scripts = "Tanu Kaskinen <
> tanuk at iki.fi>"
> > >  RECIPE_MAINTAINER_pn-apmd = "Anuj Mittal <anuj.mittal at intel.com>"
> > > diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.2.1.2.bb
> b/meta/recipes-multimedia/alsa/alsa-lib_1.2.1.2.bb
> > > index 9565ad1b20..7bc78b8523 100644
> > > --- a/meta/recipes-multimedia/alsa/alsa-lib_1.2.1.2.bb
> > > +++ b/meta/recipes-multimedia/alsa/alsa-lib_1.2.1.2.bb
> > > @@ -33,7 +33,7 @@ FILES_alsa-server = "${bindir}/*"
> > >  FILES_alsa-conf = "${datadir}/alsa/"
> > >  FILES_libatopology = "${libdir}/libatopology.so.*"
> > >
> > > -RDEPENDS_${PN}_class-target = "alsa-conf"
> > > +RDEPENDS_${PN}_class-target = "alsa-conf alsa-ucm-conf"
> > >
> > >  # upgrade path
> > >  RPROVIDES_${PN} = "libasound"
> > > diff --git a/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.1.2.bb
> b/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.1.2.bb
> > > new file mode 100644
> > > index 0000000000..469d1f7a95
> > > --- /dev/null
> > > +++ b/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.1.2.bb
> > > @@ -0,0 +1,23 @@
> > > +SUMMARY = "ALSA Use Case Manager configuration"
> > > +HOMEPAGE = "https://alsa-project.org"
> > > +BUGTRACKER = "https://alsa-project.org/wiki/Bug_Tracking"
> > > +LICENSE = "BSD-3-Clause"
> > > +LIC_FILES_CHKSUM =
> "file://LICENSE;md5=20d74d74db9741697903372ad001d3b4"
> > > +
> > > +# The tarball doesn't have any toplevel directory. The subdir option
> tells
> > > +# Bitbake to unpack the archive to the correct place.
> > > +SRC_URI = "
> https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2;subdir=${BP}"
> > > +SRC_URI[md5sum] = "b7fa43cfd79df978184a6333766d2a50"
> > > +SRC_URI[sha256sum] =
> "ea8a86875f4cf430d49a662a04a6d6c606c5c9d67e54cb944c4d77b24554062f"
> > > +
> > > +inherit allarch
> >
> > it's a bit late into the game.. but I have some questions about this
> > patch. now that the alsa-ucm-conf are allarch, how do we expect a BSP
> > layer to provide its own UCM config files? if i add a .bbappend file,
> > I can't change PACKAGE_ARCH to be 'machine' specific. If i create a
> > new recipe for my custom UCM files, then it's not obvious when I
> > should install them, since we need them only if alsa-ucm-conf is
> > installed in the first place..
> >
> > I was thinking about adding an empty alsa-ucm-machine-conf recipe that
> > BSP could append,  like gpsd, e.g.:
> >
> http://git.openembedded.org/meta-openembedded/tree/meta-oe/recipes-navigation/gpsd/gpsd-machine-conf_1.0.bb
> >
> > Is that a good idea?
>
> I was hoping someone else would answer this, since I have no experience
> with BSPs or .bbappend files... Since I don't know how this *should* be
> done, I'm not against creating alsa-ucm-machine-conf. However, my
> intuition would be that the BSP installs its configuration as a
> separate recipe whenever the BSP is used. I don't see the need to have
> conditions such as "install only if alsa-ucm-conf is installed". Is it
> just to save disk space? alsa-ucm-conf anyway installs a bunch of files
> that aren't relevant to most machines, so if you're worried about UCM
> disk consumption, the alsa-ucm-conf recipe would need work to somehow
> install only those files that are needed by the current machine.
>
> Another approach that would make sense to me (even more than creating a
> separate recipe) is to submit your UCM config to ALSA upstream. While
> waiting for the change to get accepted to upstream and then later
> incorporated in the main alsa-ucm-conf recipe, you could use .bbappend
> to add the configuration to the alsa-ucm-conf recipe as a patch.
>
> --
> Tanu
>
> https://www.patreon.com/tanuk
> https://liberapay.com/tanuk
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20200201/506ed471/attachment-0001.html>


More information about the Openembedded-core mailing list