On Tue, Mar 19, 2024 at 6:11 PM Daniel Ottiger via
lists.openembedded.org
<[email protected]> wrote:
>
> Sure I try as good as I can:
>
> pulseaudio is part of my DISTRO_FEATURES, therefore "libao" depends on 
> pulseaudio.
>
> As far as I understand that is because in
> meta-openembedded/meta-multimedia/recipes-multimedia/libao/libao_1.2.0.bb
> I find this lines:
>
> PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pulseaudio', 
> d)}"
> PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
> PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
>
> In addition vorbis-tools depends on libao, because in
> meta-openembedded/meta-multimedia/recipes-multimedia/vorbis-tools/vorbis-tools_1.4.2.bb
> I find this lines:
>
> PACKAGECONFIG ??= "flac ogg123"
> PACKAGECONFIG[flac] = ",--without-flac,flac,libflac"
> PACKAGECONFIG[speex] = ",--without-speex,speex,speex"
> PACKAGECONFIG[ogg123] = "--enable-ogg123,--disable-ogg123,libao curl"
>
> Therefore if I would like to build
> vorbis-tools-native it requires libao-native which then requires 
> pulseaudio-native, at least in my case.
>
> Since I do not know those projects (vorbis-tools, libao) well enough, I 
> cannot tell if this dependencies are really required or not.

See:
https://github.com/xiph/libao/blob/master/configure.ac#L448
it's possible to build libao without the output plugin for pulseaudio.

> Of course I would be happy if I can work without pulseaudio for this.
> One solution might be to remove it from my DISTRO_FEATURES, but I cannot see 
> how I can do this when I need it on my target.
>
> This is based on this commit of meta-openembedded repository:
>
> commit a8310f7f31acdf273a3f51a75c74cc957375426e (HEAD -> scarthgap, 
> yoctoproject/scarthgap, yoctoproject/master)
> Author: Khem Raj <[email protected]>
> Date:   Sat Mar 16 19:52:58 2024 -0700
>
>     layer.conf: Prepare for release, drop nanbield LAYERSERIES
>
>     Signed-off-by: Khem Raj <[email protected]>
>
> Thanks a lot for looking into this.
> Daniel
>
>
> ________________________________
> From: Alexander Kanavin <[email protected]>
> Sent: 19 March 2024 17:38
> To: Daniel Ottiger <[email protected]>
> Cc: [email protected] 
> <[email protected]>
> Subject: Re: [EXTERNAL] Re: [OE-core] [PATCH] pulseaudio: replace 
> "pulseaudio-" with "${PN}-"
>
> Please dig a little deeper, and inspect the recipes for vorbis tools and 
> libao and their respective source trees. I’m just saying that converting 
> compressed audio files shouldn’t be requiring a sound server and it would be 
> good to understand why it does.
>
> Alex
>
> On Tue 19. Mar 2024 at 17.30, Daniel Ottiger <[email protected]> 
> wrote:
>
> If I remove my bbappend file for enabling native compilation, and I try to 
> build "vorbis-tools-native" I get the following error:
>
> bitbake vorbis-tools-native
> Parsing recipes: 100% 
> |#############################################################################################################################################################################|
>  Time: 0:00:05
> Parsing of 3691 .bb files complete (0 cached, 3691 parsed). 5918 targets, 
> 1137 skipped, 0 masked, 0 errors.
> Removing 1 recipes from the x86_64 sysroot: 100% 
> |##################################################################################################################################################|
>  Time: 0:00:00
> NOTE: Resolving any missing task queue dependencies
> ERROR: Nothing PROVIDES 'pulseaudio-native' (but 
> virtual:native:/home/ottigeda/workspace/yocto-builder-scarthgap/meta-openembedded/meta-multimedia/recipes-multimedia/libao/libao_1.2.0.bb
>  DEPENDS on or otherwise requires it). Close matches:
>   pseudo-native
>   pulseaudio
>   usbredir-native
>
> In case this is important, I also have meta-openembedded layer 
> (https://github.com/openembedded/meta-openembedded) added.
> Maybe the dependency is from there ?
>
> Daniel
> ________________________________
> From: Alexander Kanavin <[email protected]>
> Sent: 19 March 2024 17:14
> To: Daniel Ottiger <[email protected]>
> Cc: [email protected] 
> <[email protected]>
> Subject: [EXTERNAL] Re: [OE-core] [PATCH] pulseaudio: replace "pulseaudio-" 
> with "${PN}-"
>
> Wait, what do vorbis tools need pulseaudio for? It’s an odd dependency, can 
> you check?
>
> Alex
>
> On Tue 19. Mar 2024 at 17.10, Daniel Ottiger via lists.openembedded.org 
> <[email protected]> wrote:
>
> avoid preferred provider warnings when compiling pulseaudio natively.
>
> Enabling native compilation was done in a separate bbappend file for 
> pulseadio:
> ----
> BBCLASSEXTEND += "native"
> ----
>
> pulseaudio is a dependency of vorbis-tools,
> from which we like to use the native version of oggenc
> in order to convert wav to ogg files as part of the yocto build.
>
> Signed-off-by: Daniel Ottiger <[email protected]>
> ---
>  .../pulseaudio/pulseaudio.inc                 | 78 +++++++++----------
>  1 file changed, 39 insertions(+), 39 deletions(-)
>
> diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc 
> b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
> index ae16056d243..85515b3581f 100644
> --- a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
> +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
> @@ -145,9 +145,9 @@ do_install:append() {
>         install -m 0644 ${WORKDIR}/volatiles.04_pulse  
> ${D}${sysconfdir}/default/volatiles/04_pulse
>  }
>
> -USERADD_PACKAGES = "pulseaudio-server"
> -GROUPADD_PARAM:pulseaudio-server = "--system pulse"
> -USERADD_PARAM:pulseaudio-server = "--system --home /var/run/pulse \
> +USERADD_PACKAGES = "${PN}-server"
> +GROUPADD_PARAM:${PN}-server = "--system pulse"
> +USERADD_PARAM:${PN}-server = "--system --home /var/run/pulse \
>                                --no-create-home --shell /bin/false \
>                                --groups audio,pulse --gid pulse pulse"
>
> @@ -166,12 +166,12 @@ PACKAGES =+ "\
>  # RDEPENDS we define for it in this recipe, and thereby ensure that when
>  # adding the console-kit module to an image, we also get the necessary
>  # consolekit package produced.
> -PACKAGES =+ "${@bb.utils.contains('PACKAGECONFIG', 'dbus', 
> 'pulseaudio-module-console-kit', '', d)}"
> +PACKAGES =+ "${@bb.utils.contains('PACKAGECONFIG', 'dbus', 
> '${PN}-module-console-kit', '', d)}"
>
>  #upgrade path:
> -RREPLACES:pulseaudio-server = "libpulse-bin libpulse-conf"
> +RREPLACES:${PN}-server = "libpulse-bin libpulse-conf"
>
> -PACKAGES_DYNAMIC += "^pulseaudio-lib-.* ^pulseaudio-module-.*"
> +PACKAGES_DYNAMIC += "^${PN}-lib-.* ^${PN}-module-.*"
>
>  FILES:libpulsecore = "${libdir}/pulseaudio/libpulsecore*.so"
>  FILES:libpulsecommon = "${libdir}/pulseaudio/libpulsecommon*.so"
> @@ -200,7 +200,7 @@ ALLOW_EMPTY:${PN} = "1"
>
>  CONFFILES:libpulse = "${sysconfdir}/pulse/client.conf"
>
> -CONFFILES:pulseaudio-server = "\
> +CONFFILES:${PN}-server = "\
>    ${sysconfdir}/pulse/default.pa \
>    ${sysconfdir}/pulse/daemon.conf \
>    ${sysconfdir}/pulse/system.pa \
> @@ -228,38 +228,38 @@ RDEPENDS:${PN}-pa-info = "\
>                            ${PN}-server \
>                            "
>
> -RDEPENDS:pulseaudio-server = " \
> -    pulseaudio-module-filter-apply \
> -    pulseaudio-module-filter-heuristics \
> -    pulseaudio-module-udev-detect \
> -    pulseaudio-module-null-sink \
> -    pulseaudio-module-device-restore \
> -    pulseaudio-module-stream-restore \
> -    pulseaudio-module-card-restore \
> -    pulseaudio-module-augment-properties \
> -    pulseaudio-module-detect \
> -    pulseaudio-module-alsa-sink \
> -    pulseaudio-module-alsa-source \
> -    pulseaudio-module-alsa-card \
> -    pulseaudio-module-native-protocol-unix \
> -    pulseaudio-module-default-device-restore \
> -    pulseaudio-module-intended-roles \
> -    pulseaudio-module-rescue-streams \
> -    pulseaudio-module-always-sink \
> -    pulseaudio-module-suspend-on-idle \
> -    pulseaudio-module-position-event-sounds \
> -    pulseaudio-module-role-cork \
> -    pulseaudio-module-switch-on-port-available"
> +RDEPENDS:${PN}-server = " \
> +    ${PN}-module-filter-apply \
> +    ${PN}-module-filter-heuristics \
> +    ${PN}-module-udev-detect \
> +    ${PN}-module-null-sink \
> +    ${PN}-module-device-restore \
> +    ${PN}-module-stream-restore \
> +    ${PN}-module-card-restore \
> +    ${PN}-module-augment-properties \
> +    ${PN}-module-detect \
> +    ${PN}-module-alsa-sink \
> +    ${PN}-module-alsa-source \
> +    ${PN}-module-alsa-card \
> +    ${PN}-module-native-protocol-unix \
> +    ${PN}-module-default-device-restore \
> +    ${PN}-module-intended-roles \
> +    ${PN}-module-rescue-streams \
> +    ${PN}-module-always-sink \
> +    ${PN}-module-suspend-on-idle \
> +    ${PN}-module-position-event-sounds \
> +    ${PN}-module-role-cork \
> +    ${PN}-module-switch-on-port-available"
>
>  # If the server is installed, it's usually desirable to make ALSA 
> applications
>  # use PulseAudio. alsa-plugins-pulseaudio-conf will install the configuration
>  # that makes the PulseAudio plugin the default ALSA device.
> -RDEPENDS:pulseaudio-server += "${@bb.utils.contains('DISTRO_FEATURES', 
> 'pulseaudio', 'alsa-plugins-pulseaudio-conf', '', d)}"
> +RDEPENDS:${PN}-server += "${@bb.utils.contains('DISTRO_FEATURES', 
> 'pulseaudio', 'alsa-plugins-pulseaudio-conf', '', d)}"
>
>  # pulseaudio-module-console-kit is built whenever dbus is enabled by 
> PACKAGECONFIG
>  # but consolekit depends on libx11 and is available only for DISTRO with x11 
> in DISTRO_FEATURES
> -RDEPENDS:pulseaudio-module-console-kit =+ 
> "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit x11', 'consolekit', '', 
> d)}"
> -RDEPENDS:pulseaudio-misc += "pulseaudio-module-cli-protocol-unix"
> +RDEPENDS:${PN}-module-console-kit =+ 
> "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit x11', 'consolekit', '', 
> d)}"
> +RDEPENDS:${PN}-misc += "${PN}-module-cli-protocol-unix"
>
>  FILES:${PN}-module-alsa-card += "${datadir}/pulseaudio/alsa-mixer"
>
> @@ -270,14 +270,14 @@ FILES:${PN}-module-gsettings += 
> "${libexecdir}/pulse/gsettings-helper ${datadir}
>  # running for the duration of the user login session). The device-manager and
>  # x11-* modules are referenced from the start-pulseaudio-x11 script, so those
>  # modules must be installed when X11 is enabled.
> -RDEPENDS:pulseaudio-server += "\
> +RDEPENDS:${PN}-server += "\
>          ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '\
> -                pulseaudio-module-device-manager \
> -                pulseaudio-module-x11-cork-request \
> -                pulseaudio-module-x11-publish \
> -                pulseaudio-module-x11-xsmp \
> +                ${PN}-module-device-manager \
> +                ${PN}-module-x11-cork-request \
> +                ${PN}-module-x11-publish \
> +                ${PN}-module-x11-xsmp \
>          ', '', d)}"
>
> -RDEPENDS:pulseaudio-server += "${@bb.utils.contains('DISTRO_FEATURES', 
> 'x11', \
> -                                  bb.utils.contains('DISTRO_FEATURES', 
> 'systemd', 'pulseaudio-module-systemd-login', 
> 'pulseaudio-module-console-kit', d), \
> +RDEPENDS:${PN}-server += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', \
> +                                  bb.utils.contains('DISTRO_FEATURES', 
> 'systemd', '${PN}-module-systemd-login', '${PN}-module-console-kit', d), \
>                                    '', d)}"
> --
> 2.39.2
>
>
> *****************************************************************
> The information contained in this message is intended only for use of the 
> individual(s) named above and may contain confidential, proprietary or 
> legally privileged information. No confidentiality or privilege is waived or 
> lost by any mistransmission. If you are not the intended recipient of this 
> message you are hereby notified that you must not use, disseminate, copy it 
> in any form or take any action in reliance of it. If you have received this 
> message in error please delete it and any copies of it and notify the sender 
> immediately.
> *****************************************************************
>
>
>
>
> *****************************************************************
> The information contained in this message is intended only for use of the 
> individual(s) named above and may contain confidential, proprietary or 
> legally privileged information. No confidentiality or privilege is waived or 
> lost by any mistransmission. If you are not the intended recipient of this 
> message you are hereby notified that you must not use, disseminate, copy it 
> in any form or take any action in reliance of it. If you have received this 
> message in error please delete it and any copies of it and notify the sender 
> immediately.
> *****************************************************************
>
>
> *****************************************************************
> The information contained in this message is intended only for use of the 
> individual(s) named above and may contain confidential, proprietary or 
> legally privileged information. No confidentiality or privilege is waived or 
> lost by any mistransmission. If you are not the intended recipient of this 
> message you are hereby notified that you must not use, disseminate, copy it 
> in any form or take any action in reliance of it. If you have received this 
> message in error please delete it and any copies of it and notify the sender 
> immediately.
> *****************************************************************
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#197329): 
https://lists.openembedded.org/g/openembedded-core/message/197329
Mute This Topic: https://lists.openembedded.org/mt/105026949/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to