]> git.lizzy.rs Git - rust.git/commitdiff
mk: don't build docs for internal or behind-the-facade crates in beta/stable
authorCorey Richardson <corey@octayn.net>
Sat, 28 Mar 2015 03:01:19 +0000 (23:01 -0400)
committerCorey Richardson <corey@octayn.net>
Sun, 29 Mar 2015 10:15:51 +0000 (06:15 -0400)
This saves a bunch of a time and will make distributions smaller, as well as
avoiding filling the implementors page with internal garbage. Turn it back on
with `--enable-compiler-docs` if you want compiler docs during development.

Crates behind the facade are only documented on nightly/dev builds (where they
can be used).

[breaking-change]

Closes #23772
Closes #21297

configure
mk/crates.mk
mk/docs.mk

index 683c7fd0563961c3056d115319eefcf878cc36f4..3673a20738c997cdc52d59c1b4f10cc5377418be 100755 (executable)
--- a/configure
+++ b/configure
@@ -526,7 +526,8 @@ VAL_OPTIONS=""
 opt valgrind 0 "run tests with valgrind (memcheck by default)"
 opt helgrind 0 "run tests with helgrind instead of memcheck"
 opt valgrind-rpass 1 "run rpass-valgrind tests with valgrind"
-opt docs     1 "build documentation"
+opt docs     1 "build standard library documentation"
+opt compiler-docs     0 "build compiler documentation"
 opt optimize 1 "build optimized rust code"
 opt optimize-cxx 1 "build optimized C++ code"
 opt optimize-llvm 1 "build optimized LLVM"
index 13e4d8cdeb824af3b5b831cd30418dc27c6f0eb9..7494a9c5f9892b2396d952340ae878505a14aff9 100644 (file)
@@ -122,17 +122,29 @@ ONLY_RLIB_rustc_bitflags := 1
 # You should not need to edit below this line
 ################################################################################
 
+# On channels where the only usable crate is std, only build documentation for
+# std. This keeps distributions small and doesn't clutter up the API docs with
+# confusing internal details from the crates behind the facade.
+
+ifeq ($(CFG_RELEASE_CHANNEL),stable)
+DOC_CRATES := std
+else
+ifeq ($(CFG_RELEASE_CHANNEL),beta)
+DOC_CRATES := std
+else
 DOC_CRATES := $(filter-out rustc, \
-              $(filter-out rustc_trans, \
-              $(filter-out rustc_typeck, \
-              $(filter-out rustc_borrowck, \
-              $(filter-out rustc_resolve, \
-              $(filter-out rustc_driver, \
-              $(filter-out rustc_privacy, \
-              $(filter-out rustc_lint, \
-              $(filter-out log, \
-              $(filter-out getopts, \
-              $(filter-out syntax, $(CRATES))))))))))))
+          $(filter-out rustc_trans, \
+          $(filter-out rustc_typeck, \
+          $(filter-out rustc_borrowck, \
+          $(filter-out rustc_resolve, \
+          $(filter-out rustc_driver, \
+          $(filter-out rustc_privacy, \
+          $(filter-out rustc_lint, \
+          $(filter-out log, \
+          $(filter-out getopts, \
+          $(filter-out syntax, $(CRATES))))))))))))
+endif
+endif
 COMPILER_DOC_CRATES := rustc rustc_trans rustc_borrowck rustc_resolve \
                        rustc_typeck rustc_driver syntax rustc_privacy \
                        rustc_lint
index f7ab86d3a29b92d2dde26091d38dc578758ec25a..d297055ba9acb6e3b5c2b322f38ddcccc3b35949 100644 (file)
@@ -259,7 +259,10 @@ doc/$(1)/index.html: $$(LIB_DOC_DEP_$(1)) doc/$(1)/
 endef
 
 $(foreach crate,$(DOC_CRATES),$(eval $(call DEF_LIB_DOC,$(crate),DOC_TARGETS)))
-$(foreach crate,$(COMPILER_DOC_CRATES),$(eval $(call DEF_LIB_DOC,$(crate),COMPILER_DOC_TARGETS)))
+
+ifdef CFG_COMPILER_DOCS
+  $(foreach crate,$(COMPILER_DOC_CRATES),$(eval $(call DEF_LIB_DOC,$(crate),COMPILER_DOC_TARGETS)))
+endif
 
 ifdef CFG_DISABLE_DOCS
   $(info cfg: disabling doc build (CFG_DISABLE_DOCS))