libera/#eudev/ Monday, 2022-01-03

sam_wondering about people's opinions here on static linking with eudev's libudev. systemd's udev doesn't support it and they've been quite adamant about not renaming symbols-very-very-likely to conflict with applications.08:22
sam_https://github.com/systemd/systemd/pull/20621 e.g. had "version" which clashed with lvm208:22
sam_the problem being static linking has no namespaces so even private symbols can clash08:22
sam_the workaround is generally to rename the symbols in one of the things, libudev, or the other thing08:22
sam_is eudev open to patches for stuff like that? (e.g. if we had "version", renaming it to "eu_version" or something, if that conflict happened)08:23
sam_because i'm not convinced that going to get various upstreams to take it is going to go far, although i can try that too, it's never been very successful08:23
sam_lennart's view in that link i gave was basically "fix static linking in general if you care about it"08:24
sam_(more recent example: https://bugs.gentoo.org/830485)08:26
sam_mdadm and libudev both have a 'in_initrd'08:27
Arsenrealistically that should be a static method09:54
ArsenI somewhat agree with lennart here though09:54
Arsenthere's no visibility in static libs09:54
Arsenit's nontrivial to fix it unless you use c++09:55
Arsen(namespace)09:55
sam_i mean i agree too in a sense10:06
sam_i just don't think it's realistic to ask someone who wants this to work to "just fix it"10:06
Arsensure, that's a bad approach :^)10:07
sam_Arsen: but for the purposes of pragmatism10:12
sam_while it sucks, you'd be fine with renaming symbols if no better option for $case?10:12
sam_(I'm not going to default to it if i can help it, it might be that an upstream is nice and I can persuade them, it of course depends)10:12
sam_also depends on how generic symbol is10:12
sam_i'd do the work in such cases, i just want to know if it's an approach that's acceptable10:14
Marquelsince i can see the benefits of static linking and do understand the problem (as well as lennart's attitude towards it), i'd accept it. though i'm just a user, not a dev ;-)16:45
genr8eoflwe should prioritize a stable API over changing symbols for other people, if something has to be changed, bump the minor rev18:14
genr8eoflalso id suggest keeping a master list of changes that diverge away from systemd18:16
genr8eoflforking a project and then going nuts changing everything because you suddenly can is a great way for it to die in 2 years18:23
bb|hcbHappy new year!18:34

Generated by irclog2html.py 2.17.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!