Re: [Linux-ia64] The 1117 snapshot cpp problem

From: Jim Wilson <wilson_at_cygnus.com>
Date: 2001-02-08 11:20:54
>It is ok if you use "make bootstrap" since $(includedir) passed down
>is ignored during "make bootstrap" in gcc. But the toolchain may not
>be built with "make bootstrap". I believe
>"includedir=$(includedir)" \
>should not be passed to gcc during any build.

I don't like that idea.  It defeats the purpose of having the top level
Makefile, which is to ensure that all tools are compatible with each other.
Binutils for instance uses includedir.  It will install bfd.h there.  So
if binutils uses includedir and gcc does not, then they are no longer
compatible with each other.  binutils will install a header file someplace
where gcc can't find it.

I think this also explains part of the reason why the "Cygnus" tree sets
includedir to $prefix/include.  If you configure a tree setting $prefix, and
then install it, it is wrong to install files into /usr/local/include.
Everything has to be installed underneath $prefix.  This required creating
a new include directory underneath prefix, and making gcc look in it.
Unfortunately, our mistake here was that we replaced /usr/local/include
which other people are using.

This mistake has already been institutionalized by the gcc-2.95 release.
gcc-2.9 supports /usr/local/include.  gcc-2.95 supports $prefix/include.
There are people that want both, so I think we need to support both now.

This requires a bigger change though.  We have to document the new directory,
add support for the new directory to cpp and anyplace else that cares
(protoize?), and fix up the Makefile to pass both directory names on the
compile line for cpp.  This is a big enough change that I was not able to
have it done by yesterday.

Jim
Received on Wed Feb 07 16:17:38 2001

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:01 EST