Hi,

I'm in the process of adding libtool (and eventually automake) to Wine
(http://www.winehq.com), and have a few questions about cross-platform
support for a few important features that Wine needs or may need in the
near future.

First, Wine makes heavy use of convenience .o files, similar to
convenience libraries, to gather all the single-file .o's in a directory
into a single .o with 'ld -r'.  However, I can't get libtool to link it
properly.  It seems to unconditionally convert .lo to .o, which fails if
I use AC_DISABLE_STATIC.  And it should!  The composite .lo is later
linked into a .so, which means it should use the .lo, not the .o.  For
now, I run these commands without libtool.  Here's what I get _with_
libtool:

 /bin/sh ../libtool --mode=link ld -r  generic.lo interface.lo ncurses.lo
 tty.lo xterm.lo      -o console.lo
 /usr/bin/ld -r -o console.o  generic.o interface.o ncurses.o tty.o
 xterm.o  
 /usr/bin/ld: cannot open generic.o: No such file or directory
 make: *** [console.lo] Error 1

A related concern is the .la -> .so transition, which requires the
$whole_archive_flag_spec variable.  I noticed that Linux's
--whole-archive and Solaris' -z allextract exist in libtool.  How do
other platforms fare with .a -> .so linking?  I'd prefer to use .la
archives, rather than the .lo ones mentioned above, but if this will
paint us into a corner with future platforms, I suppose we'll have to
stick with .o -> .so instead.  It seems this will cause problems with
automake down the line, so I'd prefer the .la solution.  How does this
sit with libtool and wide platform coverage?

A couple future extensions Wine may (or may not) need eventually are
support for -Bsymbolic, and linker scripts.  As I understand it,
-Bsymbolic is GNU-specific, and the option has different names on other
platforms.  Is this a good candidate for libtool support?  How would
libtool handle -Bsymbolic?  Or would we have to handle it ourselves, in
an autoconf check?

And finally, linker scripts.  I don't know much about them myself, nor
how they work.  Do they have anything to do with libtool?  Anything we
should be aware of before trying to mix libtool with our own linker
scripts?

Thanks a lot!  I appreciate the tool, and use it wherever I can.

John

-- 
[EMAIL PROTECTED]                                http://www.gnome.org
[EMAIL PROTECTED]                      http://www.worldforge.org

Reply via email to