summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--Makefile.in16
-rw-r--r--Makefile.tpl11
3 files changed, 31 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index d1af890be9f..4fc9fc74c9c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-06-14 Paolo Bonzini <bonzini@gnu.org>
+
+ * Makefile.tpl (cleanstrap): Don't delete the toplevel Makefile.
+ (distclean-stage[+id+]): Possibly delete stage_last.
+ * Makefile.in: Regenerate.
+
2007-06-07 Ben Elliston <bje@au.ibm.com>
* config.sub, config.guess: Update from upstream sources.
diff --git a/Makefile.in b/Makefile.in
index 595520ee065..785f53ba45a 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -47478,6 +47478,7 @@ do-clean: clean-stage1
.PHONY: distclean-stage1
distclean-stage1::
@: $(MAKE); $(stage)
+ @test "`cat stage_last`" != stage1 || rm -f stage_last
rm -rf stage1-*
@@ -47709,6 +47710,7 @@ distclean-stage1:: distclean-stage2
.PHONY: distclean-stage2
distclean-stage2::
@: $(MAKE); $(stage)
+ @test "`cat stage_last`" != stage2 || rm -f stage_last
rm -rf stage2-*
@@ -47983,11 +47985,20 @@ distclean-stage2:: distclean-stage3
.PHONY: distclean-stage3
distclean-stage3::
@: $(MAKE); $(stage)
+ @test "`cat stage_last`" != stage3 || rm -f stage_last
rm -rf stage3-* compare
.PHONY: cleanstrap
-cleanstrap: distclean bootstrap
+cleanstrap: do-distclean local-clean
+ echo stage3 > stage_final
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage3-bubble
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
@endif gcc-bootstrap
@@ -48260,6 +48271,7 @@ distclean-stage3:: distclean-stage4
.PHONY: distclean-stage4
distclean-stage4::
@: $(MAKE); $(stage)
+ @test "`cat stage_last`" != stage4 || rm -f stage_last
rm -rf stage4-* compare3
@@ -48470,6 +48482,7 @@ distclean-stage1:: distclean-stageprofile
.PHONY: distclean-stageprofile
distclean-stageprofile::
@: $(MAKE); $(stage)
+ @test "`cat stage_last`" != stageprofile || rm -f stage_last
rm -rf stageprofile-*
@@ -48701,6 +48714,7 @@ distclean-stageprofile:: distclean-stagefeedback
.PHONY: distclean-stagefeedback
distclean-stagefeedback::
@: $(MAKE); $(stage)
+ @test "`cat stage_last`" != stagefeedback || rm -f stage_last
rm -rf stagefeedback-*
diff --git a/Makefile.tpl b/Makefile.tpl
index 958d4cb6e28..6164a4164c6 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -1361,12 +1361,21 @@ do-clean: clean-stage[+id+]
.PHONY: distclean-stage[+id+]
distclean-stage[+id+]::
@: $(MAKE); $(stage)
+ @test "`cat stage_last`" != stage[+id+] || rm -f stage_last
rm -rf stage[+id+]-* [+
IF compare-target +][+compare-target+] [+ ENDIF compare-target +]
[+ IF cleanstrap-target +]
.PHONY: [+cleanstrap-target+]
-[+cleanstrap-target+]: distclean [+bootstrap-target+]
+[+cleanstrap-target+]: do-distclean local-clean
+ echo stage[+id+] > stage_final
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage[+id+]-bubble
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
[+ ENDIF cleanstrap-target +]
@endif gcc-bootstrap