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? > os.unlink(master) > > > -- > 2.15.0 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev