From b22b23620da088f8728802199bb1a8c0f5999ec6 Mon Sep 17 00:00:00 2001 From: Ganesh Viswanathan Date: Tue, 30 Jun 2020 15:43:09 -0500 Subject: [PATCH] Fix Windows include issue --- nimterop/cimport.nim | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/nimterop/cimport.nim b/nimterop/cimport.nim index 6e0a80f..109b172 100644 --- a/nimterop/cimport.nim +++ b/nimterop/cimport.nim @@ -154,6 +154,8 @@ proc getToast(fullpaths: seq[string], recurse: bool = false, dynlib: string = "" cachePath = getNimteropCacheDir() / "toastCache" / "nimterop_" & $hash result = cachePath.addFileExt(ext) + when defined(Windows): + result = result.replace(DirSep, '/') if not fileExists(result) or compileOption("forceBuild"): let @@ -590,7 +592,10 @@ macro cImport*(filenames: static seq[string], recurse: static bool = false, dynl gecho nimFile.readFile() try: - result.add parseStmt("include " & nimFile.changeFileExt("")) + let + nimFileNode = newStrLitNode(nimFile.changeFileExt("")) + result.add quote do: + include `nimFileNode` except: getNimCheckError(nimFile) @@ -702,6 +707,9 @@ macro c2nImport*(filename: static string, recurse: static bool = false, dynlib: gecho nimFile.readFile() try: - result.add parseStmt("include " & nimFile.changeFileExt("")) + let + nimFileNode = newStrLitNode(nimFile.changeFileExt("")) + result.add quote do: + include `nimFileNode` except: getNimCheckError(nimFile)