Hello, Lassi!

> (Apropos: autoconf should be able to keep the LIBS and LDFLAGS for
> different languages separate.  I am not sure it should do it by default,
> but it should be possible.)

I like this idea, but I don't see how to implement it without breaking
backward compatability. It's a good topic for another thread, but please
change the subject.

>   - In 2.13 (2.12?), AC_PROG_CXXCPP had a bug in that if `$CXXCPP'
>     was set, it got nuked instead of getting used.  This happens
>     because it assigns value to `CXXCPP' from `ac_cv_prog_CXXCPP',
>     but only sets the latter if the former was empty...

This has been fixed.

> ...> cl -E foo.c > nul
> Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for
> 80x86
> Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
> 
> foo.c

So, it it M$VC that prints the file name to stderr! We shouldn't need to
filter it out - see below why.

> foo.c(1) : fatal error C1083: Cannot open include file: 'nonexistent.h':
> No such file or directory
> ...> echo %errorlevel%
> 2

Yes! Thank you!
The output of cl doesn't need to be checked - the exit status should.

> ...> cl -E -TP foo.cc >nul
> Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for
> 80x86
> Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
> 
> foo.cc
> foo.cc(1) : fatal error C1083: Cannot open include file:
> 'nonexistent.h': No such file or directory
> ...> echo %errorlevel%
> 2

The same for C++. Time to remove two (!!!) workaronds for the same
problem. The patch will go to [EMAIL PROTECTED]

>   c++ -o foo foo.o -L/some/where -lbar
> must become:
>   cl -c -Tpfoo.cxx -Fofoo.obj
>   cl -Fefoo.exe foo.obj bar.lib -link -LIBPATH:\some\where

This is too dirty. Only a wrapper can help. Make sure to preserve
errorlevel.

Regards,
Pavel Roskin

Reply via email to