From owner-freebsd-x11@freebsd.org Fri Aug 14 19:56:41 2015 Return-Path: Delivered-To: freebsd-x11@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0988E9BA4C2 for ; Fri, 14 Aug 2015 19:56:41 +0000 (UTC) (envelope-from rclark@redhat.com) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id DE3991C33 for ; Fri, 14 Aug 2015 19:56:40 +0000 (UTC) (envelope-from rclark@redhat.com) Received: by mailman.ysv.freebsd.org (Postfix) id DD3C79BA4C1; Fri, 14 Aug 2015 19:56:40 +0000 (UTC) Delivered-To: x11@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C2F689BA4C0 for ; Fri, 14 Aug 2015 19:56:40 +0000 (UTC) (envelope-from rclark@redhat.com) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A21C11C31 for ; Fri, 14 Aug 2015 19:56:40 +0000 (UTC) (envelope-from rclark@redhat.com) Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (Postfix) with ESMTPS id 5C92B36AA28; Fri, 14 Aug 2015 19:47:58 +0000 (UTC) Received: from mail.corp.redhat.com (unused [10.10.50.236] (may be forged)) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t7EJlrgS002428 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 14 Aug 2015 15:47:55 -0400 Date: Fri, 14 Aug 2015 15:47:53 -0400 From: Rob Clark To: Igor Gnatenko Cc: Emil Velikov , riastradh@netbsd.org, Stefan Dirsch , Andreas Radke , Jan de Groot , Jonathan Gray , =?utf-8?B?RnJhbsOnb2lz?= Tigeot , Matthew Green , =?utf-8?Q?Jean-S=C3=A9bastien_P=C3=A9dron?= , mesa@packages.debian.org, x11@freebsd.org, mesa-owner , ajax@redhat.com Subject: Re: [RFC] Embed the mesa version in the library/binary name Message-ID: <20150814194753.GC19762@mail.corp.redhat.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-Scanned-By: MIMEDefang 2.68 on 10.5.11.26 X-Mailman-Approved-At: Fri, 14 Aug 2015 20:30:31 +0000 X-BeenThere: freebsd-x11@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: X11 on FreeBSD -- maintaining and support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Aug 2015 19:56:41 -0000 On Aug 14 2015 or thereabouts, Igor Gnatenko wrote: > On Aug 14, 2015 6:21 PM, "Emil Velikov" 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. Adam probably knows better, but I thought libGL.so/.1/.1.2.0 as part of the linux/unix GL ABI? So not really sure that it is something we can actually change. That said, with the libOpenGL stuff we could probably do something better. BR, -R > > > > 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