Hi, The following tiny patch allows GCC to be built with the "--no-builtin-rules" GNU make flag. It replaces two usages of the automatic variable $* within the body of an explicit rule. Using $* inside the body of an explicit rule should be avoided[0] and, as in this scenario, may break an otherwise fine Makefile under the --no-builtin-rules flag.
>From what I inferred from the make manual[0], $* is functionally equivalent to $(basename $@) in this case. This patch therefore replaces $* with $(basename $@). I tested this patch by successfully performing a 3-stage bootstrap and a non-bootstrap build with and without the --no-builtin-rules flag. Without the patch, the build would fail during the compilation of libgcc/morestack.S under the --no-builtin-rules flag. This patch is interesting because the --no-builtin-rules flag may significantly shorten rebuild times. For example, on my machine an idempotent rebuild of the (non-bootstrapped) compiler takes 2s with the flag versus 2.6s without. Similarly, a rebuild after changing a single source file takes 20s versus 22s. This patch lets you seamlessly build and rebuild the compiler under the --no-builtin-rules flag without having to worry about possible build errors. [0]: http://www.gnu.org/software/make/manual/html_node/Automatic-Variables.html#Automatic-Variables