diff options
Diffstat (limited to 'tools/libtomcrypt.nim')
| -rw-r--r-- | tools/libtomcrypt.nim | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tools/libtomcrypt.nim b/tools/libtomcrypt.nim new file mode 100644 index 0000000..bb15c89 --- /dev/null +++ b/tools/libtomcrypt.nim @@ -0,0 +1,31 @@ +import os +import strutils + +import builder + +# Import for tommathIncDir +import tommath / private / config + +let sourceDir = expandFilename("/tmp/source-libtomcrypt") + +let libtomcrypt = newStaticLibrary("tomcrypt", sourceDir) + +add(libtomcrypt.defines, "USE_LTM") +add(libtomcrypt.defines, "LTM_DESC") +add(libtomcrypt.defines, "LTC_SOURCE") + +when not defined(vcc): + add(libtomcrypt.compilerOptions, "-O3 -funroll-loops -fomit-frame-pointer") + +for file in walkDirRec(sourceDir / "src", {pcFile}, {pcDir}): + if endsWith(file, ".c"): + addSourceFiles(libtomcrypt, file) + +addIncludeDirectory(libtomcrypt, sourceDir / "src" / "headers") +addIncludeDirectory(libtomcrypt, tommathIncDir) + +for file in walkFiles(sourceDir / "src" / "headers" / "*.h"): + addPublicHeaders(libtomcrypt, "include", expandFilename(file)) + +if build(libtomcrypt): + install(libtomcrypt, getAppDir() / ".." / "src" / "tomcrypt" / "private") |
