Bug 274466 - multimedia/pipewire: doesn't build without JACK
Summary: multimedia/pipewire: doesn't build without JACK
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Gleb Popov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-10-14 18:22 UTC by Anton Saietskii
Modified: 2023-10-16 15:41 UTC (History)
0 users

See Also:
arrowd: maintainer-feedback+


Attachments
poudriere build log (27.03 KB, text/plain)
2023-10-14 18:22 UTC, Anton Saietskii
no flags Details
"poudriere options -s multimedia/pipewire" output (28.14 KB, text/plain)
2023-10-16 12:18 UTC, Anton Saietskii
no flags Details
quick and dirty patch (849 bytes, patch)
2023-10-16 12:26 UTC, Anton Saietskii
no flags Details | Diff
poudriere build log with dirty patch applied (25.98 KB, text/plain)
2023-10-16 12:31 UTC, Anton Saietskii
no flags Details
poudriere build log with dirty patch applied (21.72 KB, application/x-xz)
2023-10-16 12:35 UTC, Anton Saietskii
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Saietskii 2023-10-14 18:22:57 UTC
Created attachment 245618 [details]
poudriere build log

Run-time dependency readline found: YES 8.2
Run-time dependency opus found: NO (tried pkgconfig)

meson.build:299:11: ERROR: Dependency "opus" not found, tried pkgconfig

Perhaps opus should be specifically disabled or moved from PIPEWIRE_JACK_LIB_DEPENDS to LIB_DEPENDS?
Comment 1 Gleb Popov freebsd_committer freebsd_triage 2023-10-14 18:42:38 UTC
It does build with all options disabled, so there is some other option that requires opus. Can you post an output of "make showconfig"?
Comment 2 Anton Saietskii 2023-10-14 18:52:03 UTC
(In reply to Gleb Popov from comment #1)

Should be in poudriere build log unless something went wrong and file got truncated (hope not).
Comment 3 Anton Saietskii 2023-10-14 19:01:58 UTC
I'm almost sure pipewire builds with everything disabled while one of its unconditional depends pulls opus, e.g. libsndfile can do that.
Comment 4 Gleb Popov freebsd_committer freebsd_triage 2023-10-16 06:43:16 UTC
Strange, I can't reproduce this problem. Maybe you have some non-default options set for pipewire dependencies too?
Comment 5 Anton Saietskii 2023-10-16 12:18:26 UTC
Created attachment 245673 [details]
"poudriere options -s multimedia/pipewire" output

(In reply to Gleb Popov from comment #4)

> Strange, I can't reproduce this problem.
Most likely due to comment #3 -- issue is just _masked_ on your machine.

>Maybe you have some non-default options set for pipewire dependencies too?
Of course, actually almost everything is with non-default options (attached). But IMO it doesn't really matter because pipewire configure script explicitly checks for opus even when JACK option is off. That means opus should be an unconditional (unless we can explicitly disable it) and direct dependency, isn't it? We shouldn't rely on "some dependency of pipewire dependencies will pull something we need directly"...
Additionaly, googling "pipewire opus" doesn't show anything related to jack. Instead, opus is listed as a Bluetooth-related component.
Comment 6 Anton Saietskii 2023-10-16 12:26:23 UTC
Created attachment 245674 [details]
quick and dirty patch

Here's what I did to make the build start (running currently).
Comment 7 Anton Saietskii 2023-10-16 12:31:46 UTC
Created attachment 245675 [details]
poudriere build log with dirty patch applied

With that dirty patch build is successful.
Comment 8 Anton Saietskii 2023-10-16 12:35:07 UTC
Created attachment 245676 [details]
poudriere build log with dirty patch applied

Wrong log attached, here's correct one.
Comment 9 commit-hook freebsd_committer freebsd_triage 2023-10-16 15:40:11 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0bd7731620393d0f5d583a1432e3a3b741c2c931

commit 0bd7731620393d0f5d583a1432e3a3b741c2c931
Author:     Gleb Popov <arrowd@FreeBSD.org>
AuthorDate: 2023-10-16 15:38:45 +0000
Commit:     Gleb Popov <arrowd@FreeBSD.org>
CommitDate: 2023-10-16 15:39:14 +0000

    multimedia/pipewire: Make opus a non-optional dependency.

    PR:             274466

 multimedia/pipewire/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 10 Gleb Popov freebsd_committer freebsd_triage 2023-10-16 15:41:11 UTC
Oh, I missed your patch that you attached here, sorry.

Anyways, this should be fixed now.