autoconf
[Top][All Lists]
Advanced

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

Re: "has changed since the previous run"


From: DJ Delorie
Subject: Re: "has changed since the previous run"
Date: Wed, 31 Jan 2007 18:58:11 -0500

> I think for 2.60 we took care that AC_CONFIG_SUBDIRS and the like don't
> munge whitespace -- that was a cause for failure.  And some more global
> $as_echo changes in 2.61b (CVS).  But I guess that doesn't apply to GCC
> as it calls the sub-configures manually.

And it's still working on bringing every module up to 2.59 before
moving forward.

> In which cases do you see these, and what's the cause for the changed
> white space?

The latest case I'm seeing is:

configure: loading cache ../.././config.cache
configure: error: `CXXFLAGS' has changed since the previous run:
configure:   former value:  -g -O2  -D_GNU_SOURCE
configure:   current value: -g -O2 -D_GNU_SOURCE

This is in dejagnu in an internal combined tree, but it's been
reported in FSF-land too.  I've already hacked through
CFLAGS_FOR_TARGET and a few others.

The problem is code like this:

GCC_TARGET_TOOL(c++, CXX_FOR_TARGET, CXX,
                [gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `test ! -f 
$$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) 
$$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` 
-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src 
-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs],
                c++)

where the code in `...` may or may not produce output.  If it doesn't,
the result gets two spaces in it.  Consider also:

CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)

If $(SYSROOT_CFLAGS_FOR_TARGET) is empty, you get a trailing space.

Likewise, my current gotcha is from this line in config/mt-gnu:

CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) -D_GNU_SOURCE




reply via email to

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