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.
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]<mailto:[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<http://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]<mailto:[email protected]>>
Sent: 19 March 2024 17:14
To: Daniel Ottiger 
<[email protected]<mailto:[email protected]>>
Cc: 
[email protected]<mailto:[email protected]>
 
<[email protected]<mailto:[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<http://lists.openembedded.org/> 
<[email protected]<mailto:[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]<mailto:[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<http://default.pa/> \
   ${sysconfdir}/pulse/daemon.conf \
   ${sysconfdir}/pulse/system.pa<http://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 (#197328): 
https://lists.openembedded.org/g/openembedded-core/message/197328
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