aboutsummaryrefslogtreecommitdiff
path: root/Makefile.in
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2011-06-04 17:43:49 +0200
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2011-06-04 17:43:49 +0200
commit929fda76b857547a577abeed255bd33eceed5cf8 (patch)
tree10a85c821833c931e1c84f27338751a91ad6e31f /Makefile.in
parent39dedfbcb65c93e5e111fba93f75507a56239076 (diff)
downloadcrosstool-ng-929fda76b857547a577abeed255bd33eceed5cf8.tar.gz
crosstool-ng-929fda76b857547a577abeed255bd33eceed5cf8.tar.bz2
crosstool-ng-929fda76b857547a577abeed255bd33eceed5cf8.zip
Makefile: make it work for auto-completion
The latest autocompletion calls 'make -qp' to get all the possible targets. This currently fails, as our makefile is calling itself again and again ad-libitum. Fix it by detecting that the recursion level is not 0, and bail out if so. It works so well that it has the side effect of showing only the 'public' target, and hide our internal ones! :-) Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Diffstat (limited to 'Makefile.in')
-rw-r--r--Makefile.in11
1 files changed, 11 insertions, 0 deletions
diff --git a/Makefile.in b/Makefile.in
index a211fd63..616ce992 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -88,6 +88,17 @@ endif
# See top of file for an explanation of why this is needed...
ifneq ($(strip $(CT_MAKEFLAGS)),)
+# Somehow, the new auto-completion for make in the recent distributions
+# trigger a behavior where our Makefile calls itself recursively, in a
+# never-ending loop (except on lack of ressources, swap, PIDs...)
+# Avoid this situation by cutting the recursion short at the first
+# level.
+# This has the side effect of only showing the real targets, and hiding our
+# internal ones. :-)
+ifneq ($(MAKELEVEL),0)
+$(error Recursion detected, bailing out...)
+endif
+
MAKEFLAGS += $(CT_MAKEFLAGS)
build install clean distclean uninstall:
@$(MAKE) $@