diff --git a/Makefile.in b/Makefile.in index 48e26e804c7..285256b6068 100644 --- a/Makefile.in +++ b/Makefile.in @@ -431,8 +431,9 @@ TSREQS := \ $(SREQ3_T_$(target)_H_$(CFG_HOST_TRIPLE))) FUZZ := $(HBIN3_H_$(CFG_HOST_TRIPLE))/fuzzer$(X) CARGO := $(HBIN3_H_$(CFG_HOST_TRIPLE))/cargo$(X) +RUSTDOC := $(HBIN3_H_$(CFG_HOST_TRIPLE))/rustdoc$(X) -all: rustc $(GENERATED) $(DOCS) $(FUZZ) $(CARGO) +all: rustc $(GENERATED) $(DOCS) $(FUZZ) $(CARGO) $(RUSTDOC) endif diff --git a/mk/install.mk b/mk/install.mk index 8f277f2301a..27e6de021a8 100644 --- a/mk/install.mk +++ b/mk/install.mk @@ -69,6 +69,7 @@ install-host: $(SREQ$(ISTAGE)_T_$(CFG_HOST_TRIPLE)_H_$(CFG_HOST_TRIPLE)) $(Q)mkdir -p $(PREFIX_ROOT)/share/man/man1 $(Q)$(call INSTALL,$(HB),$(PHB),rustc$(X)) $(Q)$(call INSTALL,$(HB),$(PHB),cargo$(X)) + $(Q)$(call INSTALL,$(HB),$(PHB),rustdoc$(X)) $(Q)$(call INSTALL,$(HL),$(PHL),$(CFG_RUNTIME)) $(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(CORELIB_GLOB)) $(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(STDLIB_GLOB)) diff --git a/mk/tools.mk b/mk/tools.mk index 84d7c55ac35..8487a7054e1 100644 --- a/mk/tools.mk +++ b/mk/tools.mk @@ -12,6 +12,10 @@ COMPILETEST_INPUTS := $(wildcard $(S)src/compiletest/*rs) CARGO_CRATE := $(S)src/cargo/cargo.rc CARGO_INPUTS := $(wildcard $(S)src/cargo/*rs) +# Rustdoc, the documentation tool +RUSTDOC_CRATE := $(wildcard $(S)src/rustdoc/.rc) +RUSTDOC_INPUTS := $(wildcard $(S)src/rustdoc/*.rs) + # FIXME: These are only built for the host arch. Eventually we'll # have tools that need to built for other targets. define TOOLS_STAGE_N @@ -64,6 +68,21 @@ $$(HBIN$(2)_H_$(4))/cargo$$(X): \ @$$(call E, cp: $$@) $$(Q)cp $$< $$@ +$$(TBIN$(1)_T_$(4)_H_$(3))/rustdoc$$(X): \ + $$(RUSTDOC_CRATE) $$(RUSTDOC_INPUTS) \ + $$(TSREQ$(1)_T_$(4)_H_$(3)) \ + $$(TLIB$(1)_T_$(4)_H_$(3))/$$(CFG_CORELIB) \ + $$(TLIB$(1)_T_$(4)_H_$(3))/$$(CFG_STDLIB) \ + $$(TLIB$(1)_T_$(4)_H_$(3))/$$(CFG_LIBRUSTC) + @$$(call E, compile_and_link: $$@) + $$(STAGE$(1)_T_$(4)_H_$(3)) -o $$@ $$< + +$$(HBIN$(2)_H_$(4))/rustdoc$$(X): \ + $$(TBIN$(1)_T_$(4)_H_$(3))/rustdoc$$(X) \ + $$(HSREQ$(2)_$(4)) + @$$(call E, cp: $$@) + $$(Q)cp $$< $$@ + endef $(foreach host,$(CFG_TARGET_TRIPLES), \