On Mon, 04 Sep 2023 at 11:08:01 +0200, John Paul Adrian Glaubitz wrote: > There is currently a circular build-dependency in src:libsdl2 with > src:pipewire which > makes bootstrapping libsdl2 hard. In order to ease the bootstrap, it would be > useful > if the build dependency on libpipewire-0.3-dev could be disabled with a build > profile. > > Could you add a "stage1" or "pkg.libsdl2.nopipewire" build profile to > src:libsdl2?
This wouldn't be a "safe" build profile: the resulting binaries would not be functionally equivalent to binaries of the same name built with no special build profiles. It's OK to have "unsafe" build profiles if there's no alternative, but it seems better to avoid them, because names are interfaces and interfaces are names. I'd prefer to break this circular dependency from the other end. If it's possible to add nocheck and noinsttests profiles to pipewire (a similar arrangement already exists in for example src:dbus), then pipewire would lose its pipewire-tests binary package, which as far as I can tell is the only one that depends on SDL, without affecting the contents of other binary packages. In fact, since the SDL manual test isn't run at build time, only packaged to be run later, probably a noinsttests profile in pipewire would be enough? (That would avoid having to remember how the logical operators for combining build profiles work!) smcv