diff options
| author | Ganesh Viswanathan <dev@genotrance.com> | 2020-05-20 16:58:52 -0500 |
|---|---|---|
| committer | Ganesh Viswanathan <dev@genotrance.com> | 2020-05-21 13:52:38 -0500 |
| commit | a54991122de7f586f3671316eaf079b25d1eae16 (patch) | |
| tree | deb42c133648f8269bb5ffa4fa89acf926597f41 | |
| parent | 6c01f5504771d2a3b013097007f16a5414baa5b7 (diff) | |
| download | nimterop-a54991122de7f586f3671316eaf079b25d1eae16.tar.gz nimterop-a54991122de7f586f3671316eaf079b25d1eae16.zip | |
Fix nimconf path to nim
| -rw-r--r-- | nimterop/ast2.nim | 2 | ||||
| -rw-r--r-- | nimterop/build.nim | 14 | ||||
| -rw-r--r-- | nimterop/getters.nim | 2 | ||||
| -rw-r--r-- | nimterop/nimconf.nim | 2 | ||||
| -rw-r--r-- | nimterop/toast.nim | 5 |
5 files changed, 15 insertions, 10 deletions
diff --git a/nimterop/ast2.nim b/nimterop/ast2.nim index f4e15db..759ddfd 100644 --- a/nimterop/ast2.nim +++ b/nimterop/ast2.nim @@ -139,7 +139,7 @@ proc newConstDef(gState: State, node: TSNode, fname = "", fval = ""): PNode = else: gecho &"# const '{origname}' is duplicate, skipped" else: - gecho &"# const '{origname}' has unsupported value '{val}'" + gecho &"# const '{origname}' has unsupported value '{val.strip()}'" gState.skippedSyms.incl origname proc addConst(gState: State, node: TSNode) = diff --git a/nimterop/build.nim b/nimterop/build.nim index 6f13ac7..58ecbd1 100644 --- a/nimterop/build.nim +++ b/nimterop/build.nim @@ -15,6 +15,7 @@ type var gDebug* = false gDebugCT* {.compileTime.} = false + gNimExe* = "" proc echoDebug(str: string) = let str = "\n# " & str.strip().replace("\n", "\n# ") @@ -46,6 +47,14 @@ proc sanitizePath*(path: string, noQuote = false, sep = $DirSep): string = if not noQuote: result = result.quoteShell +proc getCurrentNimCompiler*(): string = + when nimvm: + result = getCurrentCompilerExe() + when defined(nimsuggest): + result = result.replace("nimsuggest", "nim") + else: + result = gNimExe + # Nim cfg file related functionality include "."/nimconf @@ -64,11 +73,6 @@ proc getNimteropCacheDir(): string = # Get location to cache all nimterop artifacts result = getNimcacheDir() / "nimterop" -proc getCurrentNimCompiler*(): string = - result = getCurrentCompilerExe() - when defined(nimsuggest): - result = result.replace("nimsuggest", "nim") - proc execAction*(cmd: string, retry = 0, die = true, cache = false, cacheKey = ""): tuple[output: string, ret: int] = ## Execute an external command - supported at compile time diff --git a/nimterop/getters.nim b/nimterop/getters.nim index 0906d56..b092663 100644 --- a/nimterop/getters.nim +++ b/nimterop/getters.nim @@ -454,7 +454,7 @@ proc loadPlugin*(gState: State, sourcePath: string) = outflags = &"--out:\"{pdll}\"" # Compile plugin as library with `markAndSweep` GC - cmd = &"{gState.nim.sanitizePath} c --app:lib --gc:markAndSweep {flags} {outflags} {sourcePath.sanitizePath}" + cmd = &"{gState.nim} c --app:lib --gc:markAndSweep {flags} {outflags} {sourcePath.sanitizePath}" discard execAction(cmd) doAssert fileExists(pdll), "No plugin binary generated for " & sourcePath diff --git a/nimterop/nimconf.nim b/nimterop/nimconf.nim index 2a54d7e..33215ef 100644 --- a/nimterop/nimconf.nim +++ b/nimterop/nimconf.nim @@ -20,7 +20,7 @@ type proc getJson(projectDir: string): JsonNode = # Get `nim dump` json value for `projectDir` var - cmd = "nim --hints:off --dump.format:json dump dummy" + cmd = &"{getCurrentNimCompiler()} --hints:off --dump.format:json dump dummy" dump = "" ret = 0 diff --git a/nimterop/toast.nim b/nimterop/toast.nim index 84835a3..4a9553b 100644 --- a/nimterop/toast.nim +++ b/nimterop/toast.nim @@ -64,7 +64,7 @@ proc main( feature: feature, includeDirs: includeDirs, mode: mode, - nim: nim, + nim: nim.sanitizePath, noComments: noComments, noHeader: noHeader, past: past, @@ -79,7 +79,8 @@ proc main( ) # Set gDebug in build.nim - build.gDebug = debug + build.gDebug = gState.debug + build.gNimExe = gState.nim # Default `ast` mode if gState.feature.Bl: |
