rmw implementations are just regular packages in general. You just need to install the other rmw implementation’s packages before you build. We only include the default one by default becaue that saves, build time, space, and avoids confusion for the simple cases.
@nuclearsandwich preciently opened a PR with more information on variants which will answer most of your questions about making your own.