autoconf
[Top][All Lists]
Advanced

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

AM_PROG_CC_C_O (was Re: AC_PROG_CC_O and Re: wierd test inconfigure on b


From: Derek Robert Price
Subject: AM_PROG_CC_C_O (was Re: AC_PROG_CC_O and Re: wierd test inconfigure on bug-cvs)
Date: Thu, 26 Jun 2003 11:13:25 -0400
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02

Hey Jim, sorry, I just looked this up and it appears that I reported on the wrong macro (kinda), to the wrong list (kinda), and that there was a reason for it after all.

Jim Meyering wrote:

I think it was designed to be used mainly in GNU Make's configure.ac file.
From the description, you get a hint of that:

 This macro was created for @acronym{GNU} Make to choose the
 default C compilation rule.

If both $CC and cc accept simultaneous use of -c and -o,
then GNU make enables that default rule.  Otherwise, it
uses the more portable (but less useful) `-c'-only rule.

It looks like CVS doesn't use `NO_MINUS_C_MINUS_O',
so I suggest you avoid using AC_PROG_CC_C_O.

Does anyone know of an application other than GNU make for
which AC_PROG_CC_C_O is useful?


It appears that I added the call to AM_PROG_CC_C_O (which calls AC_PROG_CC_C_O) myself back in July of 2001 on Tom Tromey's advice to allow CVS to compile on SCO. We even encountered a secondary bug in the `compile' script that Tom fixed for us. The thread is here: <http://mail.gnu.org/archive/html/bug-cvs/2001-06/msg00181.html>. There are many messages in the thread that gnu.org's indexer doesn't seem to be correlating correctly, but the subject line is easy to spot in the Date Index (it's the longest one in that month or two) if you want to follow it.

Anyhow, it sounds like AM_PROG_CC_C_O is rewriting $CC on platforms that don't handle `cc -c -o' correctly, and is therefore useful to CVS.


How about an application that'd suffer if AC_PROG_CC_C_O
(or rather, a macro with a new name) checked only $CC?
If not, then we should consider deprecating it.

It sounds like CVS would be happy if AC_PROG_CC_C_O (& therefore AM_PROG_CC_C_O) only checked $CC. AM_PROG_CC_C_O always uses the (composite) result to decide whether to set $CC to call the original $CC through the `compile' script or not. It even seems to me that using the composite result may actually be wrong here, since if $CC works with -c -o and cc does not, then Automake decides to use the compile script when it shouldn't, TMK.

Since it sounds like I can't remove the macro from CVS's configure.in yet, the best temporary solution I can give to the CVS user on Solaris (Ed) is to put a cc in his path that always returns a failure code, to fix the license server, or to remove the call to AM_PROG_CC_C_O in his local configure.in and rebuild configure.

Thanks in advance for any further help!

Derek

--
               *8^)

Email: address@hidden

Get CVS support at <http://ximbiot.com>!
--
I saw nothing unusual in the teacher's lounge.
I saw nothing unusual in the teacher's lounge.
I saw nothing unusual in the teacher's lounge...

         - Bart Simpson on chalkboard, _The Simpsons_







reply via email to

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