gcc47: Update base compiler to from version 4.7.2 to 4.7.3 This is a bug fix release. The official change page is http://gcc.gnu.org/gcc-4.7/changes.html According to it, 119 bugs have been resolved since version 4.7.2 was released although many of them are surely not applicable for DragonFly. The fixes include 3 top priority bug reports and 27 second-priority bug reports.
gcc4X: rework some makefiles These are various tweaks to improve compatibility between legacy make and bmake. The biggest change was moving gnu/usr.bin dependencies outside to Makefile.inc1 as part of _startup_lib* rather than fudge it with .PHONY targets. This kludge was causing some issues, as well as the double .USE trick.
libstdc++47: Rework to prevent regeneration during install The installincludes target regenerated files such as c++config.h during the install phase. It may be a minor bug as "bits/c++config.h:" would trigger it but "c++config.h:" without the subdirectory wouldn't. In any case, generating it and two other headers to the local working bits directory wasn't necessary as installincludes target installs them in an accessible location. Reworking the makefiles prevents a write operation during installworld. Reported-by: dillon
libstdc++47: fix wrong vec.o inclusion The vec.cc file never got compiled for libstdc++. The gcc/vec.c object file was getting included into the library instead. This change effectively renames vec.cc to avoid name clashes. This also allows gcc47 to completely build world.
libstdc++47: Fix c++config.h race With high job numbers, sometimes c++config.h would get included before it finished getting generated. Solve this race by using "depend all" which should ensure c++config.h gets generated before anything else in libstdc++ starts to build.