@@ -147,6 +147,17 @@ else
147147CFG_ADB_TEST_DIR =
148148endif
149149
150+ # $(1) - name of doc test
151+ # $(2) - file of the test
152+ define DOCTEST
153+ DOC_NAMES := $$(DOC_NAMES ) $(1 )
154+ DOCFILE_$(1 ) := $(2 )
155+ endef
156+
157+ $(foreach doc,$(DOCS), \
158+ $(eval $(call DOCTEST,md-$(doc),$(S)src/doc/$(doc).md)))
159+ $(foreach file,$(wildcard $(S)src/doc/trpl/*.md), \
160+ $(eval $(call DOCTEST,$(file :$(S ) src/doc/trpl/% .md=trpl-% ),$(file ) )))
150161
151162# #####################################################################
152163# Main test targets
@@ -292,6 +303,7 @@ tidy:
292303 | grep ' ^$(S)src/rust-installer' -v \
293304 | xargs $(CFG_PYTHON ) $(S ) src/etc/check-binaries.py
294305
306+
295307endif
296308
297309
@@ -339,8 +351,8 @@ check-stage$(1)-T-$(2)-H-$(3)-doc-crates-exec: \
339351 check-stage$(1 ) -T-$(2 ) -H-$(3 ) -doc-crate-$$(crate ) -exec)
340352
341353check-stage$(1 ) -T-$(2 ) -H-$(3 ) -doc-exec: \
342- $$(foreach docname,$$(DOCS ) , \
343- check-stage$(1 ) -T-$(2 ) -H-$(3 ) -doc-$$(docname ) -exec)
354+ $$(foreach docname,$$(DOC_NAMES ) , \
355+ check-stage$(1 ) -T-$(2 ) -H-$(3 ) -doc-$$(docname ) -exec) \
344356
345357check-stage$(1 ) -T-$(2 ) -H-$(3 ) -pretty-exec: \
346358 check-stage$(1 ) -T-$(2 ) -H-$(3 ) -pretty-rpass-exec \
@@ -795,17 +807,18 @@ check-stage$(1)-T-$(2)-H-$(3)-doc-$(4)-exec: $$(call TEST_OK_FILE,$(1),$(2),$(3)
795807# rustdoc etc.
796808ifeq ($(NO_REBUILD ) ,)
797809DOCTESTDEP_$(1)_$(2)_$(3)_$(4) = \
798- $$(D ) / $(4 ) .md \
810+ $$(DOCFILE_ $(4 ) ) \
799811 $$(TEST_SREQ$(1 ) _T_$(2 ) _H_$(3 ) ) \
800812 $$(RUSTDOC_EXE_$(1 ) _T_$(2 ) _H_$(3 ) )
801813else
802- DOCTESTDEP_$(1)_$(2)_$(3)_$(4) = $$(D ) / $(4 ) .md
814+ DOCTESTDEP_$(1)_$(2)_$(3)_$(4) = $$(DOCFILE_ $(4 ) )
803815endif
804816
805817ifeq ($(2 ) ,$$(CFG_BUILD ) )
806818$$(call TEST_OK_FILE,$(1 ) ,$(2 ) ,$(3 ) ,doc-$(4 ) ) : $$(DOCTESTDEP_$(1 ) _$(2 ) _$(3 ) _$(4 ) )
807819 @$$(call E, run doc-$(4 ) [$(2 ) ])
808- $$(Q )$$(RUSTDOC_$(1 ) _T_$(2 ) _H_$(3 ) ) --cfg dox --test $$< --test-args " $$ (TESTARGS)" && touch $$@
820+ $$(Q )$$(RUSTDOC_$(1 ) _T_$(2 ) _H_$(3 ) ) --cfg dox --test $$< \
821+ --test-args " $$ (TESTARGS)" && touch $$@
809822else
810823$$(call TEST_OK_FILE,$(1 ) ,$(2 ) ,$(3 ) ,doc-$(4 ) ) :
811824 touch $$@
@@ -815,7 +828,7 @@ endef
815828$(foreach host,$(CFG_HOST), \
816829 $(foreach target,$(CFG_TARGET), \
817830 $(foreach stage,$(STAGES), \
818- $(foreach docname,$(DOCS ), \
831+ $(foreach docname,$(DOC_NAMES ), \
819832 $(eval $(call DEF_DOC_TEST,$(stage),$(target),$(host),$(docname)))))))
820833
821834# Crates
@@ -877,7 +890,7 @@ TEST_GROUPS = \
877890 debuginfo-lldb \
878891 codegen \
879892 doc \
880- $(foreach docname,$(DOCS ) ,doc-$(docname ) ) \
893+ $(foreach docname,$(DOC_NAMES ) ,doc-$(docname ) ) \
881894 pretty \
882895 pretty-rpass \
883896 pretty-rpass-valgrind \
@@ -946,7 +959,7 @@ $(foreach stage,$(STAGES), \
946959 $(eval $(call DEF_CHECK_FOR_STAGE_AND_HOSTS_AND_GROUP,$(stage),$(host),$(group))))))
947960
948961define DEF_CHECK_DOC_FOR_STAGE
949- check-stage$(1 ) -docs: $$(foreach docname,$$(DOCS ) , \
962+ check-stage$(1 ) -docs: $$(foreach docname,$$(DOC_NAMES ) , \
950963 check-stage$(1 ) -T-$$(CFG_BUILD ) -H-$$(CFG_BUILD ) -doc-$$(docname ) ) \
951964 $$(foreach crate,$$(TEST_DOC_CRATES ) , \
952965 check-stage$(1 ) -T-$$(CFG_BUILD ) -H-$$(CFG_BUILD ) -doc-crate-$$(crate ) )
0 commit comments