summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2015-06-30 17:00:42 -0700
committerNico Weber <nicolasweber@gmx.de>2015-06-30 17:00:42 -0700
commit184927e8a732e450cd8eb88407b12772cbbdf9e3 (patch)
treef32a613f70509bab824671bf6e6152e561585f2c
parentd18eda4c3ed7d81c3f8d6d46972a0988f1ebb05e (diff)
parent53e5aed022b09d38e219b31cc9af4574cb948327 (diff)
downloadninja-184927e8a732e450cd8eb88407b12772cbbdf9e3.tar.gz
Merge pull request #984 from martine/vcvars
point people at more detailed build docs if they're on Windows
-rw-r--r--HACKING.md20
-rw-r--r--README11
2 files changed, 24 insertions, 7 deletions
diff --git a/HACKING.md b/HACKING.md
index 9c6830f..1ba520c 100644
--- a/HACKING.md
+++ b/HACKING.md
@@ -2,10 +2,26 @@
`./configure.py` generates the `build.ninja` files used to build
ninja. It accepts various flags to adjust build parameters.
+Run './configure.py --help' for more configuration options.
The primary build target of interest is `ninja`, but when hacking on
-Ninja your changes should be testable so it's more useful to build
-and run `ninja_test` when developing.
+Ninja your changes should be testable so it's more useful to build and
+run `ninja_test` when developing.
+
+### Bootstrapping
+
+Ninja is built using itself. To bootstrap the first binary, run the
+configure script as `./configure.py --bootstrap`. It This first
+compiles all non-test source files together, then re-builds Ninja
+using itself. You should end up with a `ninja' binary (or
+`ninja.exe`) in the source root.
+
+#### Windows
+
+On Windows, you'll need to install Python to run `configure.py`, and
+run everything under a Visual Studio Tools Command Prompt (or after
+running `vcvarsall` in a normal command prompt). See below if you
+want to use mingw or some other compiler instead using Visual Studio.
### Adjusting build flags
diff --git a/README b/README
index 41ecdda..66a6516 100644
--- a/README
+++ b/README
@@ -5,13 +5,14 @@ See the manual -- http://martine.github.com/ninja/manual.html or
doc/manual.asciidoc included in the distribution -- for background
and more details.
-To build, run ./configure.py --bootstrap. It first compiles all non-test
-source files together, then re-builds Ninja using itself. You should
-end up with a 'ninja' binary in the source root.
-
-Run './configure.py --help' for more configuration options.
+Binaries for Linux, Mac, and Windows are available at
+ https://github.com/martine/ninja/releases
Run './ninja -h' for Ninja help.
+To build your own binary, on many platforms it should be sufficient to
+just run `./configure.py --bootstrap`; for more details see HACKING.md.
+(Also read that before making changes to Ninja, as it has advice.)
+
Installation is not necessary because the only required file is is the
resulting ninja binary. However, to enable features like Bash
completion and Emacs and Vim editing modes, some files in misc/ must be