Hi! MHD maintainer here. I'm not sure I understand how adding a new symbol and merely deprecating an old one creates a "dependency hell". You're free to continue to use the old symbol for now, and we have no plans to remove it particularly soon. We are still binary backwards-compatible, as indicated in the library's version number.
If systemd devs want to use the new variant where possible and still be sure to be fine with future versions that may remove the deprecated symbol, their code should just use the new variant conditionally using #if MHD_VERSION >= 0x94400. Note that the problem is not a glibc LFS problem. The issue is that some people package binaries without LFS support on platforms that do support it. Then those C programs have a different understanding of what "off_t" is, which means having an "off_t" in a function argument is a bad idea when calling across binaries with different interpretations of LFS support. Regardless, unless I'm not getting something, systemd on the Debian side probably should do nothing (linking against deprecated symbols is not a crime, just make sure you do enable LFS as well ;-)), and the systemd devs may want to plan to eventually require MHD >= 0.9.44. My 2 cents Happy hacking! Christian

