libtool-patches
[Top][All Lists]
Advanced

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

RE: MSYS+MSVC for libtool branch-2-0, take 7


From: Peter Ekberg
Subject: RE: MSYS+MSVC for libtool branch-2-0, take 7
Date: Mon, 15 Aug 2005 12:28:14 +0200

Ralf Wildenhues wrote:
> * Peter Ekberg wrote on Thu, Aug 11, 2005 at 11:38:59AM CEST:
> > 
> > I ported the patch over to HEAD (took some work, but not too
> > difficult, the worst incompatibility was that the
> > $file_list_spec feature have been added for AIX which I hooked
> > into instead of hardcoding approximately the same thing for
> > MSVC)
> 
> OK.  I'm planning on rewriting that part eventually anyway.
> 
> > Anyway, here's testsuite.log and I configured with:
> > ../configure CC=cl CFLAGS=-MD CXX=cl CXXFLAGS=-MD STRIP=: RANLIB=:
> > F77=no FC=no NM="dumpbin -symbols" AR=lib LD=link
> 
> Good.
> 
> > I also fixed the compile mode to add -TC or -TP for MSVC
> > instead of removing those flags in func_mode_link, which
> > was what you sufggested. But a couple of the tests (14
> > and 15, template.at) still trips on this issue as they
> > use $CXX directly instead of libtool's compile mode...
> 
> Hrmpf.  We can do the -TC/-TP munging inside the libtool script,
> but people expect to be able to use $CXX as done in the tests.
> See, not everybody uses Automake, and these people cannot be 
> expected to use libtool for compilation of code which does not
> end up in a shared library.
> 
> I don't see an easy way out here.  Either these people will just
> have to rename their files *.cpp or use some wrapper for MSVC.  :-/
> 
> I'm hesitant to change the testsuite to use libtool compile mode
> everywhere, exactly so that we catch such issues before bug reports
> reach us.  So, let's change the respective file names.
> 
> For the general case, I'm not certain which way is good:
> Set -TC in CXX, and override CXXLD, or set -TC in per-target CPPFLAGS?
> The latter still won't work for mixed C/C++ code.  In any 
> case, the user
> will have to manually adapt if the package author did not use .cpp.

Well, I didn't know about those tests when I figured fixing it
in the compile mode was the easiest. And since people apparently
also expect to link without libtool (see tests/demo-hardcode.test),
there is as you say no easy way out here. Looks like my first
assessment was correct, -TC/-TP are useless. I suppose one
approach does not contradict the other, we can both add -TC/-TP
in compile mode and zap them in link mode. But, since there is no
perfect solution, I kind of think it should just be required that
sources are named *.cpp if you want to be portable. Wonder if
there is some other braindead C++ compiler that only understands
*.cc or something. That would be ... fun.

You lost me in the last paragraph. What is CXXLD? The linker used
to link C++ stuff? What do you mean by "per-target CPPFLAGS"?
The whole paragraph does not make sence to me, I just don't get
what you are trying to say...

Regarding those tests in the new testsuite, they are using both
the -c and the -o flags, without regard to the outcome of the
_LT_COMPILER_C_O macro. Not that I suffer from this and I guess
you where aware of it, but it is a tiny tiny point in favour
of using the libtool compile mode :-)

> (Note: we need to provide patches for Automake.)

I'm lost there, haven't really looked at perl code in ages, and
my perl knowledge is, err, limited...

> > Also, test 11 (link-order.at) seems to need some -no-undefined
> > flags. I get:
> 
> ACK.
> 
> *snip*
> > There are more similar warnings for other libs in that test.
> 
> OK.  I just realized that stresstest doesn't do half the damage
> that I want it to expose on win32.  Will propose an updated version
> soon, which I expect to break on several platforms.

Noooooo, more work :-)

> Meanwhile, I installed these patches below.  If inherited_flags still
> fails, at least we should now be able to see why.

Thanks!

*snip*




reply via email to

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