mk: Fix the regexp of SHOW_DOCS

The tag marks were missing, and `make tips` didn't work.
mk: Talk about `make clean` in the build help
rustdoc: Only inject extern crates if not present
auto merge of #12361 : sfackler/rust/rustdoc-test-extern, r=alexcrichton
auto merge of #12364 : Armavica/rust/mk-tips, r=alexcrichton

The command `make tips` did not work properly because of a flaw in the regexp parsing Makefile.in for documentation (`SHOW_DOCS`). I fixed it and also added a note about `make clean` in the build documentation (`make help`).
rustdoc: Fixup links to enum variants

Pages aren't emitted for enum variants, so whenever we're linking to an enum
variant instead link to the parent enum instead.

Closes #12289
rustdoc: Show macros in documentation

Any macro tagged with #[macro_export] will be showed in the documentation for
that module. This also documents all the existing macros inside of std::macros.

Closes #3163
cc #5605
Closes #9954
rustdoc: Highlight methods jumped to

This helps figure out where you actually jumped to, especially if the thing you
jumped to is at the very bottom of the page.

Closes #9905
rustdoc: Fix json output and input

Turns out a hash map with integer keys isn't serializable to json.

Closes #10115
rustdoc: Clickable links on methods themselves

Useful for getting the link to a method or function.

Closes #10332
rustdoc: Handle links to reexported items

When building up our path cache, we don't plaster over a path which was
previously inserted if we're inserting a non-public-item thing.

Closes #11678
auto merge of #12339 : alexcrichton/rust/rustdoc-fixes, r=sfackler

Commits have the details