diff options
author | Timothee Cour <timothee.cour2@gmail.com> | 2018-08-08 07:47:17 -0700 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2018-08-08 16:47:17 +0200 |
commit | 506418ef539a9142307235c0cd0183f0d7aec749 (patch) | |
tree | 682f50be36ac83e474636c8b0bcea2d1f944bee2 | |
parent | 32b62097a2636c5053d842939d34e2a0fa3f9e33 (diff) | |
download | Nim-506418ef539a9142307235c0cd0183f0d7aec749.tar.gz |
add build_all.sh to allow 1-liner to build development version of the compiler (#8546)
-rw-r--r-- | build_all.sh | 22 | ||||
-rw-r--r-- | readme.md | 25 |
2 files changed, 39 insertions, 8 deletions
diff --git a/build_all.sh b/build_all.sh new file mode 100644 index 000000000..cd5ea3d59 --- /dev/null +++ b/build_all.sh @@ -0,0 +1,22 @@ +#! /bin/sh + +# build development version of the compiler; can be rerun safely + +set -u # error on undefined variables +set -e # exit on first error + +echo_run(){ + echo "\n$@" + "$@" +} + +[ -d csources ] || echo_run git clone --depth 1 https://github.com/nim-lang/csources.git +( + ## avoid changing dir in case of failure + echo_run cd csources + echo_run sh build.sh +) + +echo_run bin/nim c koch +echo_run ./koch boot -d:release +echo_run ./koch tools # Compile Nimble and other tools. diff --git a/readme.md b/readme.md index bdc7c7549..e4fb52bd0 100644 --- a/readme.md +++ b/readme.md @@ -50,24 +50,33 @@ Next, to build from source you will need: other distros as well). Then, if you are on a \*nix system or Windows, the following steps should compile -Nim from source using ``gcc``, ``git`` and the ``koch`` build tool (in the place -of ``sh build.sh`` you should substitute ``build.bat`` on x86 Windows or -``build64.bat`` on x86_64 Windows): +Nim from source using ``gcc``, ``git`` and the ``koch`` build tool. **Note: The following commands are for the development version of the compiler.** For most users, installing the latest stable version is enough. Check out the installation instructions on the website to do so: https://nim-lang.org/install.html. ``` +# step 1: git clone https://github.com/nim-lang/Nim.git cd Nim + +# step 2 (posix) clones `csources.git`, bootstraps Nim compiler and compiles tools +sh build_all.sh + +# step 2 (windows) git clone --depth 1 https://github.com/nim-lang/csources.git + cd csources -sh build.sh -cd ../ -bin/nim c koch -./koch boot -d:release -./koch tools # Compile Nimble and other tools. +# requires `gcc` in your PATH, see also https://nim-lang.org/install_windows.html +build.bat # x86 Windows +build64.bat # x86_64 Windows +cd .. + +bin\nim c koch +koch boot -d:release +koch tools # Compile Nimble and other tools +# end of step 2 (windows) ``` Finally, once you have finished the build steps (on Windows, Mac or Linux) you |