Skip to content

Commit

Permalink
website updates for 0.9.6
Browse files Browse the repository at this point in the history
  • Loading branch information
Araq committed Oct 19, 2014
1 parent a4dcebd commit dc8d8eb
Show file tree
Hide file tree
Showing 7 changed files with 45 additions and 131 deletions.
2 changes: 1 addition & 1 deletion compiler/nimrod.ini
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ Files: "config/nimdoc.cfg"
Files: "config/nimdoc.tex.cfg"

[Documentation]
; Files: "doc/*.txt"
; Files: "doc/*.html"
; Files: "doc/*.cfg"
; Files: "doc/*.pdf"
Expand Down Expand Up @@ -65,6 +64,7 @@ Files: "compiler/readme.txt"
Files: "compiler/nimrod.ini"
Files: "compiler/nimrod.cfg"
Files: "compiler/*.nim"
Files: "doc/*.txt"
Files: "compiler/nimfix/*.nim"
Files: "compiler/nimfix/*.cfg"

Expand Down
5 changes: 0 additions & 5 deletions config/nimrod.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,5 @@ vcc.options.always = "/nologo"
vcc.options.speed = "/Ox /arch:SSE2"
vcc.options.size = "/O1"

# Configuration for the Digital Mars C/C++ compiler:
@if windows:
dmc.path = r"$nimrod\dist\dm\bin"
@end

# Configuration for the Tiny C Compiler:
tcc.options.always = "-w"
2 changes: 0 additions & 2 deletions install.txt
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,6 @@ Currently, the following C compilers are supported under Windows:
| http://www.mingw.org/download.shtml
- | LLVM with Clang or GNU C/C++ frontend
| http://llvm.org/releases/download.html
- | Digital Mars C++
| http://www.digitalmars.com/download/freecompiler.html

However, most testing is done with GCC.

Expand Down
29 changes: 16 additions & 13 deletions koch.nim
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Possible Commands:
web generates the website
csource [options] builds the C sources for installation
zip builds the installation ZIP package
inno [options] builds the Inno Setup installer (for Windows)
nsis [options] builds the NSIS Setup installer (for Windows)
tests [options] run the testsuite
update updates nimrod to the latest version from github
(compile koch with -d:withUpdate to enable)
Expand Down Expand Up @@ -77,6 +77,14 @@ proc tryExec(cmd: string): bool =
echo(cmd)
result = execShellCmd(cmd) == 0

proc safeRemove(filename: string) =
if existsFile(filename): removeFile(filename)

proc copyExe(source, dest: string) =
safeRemove(dest)
copyFile(dest=dest, source=source)
inclFilePermissions(dest, {fpUserExec})

const
compileNimInst = "-d:useLibzipSrc tools/niminst/niminst"

Expand All @@ -94,12 +102,15 @@ proc buildTool(toolname, args: string) =
exec("$# cc $# $#" % [findNim(), args, toolname])
copyFile(dest="bin"/ splitFile(toolname).name.exe, source=toolname.exe)

proc inno(args: string) =
proc nsis(args: string) =
# make sure we have generated the niminst executables:
buildTool("tools/niminst/niminst", args)
buildTool("tools/nimgrep", args)
exec("tools" / "niminst" / "niminst --var:version=$# inno compiler/nimrod" %
NimrodVersion)
# produce 'nimrod_debug.exe':
exec "nimrod c compiler" / "nimrod.nim"
copyExe("compiler/nimrod".exe, "bin/nimrod_debug".exe)
exec(("tools" / "niminst" / "niminst --var:version=$# --var:mingw=mingw32" &
" nsis compiler/nimrod") % NimrodVersion)

proc install(args: string) =
exec("$# cc -r $# --var:version=$# scripts compiler/nimrod.ini" %
Expand Down Expand Up @@ -137,16 +148,8 @@ proc findStartNimrod: string =
echo("Found no nimrod compiler and every attempt to build one failed!")
quit("FAILURE")

proc safeRemove(filename: string) =
if existsFile(filename): removeFile(filename)

proc thVersion(i: int): string =
result = ("compiler" / "nimrod" & $i).exe

proc copyExe(source, dest: string) =
safeRemove(dest)
copyFile(dest=dest, source=source)
inclFilePermissions(dest, {fpUserExec})

proc boot(args: string) =
var output = "compiler" / "nimrod".exe
Expand Down Expand Up @@ -304,7 +307,7 @@ of cmdArgument:
of "web": web(op.cmdLineRest)
of "csource", "csources": csource(op.cmdLineRest)
of "zip": zip(op.cmdLineRest)
of "inno": inno(op.cmdLineRest)
of "nsis": nsis(op.cmdLineRest)
of "install": install(op.cmdLineRest)
of "test", "tests": tests(op.cmdLineRest)
of "update":
Expand Down
125 changes: 18 additions & 107 deletions web/download.txt
Original file line number Diff line number Diff line change
@@ -1,127 +1,39 @@
You can download the latest version of the Nimrod compiler here. You can
use the binaries provided or build from source.

Binaries
========

All installers and archives contain the html documentation and tools
(nimgrep, c2nim and babel).
You can download the latest version of the Nimrod compiler here.

**Note:** The Nimrod compiler requires a C compiler to compile software. On
Windows we recommend that you use
`Mingw-w64 <http://mingw-w64.sourceforge.net/>`_. GCC is recommended on Linux
and clang on Mac OS X.

Installers
----------

The "full" version includes a full mingw distribution which includes a C
compiler. The "slim" version lacks this.

* Full (i386, 32bit): `<download/nimrod_0.9.4_windows_i386_full.exe>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: dca7c63d0c1861d2d7c51b2e7a29fa98371750a10ab282d5df9de22a07719c24
</p>

* Slim (i386, 32bit): `<download/nimrod_0.9.4_windows_i386_slim.exe>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: c0fcd1201bd20fad1e14b9d2cc2529494057068de1dd01f871cf129f088a8242
</p>

* Full (amd64, 64bit): `<download/nimrod_0.9.4_windows_amd64_full.exe>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: af9d478c2f3361e0f238fcb07fa8e7ae5821938c0f9063c6670e925c9ae9d16e
</p>

* Slim (amd64, 64bit): `<download/nimrod_0.9.4_windows_amd64_slim.exe>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: 90c380721a46be2b9b8d5437187f701940aefc2e1fb9722dbc543f5c5a3bb85e
</p>

Archives
--------

Windows
~~~~~~~

The "full" version includes a full mingw distribution which includes a C
compiler. The "slim" version lacks this.

* Full (i386, 32bit): `<download/nimrod_0.9.4_windows_i386_full.zip>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: 8ee18faaa3a3d5df482c7abd6aa7ea87a350d7328b80ce1e2d486b59a7a93956
</p>

* Slim (i386, 32bit): `<download/nimrod_0.9.4_windows_i386_slim.zip>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: 7024fb8ad8f98c0bd4949ae36ed11b52b4e401754bbd62a11199d6dc8628d857
</p>

* Full (amd64, 64bit): `<download/nimrod_0.9.4_windows_amd64_full.zip>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: cb33cacc1a84fec771323d24cb6d9795f4803882466a9f417b424990aa49e18a
</p>

* Slim (amd64, 64bit): `<download/nimrod_0.9.4_windows_amd64_slim.zip>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: fcf877e4bd1ebfa214749af6e4811cd8539af19f1d7b23017e4bd7f6cbfb3eba
</p>
Binaries
========

Linux
~~~~~
Unfortunately for now we only provide 32 bit builds for
Windows: `nimrod_0.9.6.exe <download/nimrod_0.9.6.exe>`_

* Linux (i386, 32bit): `<download/nimrod_0.9.4_linux_i386.tar.gz>`_

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: 79DD337A77AC4313A75F2C5EED8252F00BBBDEB1E0C3504660D4A52EA63DBA92
</p>
* Linux (amd64, 64bit): `<download/nimrod_0.9.4_linux_amd64.tar.gz>`_
Installation based on generated C code
======================================

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: 6F6CB3C727BA8059B7605C02942AE7910C20C2A3DC6A8A600D90D50FE61F0D8C
</p>
* Linux (ppc64, 64bit): `<download/nimrod_0.9.4_linux_ppc64.tar.gz>`_
This installation method is the preferred way for Linux, Mac OS X, and other Unix
like systems. Binary packages may be provided later.

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: 5DAC2D9F7F545929E04540E6E2594C68FC3126A3B2F7B1FA7DBA5E295B4A7D31
</p>

Mac OS X
~~~~~~~~
Download `nimrod_0.9.6.zip <download/nimrod_0.9.6.zip>`_, extract it and follow
these instructions:

* Mac OS X (amd64, 64bit): `<download/nimrod_0.9.4_macosx_amd64.zip>`_
* sh build.sh
* Add ``$your_install_dir/bin`` to your PATH.

.. raw:: html
<p style="font-size: 8pt; margin-top: 0;">
SHA256: E6F3A8E434DF3E89686F043954C6DFC09ABEBC0FC09D3B9A6B35C2B3102F7C3C
</p>
There are other ways to install Nimrod (like using the ``install.sh`` script),
but these tend to cause more problems.

If a binary for your platform is not available then you must build from source.
Bleeding edge binaries are available from the `Nimrod build farm <http://build.nimrod-lang.org/>`_.

Source
======
Installation from github
========================

Starting with 0.9.4 we now advise people to build directly from the
It is also possible to build directly from the
github `master <https://github.com/Araq/Nimrod#compiling>`_ branch::

git clone -b master git://github.com/Araq/Nimrod.git
Expand All @@ -135,4 +47,3 @@ github `master <https://github.com/Araq/Nimrod#compiling>`_ branch::
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
the same instructions outlined above.

8 changes: 5 additions & 3 deletions web/news.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
News
====

2014-10-12 Version 0.9.6 released
=================================
2014-10-19 Nimrod version 0.9.6 released
========================================

**Note: This is the last release of Nimrod. The language has been renamed to
**Note: 0.9.6 is the last release of Nimrod. The language has been renamed to
Nim. Nim slightly breaks compatibility.**

This is a maintenance release. The upcoming 0.10.0 release has
Expand Down Expand Up @@ -42,6 +42,8 @@ Language Additions

- This version introduces the new ``deprecated`` pragma statement that is used
to handle the upcoming massive amount of symbol renames.
- ``spawn`` can now wrap proc that have a return value. It then returns a flow
variable of the wrapped return type.


Library Additions
Expand Down
5 changes: 5 additions & 0 deletions web/ticker.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
<a class="news" href="news.html#Z2014-10-19-version-0-9-6-released">
<h3>Oct 19, 2014</h3>
<p>Nimrod version 0.9.6 has been released!</p>
</a>

<a class="news" href="news.html#Z2014-04-21-version-0-9-4-released">
<h3>Apr 21, 2014</h3>
<p>Nimrod version 0.9.4 has been released!</p>
Expand Down

0 comments on commit dc8d8eb

Please sign in to comment.