Quoting Eric Engestrom (2017-11-14 06:47:33) > On Monday, 2017-11-13 17:09:13 -0800, Dylan Baker wrote: > > which is required for the gallium media state trackers. > > --- > > bin/install_megadrivers.py | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > > diff --git a/bin/install_megadrivers.py b/bin/install_megadrivers.py > > index a98d7dd177b..581ff9791e5 100755 > > --- a/bin/install_megadrivers.py > > +++ b/bin/install_megadrivers.py > > @@ -33,6 +33,7 @@ def main(): > > parser.add_argument('megadriver') > > parser.add_argument('libdir') > > parser.add_argument('drivers', nargs='+') > > + parser.add_argument('--so-version', action='append', default=[]) > > args = parser.parse_args() > > > > to = os.path.join(os.environ.get('MESON_INSTALL_DESTDIR_PREFIX'), > > args.libdir) > > @@ -48,6 +49,11 @@ def main(): > > os.unlink(driver) > > print('installing {} to {}'.format(args.megadriver, driver)) > > os.link(master, driver) > > + for v in args.so_version: > > + name = '{}.{}'.format(driver, v) > > + if os.path.exists(name): > > + os.unlink(name) > > + os.symlink(driver, name) > > My understanding is that it should be the other way around: everything > should point to the versioned file. > > Taking libEGL.so for instance, autotools currently install it that way: > /usr/lib/libEGL.so -> libEGL.so.1.0.0 > /usr/lib/libEGL.so.1 -> libEGL.so.1.0.0 > /usr/lib/libEGL.so.1.0.0 > > I think this is so that one can hot-swap libs, for instance creating > .so.1.0.1, then move the symlink to that, and then remove the old > .so.1.0.0 file. Not sure how much it matters, but for consistency > I would keep that scheme. > > By the way, the so-version array should only ever contain > $major.$minor.$patch and $major for the same value of $major, so what > about simply taking that full version as an input and creating the file > with it as the name, then symlink the so_version.split('.')[0] file and > the version-less .so?
I talked with Matt about this yesterday, he was just confused as to why the media drivers create version so's anyway, we don't do that for other driver modules (dri, for example). But I haven't been able to dig back through the git history yet and figure out if it was a mistake to version these in the first place or not. The nvidia blob driver installs (for vdpau): libvdpau_nvidia.so.387.126 libvdpau_nvidia.so.1 libvdpau_nvidia.so I wonder who the expert on these subsystems is? Dylan
signature.asc
Description: signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev