On Sun, Nov 20, 2005 at 12:25:19AM -0500, Brad wrote:
> On Sat, Nov 19, 2005 at 09:10:33PM -0800, Jacob Meuser wrote:
> > On Sat, Nov 19, 2005 at 09:12:36PM -0500, Brad wrote:
> > > On Thu, Nov 17, 2005 at 08:01:11PM -0800, Marc Matteo wrote:
> > > > 
> > > > On Nov 17, 2005, at 12:12 PM, Ralf Wildenhues wrote:
> > > > 
> > > > >Could you point me to discussion about this decision (so I don't write
> > > > >about stuff already beaten to death here)?
> > > > 
> > > > In OpenBSD (at least) the library name that matters is the stuff  
> > > > between the "lib" and the ".so" so libfoo.so.4.0 and libfoo-1.8.so. 
> > > > 4.0 are two distinctly different libraries.  Symlinking them is stupid.
> > > > 
> > > > So whatever the library name is supposed to be, either -lfoo or - 
> > > > lfoo-1.8 is up to the software author, most here roll their eyes at  
> > > > versioned libnames, but we accept them... just don't symlink them.
> > > > 
> > > > Marc
> > >  
> > > Exactly, which means not removing the ability to create shared libs with 
> > > the
> > > -release tag. This is a very bad idea. Just remove the symlinking.
> > 
> > I strongly disagree.
> > 
> > for example, we'd get _only_ libldap-2.3.so.8.1.  then we'd have to
> > change every port with -lldap to -lldap-2.3.
> > 
> > -- 
> > <[EMAIL PROTECTED]>
> 
> Ports should already do the right thing with pkgconfig and the other 
> mechanisms.
> If not then they need to be fixed. Removing -release support from libtool is 
> not
> happening.

using databases/openldap again as an example, this package has no
pkg-config file, no sort of openldap-config script, and no
openldap.m4 autoconf macros.

so we would have to manually patch _everything_ that uses -lldap,
30+ ports.

and with the multimedia/mjpegtools update I have,
$ pkg-config mjpegtools --libs
-L/usr/local/lib -lmjpegutils
$ 

but I have only libmjpegutils-1.8.so.0.0

I think this would be very common because of the comment that gets
put into libtool just above the library_names_spec line:

<<<
# List of archive names.  First name is the real one, the rest are links.
# The last name is the one that the linker finds with -lNAME.
>>>

so the -release flag doesn't effectively create "release" named
libraries anyway, since libtool will always create a symlink without
the release part to the "release" library.

I can see the value in having, say libfoo-1.0.so... and
libfoo-2.0.so..., you may want to have both installed, for
example.  but this is not possible if both are trying to
install libfoo.so... as well, which is what libtool would do.

the ports that do effectively have release named libraries, like
most of the gtk/gnome stuff, do not use the -release flag to build
the library names.

I built over 1000 package with the patch I proposed, including large
chunks of the gnome stuff that now does USE_LIBTOOL.  only openldap
needed to be changed, because, quite frankly, the -release tag
has already been removed from most ports that use it ... i.e.
the result is the same as the way it is now, it just changes where
and how it is done.

-- 
<[EMAIL PROTECTED]>

Reply via email to