On Fri, 2018-12-21 at 15:58:52 +0100, Steinar H. Gunderson wrote: > On Fri, Dec 21, 2018 at 03:46:29PM +0100, Guillem Jover wrote: > > I see that the ancillary data files are stored under an unversioned > > directory. Depending on whether these can and do change every time a > > SOVERSION is bumped, the solutions would be either to split them into > > (say) a new libmovit-data binary package, or to keep them in the > > shared library package but under a version pathname such as f.ex. > > «/usr/share/movitN/» for libmovit.so.N. > > The first solution won't fly; the shaders are part of the source code > and not version-independent.
Ah, ok. > Having /usr/share/movitN may work, but would require patching. Also note that > this path is built into every binary depending on libmovit; it is not part of > the .so (it comes from the pkg-config file). But it's something that seems worth fixing upstream anyway for the benefit other distributions. Also I don't see any problem with the path being cooked into the pkg-config file, if a package needs to be rebuilt against a new SONAME then it would get at the same time a bumper shaders dir path. That last sentence of yours read to me as if this was a problem, so maybe you had something else in mind? > Longer-term, it would probably be nice to just build the shaders into the .so, > with loose files just used for development. But that requires changes > upstream, > which I doubt we'll be doing before buster freeze -- not the least because it > would likely require yet another ABI (or possibly even API) break. Ah, right that's another option, I guess the main advantage might be that it makes linking against the library easier. OTOH I could also see perhaps hardcoding the shaders path inside the .so as another possibility? Thanks, Guillem

