diff options
author | Varriount <Varriount@users.noreply.github.com> | 2015-01-17 13:48:05 -0500 |
---|---|---|
committer | Varriount <Varriount@users.noreply.github.com> | 2015-01-17 13:48:05 -0500 |
commit | 9847f762e4bc6e01a3303b42a48d576a6751477d (patch) | |
tree | e38b4fbff6124c0fab5f0e5a4bbefd34bf33a776 | |
parent | 5d013cd626d9211bb927fe58bbcf6e03031492c8 (diff) | |
parent | 23c87d4e258c161f45b4fe4c89d832ad5fc116ba (diff) | |
download | Nim-9847f762e4bc6e01a3303b42a48d576a6751477d.tar.gz |
Merge pull request #1951 from noway421/bootstrap-install-docs-fix
Documented faster way to bootstrap-build Nim
-rwxr-xr-x | build.bat | 22 | ||||
-rwxr-xr-x[-rw-r--r--] | build.sh | 0 | ||||
-rwxr-xr-x | install.bat.template | 6 | ||||
-rw-r--r-- | install.txt | 2 | ||||
-rw-r--r-- | readme.md | 18 | ||||
-rw-r--r-- | web/download.txt | 8 |
6 files changed, 39 insertions, 17 deletions
diff --git a/build.bat b/build.bat new file mode 100755 index 000000000..b68d626f6 --- /dev/null +++ b/build.bat @@ -0,0 +1,22 @@ + +if not exist "csources"( + git clone --depth 1 https://github.com/nim-lang/csources.git +) + +cd "csources" + +for /f "skip=1 delims=" %%x in ('wmic cpu get addresswidth') do if not defined AddressWidth set AddressWidth=%%x +if %AddressWidth%==64 ( + call build64.bat +) else ( + call build.bat +) + +cd ".." + +./bin/nim c koch +./koch boot -d:release + +xcopy /Y install.bat.template install.bat + +pause \ No newline at end of file diff --git a/build.sh b/build.sh index 139c28359..139c28359 100644..100755 --- a/build.sh +++ b/build.sh diff --git a/install.bat.template b/install.bat.template new file mode 100755 index 000000000..f49c898cc --- /dev/null +++ b/install.bat.template @@ -0,0 +1,6 @@ + +if not "%1"=="" ( + ./koch install %1 +) else ( + ./koch install +) diff --git a/install.txt b/install.txt index deca55599..f308ef12f 100644 --- a/install.txt +++ b/install.txt @@ -17,7 +17,7 @@ works. Then run the following command:: - sh build.sh + ./build.sh Unlike other software, Nim does not distribute its files over the whole file hierarchy. This has the advantage that you can deinstall it by just deleting diff --git a/readme.md b/readme.md index d5968982b..7790f4a3f 100644 --- a/readme.md +++ b/readme.md @@ -29,23 +29,21 @@ To build from source you will need: If you are on a fairly modern *nix system, the following steps should work: -``` +```bash $ git clone git://github.com/Araq/Nim.git $ cd Nim -$ git clone --depth 1 git://github.com/nim-lang/csources -$ cd csources && sh build.sh -$ cd .. -$ bin/nim c koch -$ ./koch boot -d:release +$ ./build.sh ``` -``koch install [dir]`` may then be used to install Nim, or you can simply +``./koch install [dir]`` may then be used to install Nim, or you can simply add it to your PATH. More ``koch`` related options are documented in [doc/koch.txt](doc/koch.txt). -The above steps can be performed on Windows in a similar fashion, the -``build.bat`` and ``build64.bat`` (for x86_64 systems) are provided to be used -instead of ``build.sh``. +The above steps can be performed on Windows in a similar fashion, use +``build.bat`` instead of ``build.sh``. Make sure you have mingw and git in +your PATH. If you want to use different compiler, run script and then +manually change `CC` and `LINKER` variables in `csources/build.bat` or +`csources/build64.bat`. ## Getting help A [forum](http://forum.nim-lang.org/) is available if you have any diff --git a/web/download.txt b/web/download.txt index 497781ad6..0d66247f2 100644 --- a/web/download.txt +++ b/web/download.txt @@ -24,7 +24,7 @@ like systems. Binary packages may be provided later. Download `nim-0.10.2.zip <download/nim-0.10.2.zip>`_, extract it and follow these instructions: -* sh build.sh +* ./build.sh * Add ``$your_install_dir/bin`` to your PATH. There are other ways to install Nim (like using the ``install.sh`` script), @@ -39,11 +39,7 @@ Change the branch to suit your needs:: git clone -b master git://github.com/Araq/Nim.git cd Nim - git clone -b master --depth 1 git://github.com/nim-lang/csources - cd csources && sh build.sh - cd .. - bin/nim c koch - ./koch boot -d:release + ./build.sh The ``master`` branch always contains the latest stable version of the compiler. If you want bleeding edge then switch to the ``devel`` branch and follow |