From e936b851b7c546a2f954aad65e8bfacfd2ae67c6 Mon Sep 17 00:00:00 2001
From: Florian Gilcher <florian.gilcher@asquera.de>
Date: Wed, 27 May 2020 23:20:18 +0200
Subject: [PATCH 1/2] Add prerequisite page

---
 src/SUMMARY.md                |  1 +
 src/building/prerequisites.md | 28 +++++++++++++++++++++++++++-
 2 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/src/SUMMARY.md b/src/SUMMARY.md
index c900070a4..b7439d0ea 100644
--- a/src/SUMMARY.md
+++ b/src/SUMMARY.md
@@ -9,6 +9,7 @@
     - [Getting Started](./getting-started.md)
     - [About the compiler team](./compiler-team.md)
     - [How to Build and Run the Compiler](./building/how-to-build-and-run.md)
+        - [Prerequisites](./building/prerequisites.md)
         - [Suggested Workflows](./building/suggested.md)
         - [Bootstrapping](./building/bootstrapping.md)
         - [Distribution artifacts](./building/build-install-distribution-artifacts.md)
diff --git a/src/building/prerequisites.md b/src/building/prerequisites.md
index aa13c7524..9db18778d 100644
--- a/src/building/prerequisites.md
+++ b/src/building/prerequisites.md
@@ -1,3 +1,29 @@
 # Prerequisites
 
-** Coming Soon: https://github.com/rust-lang/rustc-dev-guide/pull/723 **
+Before building the compiler, you need the following things installed:
+
+* Python
+* A C/C++ compiler toolchain
+* cmake
+* rustc
+
+## `rustc` and toolchain installation
+
+Follow the installation given in the [Rust book](https://doc.rust-lang.org/book/ch01-01-installation.html) to install a working `rustc` and the necessary C/++ toolchain on your platform.
+
+## Platform specific instructions
+
+### Windows
+
+* Install [winget](https://github.com/microsoft/winget-cli)
+
+Run the following in a terminal:
+
+```
+winget install python
+winget install cmake
+```
+
+If any of those is installed already, winget will detect it.
+
+Edit your systems `PATH` variable and add: `C:\Program Files\CMake\bin`.

From 071c59f87af88bad7f6d634a6bf5092b93835850 Mon Sep 17 00:00:00 2001
From: mark <markm@cs.wisc.edu>
Date: Thu, 18 Jun 2020 12:35:15 -0500
Subject: [PATCH 2/2] address review comments

---
 src/building/prerequisites.md | 37 ++++++++++++++++++++++++++++++-----
 1 file changed, 32 insertions(+), 5 deletions(-)

diff --git a/src/building/prerequisites.md b/src/building/prerequisites.md
index 9db18778d..3224c6dab 100644
--- a/src/building/prerequisites.md
+++ b/src/building/prerequisites.md
@@ -1,15 +1,42 @@
 # Prerequisites
 
+## Dependencies
+
 Before building the compiler, you need the following things installed:
 
-* Python
-* A C/C++ compiler toolchain
-* cmake
-* rustc
+* `g++` 5.1 or later or `clang++` 3.5 or later
+* `python` 3 or 2.7
+* GNU `make` 3.81 or later
+* `cmake` 3.4.3 or later
+* `curl`
+* `git`
+* `ssl` which comes in `libssl-dev` or `openssl-devel`
+* `pkg-config` if you are compiling on Linux and targeting Linux
+
+Additionally, if you want to build `rustc` with your system's LLVM, you will
+need `llvm-config`. See [this section for more info][sysllvm].
+
+[sysllvm]: ./suggested.md#building-with-system-llvm
+
+## Hardware
+
+These are not so much requirements as _recommendations_:
+
+* ~15GB of free disk space (~25GB or more if doing incremental builds).
+* >= 8GB RAM
+* >= 4 cores
+* Internet access
+
+Beefier machines will lead to much faster builds. If your machine is not very
+powerful, a common strategy is to only use `./x.py check` on your local machine
+and let the CI build test your changes when you push to a PR branch.
 
 ## `rustc` and toolchain installation
 
-Follow the installation given in the [Rust book](https://doc.rust-lang.org/book/ch01-01-installation.html) to install a working `rustc` and the necessary C/++ toolchain on your platform.
+Follow the installation given in the [Rust book][install] to install a working
+`rustc` and the necessary C/++ toolchain on your platform.
+
+[install]: https://doc.rust-lang.org/book/ch01-01-installation.html
 
 ## Platform specific instructions