This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: libstdc++ bootstrap failures on sparc-sun-solaris2.8 (analyzed)




--On Tuesday, July 31, 2001 06:31:48 PM -0400 David Edelsohn 
<dje@watson.ibm.com> wrote:

>>>>>> Gabriel Dos Reis writes:
>
> Gabriel> Hmm, I was under the impression that we wanted to fake and copy
> generic Gabriel> std_limits.h, no?   Or am I still being dense?

Benjamin doesn't like this idea, but I'll trot it out again.

I think std_limits.h should be entirely pregenerated, based on the
architecture, and stored in config/cpu or config/os.  (Perhaps only
a small bit needs to be stored there, and the rest can be entirely
generic.  For example, maybe you could just do `#define BITS 32' in
config/cpu.  The details aren't important.)

Then gen-num-limits would never be run during any build of any
kind.  It would only be run to generate a new file, when doing a
new port, and then the output would be stored away.

This would entirely solve this problem.  The alleged portability/elegance
of creating std_limits.h on the fly is a trap.  We are spending way
more time messing with the build machinery than it would take to simply
pregenerate the files and use my plan.  People port to new architectures
only rarely, and they already have to do lots of work; setting a few
values in config/cpu land is hardly a big incremental hit.

Things like autoconf are very useful when you're trying to figure
out something about the host.  They are pretty much useless when
trying to figure out things about the target.  And since you want to
be able to cross-compile, and have things work out the same, the only
thing you can do is pregenerate what you need.

-- 
Mark Mitchell                mark@codesourcery.com
CodeSourcery, LLC            http://www.codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]