Subject: EGCS stuff for those working on it now
To: None <mrg@NetBSD.ORG>
From: Todd Vierling <tv@NetBSD.ORG>
List: tech-toolchain
Date: 04/01/1998 16:16:33
I just commited another round of changes that brings egcs to a fully clean
build, minus f771, with no clobbered files.  Those of you working on EGCS
now will need to do a few things to make sure you get a clean build too: 

- Do a 'cvs update' in src/gnu/dist/gcc.  Some files should be deleted.
  If you get files which conflict because they have been deleted,
  delete them manually and re-run the update.

- Remove or rebuild your .depend files.  The existing dependency files
  have references to the deleted files in them, and will attempt to
  rebuild those deleted files.

- Build egcs with EGCS_BOOTSTRAP=1 if your current compiler is not gcc
  version 2.8 or later.  This will create a libgcc.a that is complete
  enough for C and ObjC, but will have to be rebuilt without this option
  using egcs if you want C++ support.  (gcc 2.7 is missing some builtins
  that egcs/gcc 2.8 needs for C++.)

- If libgcc is compiled without EGCS_BOOTSTRAP, it will try to install
  includes into ${DESTDIR}/usr/include/g++: that's actually <bsd.inc.mk>
  updating your include files automatically because they aren't the same as
  the ones being used to build libgcc.  Whether this behavior is "right" is
  outside of the scope of egcs' build process.  These files are part of
  libgcc, not libstdc++, because they deal with new, delete, and
  exceptions.

What is interesting to note is that the Makefile work done by Matt was very
close to flawless; it was the hidden annoyance of the .depend files that
caused the clobbering nightmare and my frobbed attempt at fixing them
through .PATH: (before discovering the real cause).  I think it was lack of
sleep last night that made me miss the obvious.

I'm going to try building the stdc++ library and f771 now.  Funfun.

-- 
-- Todd Vierling (Personal tv@pobox.com; Bus. todd_vierling@xn.xerox.com)