On 07/23/2010 06:12 AM, Charles Wilson wrote:
On 7/22/2010 2:36 PM, Paolo Bonzini wrote:
This patch series is on top of 04329d83555b5f8d2fd02428418a79ea392b2d91.
The basic idea is to look for -L= and -R= to expand the sysroot, and for
the sysroot to remove it in .la files.
Some missing testcases are hinted at in sysroot.at. I think they would
already work with the patch as is. However, I haven't retested this at
all, so I trust my old runs from mid 2009 which were done with Fedora 12
and its mingw cross-compilation environment.
Sorry for the delay.
Thanks for the patch. I haven't been able to test it yet, but looking
through it, it appears that the 'use case' is:
on $build, when building a libtoolized project, you configure as:
path/to/configure --build=$build --host=$host \
--prefix=$sysroot_of_compiler$prefix_for_host \
...
... --with-sysroot
and then compile and install as usual (somehow arranging that -sysroot
is passed to libtool, whenever appropriate). Is that correct?
There is no -sysroot option. Libtool gets its $lt_sysroot from
`i686-pc-mingw32-gcc --print-sysroot`.
The reason I ask, is it sure would be nice if one could instead do this:
path/to/configure --build=$build --host=$host \
--prefix=$prefix_for_host \
...
and the compile as usual -- but when installing, do
make install prefix=$sysroot_of_compiler$prefix_for_host
Yes, or the same using DESTDIR.
This way, there is little danger that the value of $sysroot_of_compiler
would get hardcoded into any of the binaries, especially as they may one
day be deployed to $host where they will live in $prefix_for_host,
without a $sysroot_of_compiler in sight.
Agreed. I don't have a good solution, and this is part of why I hadn't
posted the patches. In theory if you "make" with a prefix it could work.
For Windows in particular, the complicated part is getting libtool to
see the .dll files because otherwise it'll build only static libraries.
Paolo