But many others followed, like libselinux: https://github.com/systemd/systemd/pull/19997
libqrencode: https://github.com/systemd/systemd/pull/16145
p11kit: https://github.com/systemd/systemd/pull/25771
tpm2-util: https://github.com/systemd/systemd/pull/28333
libiptc: https://github.com/systemd/systemd/pull/29836
libkmod: https://github.com/systemd/systemd/pull/31131
Exactly during the development of the libkmod PR, someone noted that libxz could be lazily loaded too: https://github.com/systemd/systemd/pull/31131#issuecomment-1...
And so I proposed myself to to the job, nothing less, nothing more.
If you look at the code of the other PRs, you see that they are very very similar, there are also macros to easy this task, like DLSYM_FUNCTION()