Skip to content

module-rt: support building without D-Bus/RTKit

Théo Lebrun requested to merge tleb/pipewire:module-rt-no-rtkit into master

This merge request's goal is to provide libpipewire-module-rt even when D-Bus is not available. Previously, the module would not have been built because it depended on D-Bus to provide RTKit fallback.

The approach taken is to duplicate the original module-rt.c into a clone that does not support RTKit and that gets compiled when D-Bus is not available at comp time. See 6d7c36e9 for a diff. The alternative would have been big if directives which would have made a mess everywhere if (impl->use_rtkit) {} else {} appears, which is everywhere.

I was surprised to see pthread_t be cast to a pointer as it might be a struct. I suppose that's true in no common implementation.

Please give opinions on the approach. Tested on an embedded platform, works as expected.

Edited by Théo Lebrun

Merge request reports