HAVE_GCC3. if this is set, we also set USE_TOOLS_TOOLCHAIN=no. change
the definition of the former to be restricted to whether tools/toolchain
is used or not.
* use ${G_HCONFIG_H} instead of hconfig.h as a dependency.
* hconfig.h: auto-build.h dependency is bogus, remove.
* misc cleanup of ".c depends on .h" -> ".o depends on .h"
* options.h was missing from CLEANFILES.
With these changes running make in this directory doesn't do a
*complete* rebuild anymore. Still not foolproof, because gen* host
tools do not overwrite generated files that are not changed, so we
really need to use stamp file style dependencies for those, like gcc
makefile does.
Ok by Matthew Green <mrg@netbsd>.
* DPSRCS contains extra dependencies, but is _NOT_ added to CLEANFILES.
This is a change of behaviour. If a Makefile wants the clean semantics
it must specifically append to CLEANFILES.
Resolves PR toolchain/5204.
* To recap: .d (depend) files are generated for all files in SRCS and DPSRCS
that have a suffix of: .c .m .s .S .C .cc .cpp .cxx
* If YHEADER is set, automatically add the .y->.h to DPSRCS & CLEANFILES
* Ensure that ${OBJS} ${POBJS} ${LOBJS} ${SOBJS} *.d depend upon ${DPSRCS}
* Deprecate the (short lived) DEPENDSRCS
Update the various Makefiles to these new semantics; generally either
adding to CLEANFILES (because DPSRCS doesn't do that anymore), or replacing
specific .o dependencies with DPSRCS entries.
Tested with "make -j 8 distribution" and "make distribution".
XXX: sun2 seems to be currently generally busted but most of the world
builds. of course it is untested..
XXX: sh3* and -pg goes BOOM with gcc3.3... it generates code that uses
the same labels twice... need to set NOPROFILE for now.
works. sparc & i386 support is included here. libstdc++-v3 does not yet
properly build for some strange reasons (that may be due to broken netbsd
header files, it's not yet clear) but i have been able to compile, link and
run both i386 & sparc hello.c.