-
Notifications
You must be signed in to change notification settings - Fork 1
/
ethash.nimble
28 lines (21 loc) · 1.02 KB
/
ethash.nimble
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
mode = ScriptMode.Verbose
packageName = "ethash"
version = "0.0.1"
author = "Status Research & Development GmbH"
description = "A Nim implementation of Ethash, the Ethereum proof-of-work hashing function"
license = "Apache License 2.0"
srcDir = "src"
### Dependencies
requires "nim >= 1.6.0", "nimcrypto >= 0.1.0"
proc test(name: string, args: string) =
if not dirExists "build":
mkDir "build"
exec "nim c --styleCheck:usages --styleCheck:error --outdir:./build/ " & args & " --run tests/" & name & ".nim"
if (NimMajor, NimMinor) > (1, 6):
exec "nim c --styleCheck:usages --styleCheck:error --mm:refc --outdir:./build/ " & args & " --run tests/" & name & ".nim"
task test, "Run Proof-of-Work tests (without mining)":
test "all_tests", ""
task testRelease, "test release mode":
test "all_tests", "-d:release"
task test_mining, "Run Proof-of-Work and mining tests (test in release mode + OpenMP + march=native)":
test "all_tests", "-d:release -d:openmp -d:march_native -d:ethash_mining"