Date: Fri, 14 Aug 2015 16:21:10 +0100 From: Emil Velikov <emil.l.velikov@gmail.com> To: mesa@packages.debian.org, Jonathan Gray <jsg@jsg.id.au>, x11@FreeBSD.org, =?UTF-8?B?SmVhbi1Tw6liYXN0aWVuIFDDqWRyb24=?= <jean-sebastien.pedron@dumbbell.fr>, =?UTF-8?Q?Fran=C3=A7ois_Tigeot?= <ftigeot@wolfpond.org>, riastradh@netbsd.org, Matthew Green <mrg@NetBSD.org>, Jan de Groot <jgc@archlinux.org>, Andreas Radke <andyrtr@archlinux.org>, Igor Gnatenko <ignatenkobrain@fedoraproject.org>, Stefan Dirsch <sndirsch@suse.de> Subject: [RFC] Embed the mesa version in the library/binary name Message-ID: <CACvgo50jzwFtE-md_nsZSmZJNqgqBsoA72o74x9LfhffYdqm1g@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Hello all, My name is Emil and I'm the person breaking^w fixing mesa's build amongst others. 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 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. 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 Thanks Emil
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACvgo50jzwFtE-md_nsZSmZJNqgqBsoA72o74x9LfhffYdqm1g>