The media-video/pipewire-0.3.0 fails to build while looking for run-time dependency vulkan. Run-time dependency vulkan found: NO (tried pkgconfig and system) spa/meson.build:34:4: ERROR: Dependency "vulkan" not found, tried pkgconfig and system A full log can be found at /var/tmp/portage/media-video/pipewire-0.3.0/work/pipewire-0.3.0-build/meson-logs/meson-log.txt * ERROR: media-video/pipewire-0.3.0::ace failed (configure phase): * (no error message) * * Call stack: * ebuild.sh, line 125: Called src_configure * environment, line 2165: Called meson_src_configure * environment, line 1276: Called die * The specific snippet of code: * tc-env_build "$@" || die * * If you need support, post the output of `emerge --info '=media-video/pipewire-0.3.0::ace'`, * the complete build log and the output of `emerge -pqv '=media-video/pipewire-0.3.0::ace'`. * The complete build log is located at '/var/tmp/portage/media-video/pipewire-0.3.0/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/media-video/pipewire-0.3.0/temp/environment'. * Working directory: '/var/tmp/portage/media-video/pipewire-0.3.0/work/pipewire-0.3.0' * S: '/var/tmp/portage/media-video/pipewire-0.3.0/work/pipewire-0.3.0' Reproducible: Always
Missing dependency?? This isn't even packaged in gentoo.git.
I presume there should be a way to disable that feature before compiling. As of right now, that error is displayed when trying to upgrade from pipewire-0.2.0 to 0.3.0.
The source shows that the "vulkan" option passed to meson defaults to "true". Should be simple enough to resolve this. Sorry about the misnomer of this bug.
The specific code (config option) I was talking about is at https://github.com/PipeWire/pipewire/blob/master/meson_options.txt#L101 option('vulkan', description: 'Enable vulkan spa plugin integration', type: 'boolean', value: true) Although, maybe it's not a misnomer, since the error indicates that it's a run-time dep :p
Created attachment 615436 [details, diff] pipewire-0.3.0-vulkan.patch
I've tested the patch; works for me.
Huh, apparently all my machines have Vulkan installed at this point. I added a USE-flag for it, and put dev-util/vulkan-headers as a dep on that flag, as that's what I assume that what's being looked for in compiling the SPA plugin. I'll have another look when I'm at a proper machine, but hopefully that should be enough for fixing this issue.
Actually, with a bit of testing and some SSH, it turns out you need both the loader and the headers for Vulkan support. Updated the ebuild, should be correct now. Might need a redo of flags to separate SPA and lib features, but I'm definitely not awake enough for a few more days to reason about that.