[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFC] Embed the mesa version in the library/binary name



On Aug 14, 2015 6:21 PM, "Emil Velikov" <emil.l.velikov@gmail.com> wrote:
>
> Hello all,
Hi,
>
> My name is Emil and I'm the person breaking^w fixing mesa's build
> amongst others.
Yes, we know :D
>
> A while back I had this idea of renaming the libraries provided by
> mesa to include the actual version number. Prior to doing anything
> "crazy" I've decided to seek your feedback.
>
>
> * What
> The idea is to rename (ideally) all of the versioned libraries.
> Unversioned ones such as radeonsi_dri.so will remain as is.
>
> Note: the soname and symlinks will stay to avoid breaking compatibility.
>
>
> * How
> While I haven't fully decided on the exact approach I'm thinking of
> something like:
> libGL.so.1.0.0 -> libGL.so.11.0 or libGL.so.110.1 or libGL.so.11.01
I'd like to see 11.0 for 11.0, 11.1 for 11.1 and etc.
>
> Other suggestions and ideas are welcome but please keep the version to X.Y
>
>
> * Why
> A number of reasons:
> - The binary driver by Nvidia has been using this approach for years.
> - It provides quick and easy feedback in traces
> - In most cases, one can easily establish if the distro provided
> library is overwritten.
> - Allows multiple binaries to coexist, making the dynamic switching
> between libGL.so.110.1, libGL.so.11.2.0 (mesa), libGL.so.352.14
> (nvidia) libGL.so.XX.Y (another vendor) a little bit easier.
> - OpenBSD, Solaris(?) use sunos 4 style versioning -> .so.major.minor
>
>
> How does this sound, do you foresee any pros/cons with the above
> proposal ? Any and all input is greatly appreciated, but please try to
> keep your replies technical and constructive.
I'm fully agree with proposal, but one question. How much libs/programs links against libGL or other libs? I mean how much programs we will rebuild every release?
>
> If there are any concerns wrt the required updates (of the
> build/packaging recipes) I'm willing to help out.
>
>
> As I'm not sure how many of you follow mesa-dev, would you be OK if I
> CC you in distro related~ish topics.
> Some (not so crazy) examples:
> - libEGL.so has additional dependency (via libdl) of X
> - OpenCL only works with render node devices, kernel vY or later is required
> - Mesa's new library libfoo.so should be shipped with libbar.so
I would be happy to be CCed.
>
>
> Thanks
> Emil


Reply to: