mk: Fix doc tests for multiple targets

It only really makes sense to run tests for the build target anyway because it's
not guaranteed that you can execute other targets.

This is blocking the next snapshot
This commit is contained in:
Alex Crichton 2013-12-24 22:59:38 -08:00
parent a1e68debb1
commit 70ff5f7033
1 changed files with 16 additions and 10 deletions

View File

@ -745,21 +745,27 @@ CRATE_DOC_LIB-extra = $(EXTRALIB_CRATE)
define DEF_CRATE_DOC_TEST define DEF_CRATE_DOC_TEST
check-stage$(1)-T-$(2)-H-$(2)-doc-$(3)-exec: $$(call TEST_OK_FILE,$(1),$(2),$(2),doc-$(3)) check-stage$(1)-T-$(2)-H-$(3)-doc-$(4)-exec: $$(call TEST_OK_FILE,$(1),$(2),$(3),doc-$(4))
$$(call TEST_OK_FILE,$(1),$(2),$(2),doc-$(3)): \ ifeq ($(2),$$(CFG_BUILD))
$$(TEST_SREQ$(1)_T_$(2)_H_$(2)) \ $$(call TEST_OK_FILE,$(1),$(2),$(3),doc-$(4)): \
$$(HBIN$(1)_H_$(2))/rustdoc$$(X_$(2)) $$(TEST_SREQ$(1)_T_$(2)_H_$(3)) \
@$$(call E, run doc-$(3) [$(2)]) $$(HBIN$(1)_H_$(3))/rustdoc$$(X_$(3))
$$(Q)$$(HBIN$(1)_H_$(2))/rustdoc$$(X_$(2)) --test \ @$$(call E, run doc-$(4) [$(2)])
$$(CRATE_DOC_LIB-$(3)) && touch $$@ $$(Q)$$(HBIN$(1)_H_$(3))/rustdoc$$(X_$(3)) --test \
$$(CRATE_DOC_LIB-$(4)) && touch $$@
else
$$(call TEST_OK_FILE,$(1),$(2),$(3),doc-$(4)):
touch $$@
endif
endef endef
$(foreach host,$(CFG_HOST), \ $(foreach host,$(CFG_HOST), \
$(foreach stage,$(STAGES), \ $(foreach target,$(CFG_TARGET), \
$(foreach crate,$(TEST_DOC_CRATES), \ $(foreach stage,$(STAGES), \
$(eval $(call DEF_CRATE_DOC_TEST,$(stage),$(host),$(crate)))))) $(foreach crate,$(TEST_DOC_CRATES), \
$(eval $(call DEF_CRATE_DOC_TEST,$(stage),$(target),$(host),$(crate)))))))
###################################################################### ######################################################################
# Extracting tests for docs # Extracting tests for docs