libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Extend libtool dll namespaces for mingw-w64


From: Matěj Týč
Subject: Re: Extend libtool dll namespaces for mingw-w64
Date: Wed, 27 Jan 2010 22:38:37 +0100

On Wed, 2010-01-27 at 22:19 +0100, Peter Rosin wrote:
> Den 2010-01-27 20:54 skrev Matěj Týč:
> > On Tue, 2010-01-26 at 23:26 +0800, JonY wrote:
> > ...
> >> I suggest the following naming scheme.
> >>
> >> mingw.org: lib<name>-<major>.dll (unchanged)
> >> Cygwin:            cyg<name>-<major>.dll (unchanged)
> >> mingw-w64(64):     lib64<name>-<major>.dll
> >> mingw-w64(32):     lib32<name>-<major>.dll
> >>
> >> libtool should also check if GCC "-m32" or "-m64" is used, and select
> >> the proper namespace accordingly (mingw-w64 GCC can do multilib).
> >>
> >> Comments?
> >>
> > 
> > AFAIK if you use automake, you have to have something like the following
> > line in Makefile.am:
> > lib_LTLIBRARIES = libfoo.la
> > This means that the 'lib' prefix doesn't actually come from mingw, but
> > from your automake setup, right?
> > 
> > ...
> 
> You are mistaken. The lib prefix on the dll files is coming from
> the libtool variable $libname_spec. It is typically set to something
> like this:
> 
> # Format of library name prefix.
> libname_spec="lib\$name"
> 
> Which is then warped on Cygwin by another libtool variable, namely
> $soname_spec which has a sed -e s/^lib/cyg/ in it.
> 
> A similar tweak is needed to implement this for mingw-w64.
> 
> Cheers,
> Peter
> 

Wow, this is interesting.
I remember that one guy asked about the dll prefix and he has been
advised to strip the prefix from the library name and add the '-module'
flag to libtool in order to silence complaints.
Actually, here it is:
http://lists.gnu.org/archive/html/libtool/2007-04/msg00022.html
http://lists.gnu.org/archive/html/libtool/2007-05/msg00001.html

So how it is? Is there a another, more correct solution to Bob's
challenge?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]