summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--Makefile.def3
-rw-r--r--Makefile.in81
-rw-r--r--Makefile.tpl32
4 files changed, 55 insertions, 70 deletions
diff --git a/ChangeLog b/ChangeLog
index 8e8dc87d486..127ebeee5f5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2005-06-22 Paolo Bonzini <bonzini@gnu.org>
+
+ * Makefile.def (stagefeedback): Come after profile.
+ Define profiledbootstrap target.
+ * Makefile.tpl (profiledbootstrap): Remove.
+ (stageprofile-end): Zap stagefeedback.
+ (stagefeedback-start): Copy all .gcda files, not only GCC's.
+ * Makefile.in: Regenerate.
+
2005-06-13 Zack Weinberg <zack@codesourcery.com>
* depcomp: Update from automake CVS. Add 'ia64hp' stanza.
diff --git a/Makefile.def b/Makefile.def
index 091b869aada..bba06309ef8 100644
--- a/Makefile.def
+++ b/Makefile.def
@@ -473,6 +473,7 @@ bootstrap_stage = {
stage_configure_flags="@stage2_werror_flag@" ;
stage_make_flags='CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"' ; };
bootstrap_stage = {
- id=feedback ; prev=1 ;
+ id=feedback ; prev=profile ;
+ bootstrap_target=profiledbootstrap ;
stage_configure_flags="@stage2_werror_flag@" ;
stage_make_flags='CFLAGS="$(BOOT_CFLAGS) -fprofile-use"' ; };
diff --git a/Makefile.in b/Makefile.in
index 1e080926569..3748f321e2e 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -34363,7 +34363,7 @@ stagefeedback-start::
mkdir stagefeedback-bfd; \
set stagefeedback-bfd bfd ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-bfd prev-bfd ; \
+ set stageprofile-bfd prev-bfd ; \
@CREATE_LINK_TO_DIR@
@endif bfd
@if opcodes
@@ -34371,7 +34371,7 @@ stagefeedback-start::
mkdir stagefeedback-opcodes; \
set stagefeedback-opcodes opcodes ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-opcodes prev-opcodes ; \
+ set stageprofile-opcodes prev-opcodes ; \
@CREATE_LINK_TO_DIR@
@endif opcodes
@if binutils
@@ -34379,7 +34379,7 @@ stagefeedback-start::
mkdir stagefeedback-binutils; \
set stagefeedback-binutils binutils ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-binutils prev-binutils ; \
+ set stageprofile-binutils prev-binutils ; \
@CREATE_LINK_TO_DIR@
@endif binutils
@if gas
@@ -34387,7 +34387,7 @@ stagefeedback-start::
mkdir stagefeedback-gas; \
set stagefeedback-gas gas ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-gas prev-gas ; \
+ set stageprofile-gas prev-gas ; \
@CREATE_LINK_TO_DIR@
@endif gas
@if gcc
@@ -34395,7 +34395,7 @@ stagefeedback-start::
mkdir stagefeedback-gcc; \
set stagefeedback-gcc gcc ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-gcc prev-gcc ; \
+ set stageprofile-gcc prev-gcc ; \
@CREATE_LINK_TO_DIR@
@endif gcc
@if intl
@@ -34403,7 +34403,7 @@ stagefeedback-start::
mkdir stagefeedback-intl; \
set stagefeedback-intl intl ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-intl prev-intl ; \
+ set stageprofile-intl prev-intl ; \
@CREATE_LINK_TO_DIR@
@endif intl
@if ld
@@ -34411,7 +34411,7 @@ stagefeedback-start::
mkdir stagefeedback-ld; \
set stagefeedback-ld ld ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-ld prev-ld ; \
+ set stageprofile-ld prev-ld ; \
@CREATE_LINK_TO_DIR@
@endif ld
@if libcpp
@@ -34419,7 +34419,7 @@ stagefeedback-start::
mkdir stagefeedback-libcpp; \
set stagefeedback-libcpp libcpp ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-libcpp prev-libcpp ; \
+ set stageprofile-libcpp prev-libcpp ; \
@CREATE_LINK_TO_DIR@
@endif libcpp
@if libiberty
@@ -34427,7 +34427,7 @@ stagefeedback-start::
mkdir stagefeedback-libiberty; \
set stagefeedback-libiberty libiberty ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-libiberty prev-libiberty ; \
+ set stageprofile-libiberty prev-libiberty ; \
@CREATE_LINK_TO_DIR@
@endif libiberty
@if zlib
@@ -34435,7 +34435,7 @@ stagefeedback-start::
mkdir stagefeedback-zlib; \
set stagefeedback-zlib zlib ; \
@CREATE_LINK_TO_DIR@ ; \
- set stage1-zlib prev-zlib ; \
+ set stageprofile-zlib prev-zlib ; \
@CREATE_LINK_TO_DIR@
@endif zlib
@@ -34444,61 +34444,61 @@ stagefeedback-end::
@if bfd
@cd $(HOST_SUBDIR); set bfd stagefeedback-bfd ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-bfd stage1-bfd ; \
+ set prev-bfd stageprofile-bfd ; \
@UNDO_LINK_TO_DIR@
@endif bfd
@if opcodes
@cd $(HOST_SUBDIR); set opcodes stagefeedback-opcodes ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-opcodes stage1-opcodes ; \
+ set prev-opcodes stageprofile-opcodes ; \
@UNDO_LINK_TO_DIR@
@endif opcodes
@if binutils
@cd $(HOST_SUBDIR); set binutils stagefeedback-binutils ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-binutils stage1-binutils ; \
+ set prev-binutils stageprofile-binutils ; \
@UNDO_LINK_TO_DIR@
@endif binutils
@if gas
@cd $(HOST_SUBDIR); set gas stagefeedback-gas ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-gas stage1-gas ; \
+ set prev-gas stageprofile-gas ; \
@UNDO_LINK_TO_DIR@
@endif gas
@if gcc
@cd $(HOST_SUBDIR); set gcc stagefeedback-gcc ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-gcc stage1-gcc ; \
+ set prev-gcc stageprofile-gcc ; \
@UNDO_LINK_TO_DIR@
@endif gcc
@if intl
@cd $(HOST_SUBDIR); set intl stagefeedback-intl ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-intl stage1-intl ; \
+ set prev-intl stageprofile-intl ; \
@UNDO_LINK_TO_DIR@
@endif intl
@if ld
@cd $(HOST_SUBDIR); set ld stagefeedback-ld ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-ld stage1-ld ; \
+ set prev-ld stageprofile-ld ; \
@UNDO_LINK_TO_DIR@
@endif ld
@if libcpp
@cd $(HOST_SUBDIR); set libcpp stagefeedback-libcpp ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-libcpp stage1-libcpp ; \
+ set prev-libcpp stageprofile-libcpp ; \
@UNDO_LINK_TO_DIR@
@endif libcpp
@if libiberty
@cd $(HOST_SUBDIR); set libiberty stagefeedback-libiberty ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-libiberty stage1-libiberty ; \
+ set prev-libiberty stageprofile-libiberty ; \
@UNDO_LINK_TO_DIR@
@endif libiberty
@if zlib
@cd $(HOST_SUBDIR); set zlib stagefeedback-zlib ; \
@UNDO_LINK_TO_DIR@ ; \
- set prev-zlib stage1-zlib ; \
+ set prev-zlib stageprofile-zlib ; \
@UNDO_LINK_TO_DIR@
@endif zlib
@@ -34506,8 +34506,8 @@ stagefeedback-end::
# are remade, but not reconfigured. The next stage (if any) will not
# be reconfigured as well.
.PHONY: stagefeedback-bubble
-stagefeedback-bubble:: stage1-bubble
- @if test -f stagefeedback-lean || test -f stage1-lean ; then \
+stagefeedback-bubble:: stageprofile-bubble
+ @if test -f stagefeedback-lean || test -f stageprofile-lean ; then \
echo Skipping rebuild of stagefeedback ; \
else \
$(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stagefeedback; \
@@ -34522,9 +34522,12 @@ do-clean: clean-stagefeedback
+.PHONY: profiledbootstrap
+profiledbootstrap: stagefeedback-bubble all
+
# Rules to wipe a stage and all the following ones, also used for cleanstrap
-distclean-stage1:: distclean-stagefeedback
+distclean-stageprofile:: distclean-stagefeedback
.PHONY: distclean-stagefeedback
distclean-stagefeedback::
[ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
@@ -34535,32 +34538,18 @@ distclean-stagefeedback::
-stagefeedback-start::
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- cd stageprofile-gcc && \
- { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../gcc/&",' | $(SHELL); } && \
- { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../gcc/&",' | $(SHELL); }
+stageprofile-end::
+ $(MAKE) distclean-stagefeedback
-# FIXME: Will not need to be conditional when toplevel bootstrap is the
-# only possibility, but now it conflicts with no-bootstrap rules
-@if gcc-bootstrap
-profiledbootstrap:
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- echo "Bootstrapping the compiler"; \
- $(MAKE) stageprofile-bubble distclean-stagefeedback
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
- echo "Building runtime libraries and training compiler"; \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
+stagefeedback-start::
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- echo "Building feedback based compiler"; \
- $(MAKE) stagefeedback-bubble stagefeedback-end
-@endif gcc-bootstrap
+ for i in prev-*; do \
+ j=`echo $$i | sed s/^prev-//` ; \
+ cd $$r/$$i && \
+ { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../'$$j'/&",' | $(SHELL) ; } && \
+ { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../'$$j'/&",' | $(SHELL) ; } ; \
+ done
@if gcc-bootstrap
NOTPARALLEL = .NOTPARALLEL
diff --git a/Makefile.tpl b/Makefile.tpl
index 365301d73aa..de6ee68be5c 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -1445,32 +1445,18 @@ distclean-stage[+id+]::
[+ ENDFOR bootstrap-stage +]
-stagefeedback-start::
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- cd stageprofile-gcc && \
- { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../gcc/&",' | $(SHELL); } && \
- { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../gcc/&",' | $(SHELL); }
+stageprofile-end::
+ $(MAKE) distclean-stagefeedback
-# FIXME: Will not need to be conditional when toplevel bootstrap is the
-# only possibility, but now it conflicts with no-bootstrap rules
-@if gcc-bootstrap
-profiledbootstrap:
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- echo "Bootstrapping the compiler"; \
- $(MAKE) stageprofile-bubble distclean-stagefeedback
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
- echo "Building runtime libraries and training compiler"; \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
+stagefeedback-start::
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- echo "Building feedback based compiler"; \
- $(MAKE) stagefeedback-bubble stagefeedback-end
-@endif gcc-bootstrap
+ for i in prev-*; do \
+ j=`echo $$i | sed s/^prev-//` ; \
+ cd $$r/$$i && \
+ { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../'$$j'/&",' | $(SHELL) ; } && \
+ { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../'$$j'/&",' | $(SHELL) ; } ; \
+ done
@if gcc-bootstrap
NOTPARALLEL = .NOTPARALLEL