fix setCommand so it behaves like regular nim invocation (#18555)

This commit is contained in:
Timothee Cour 2021-07-21 23:00:29 -07:00 • committed by GitHub
commit d5b5827bc2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 18 deletions

View file

@ -695,6 +695,16 @@ proc setDefaultLibpath*(conf: ConfigRef) =
proc canonicalizePath*(conf: ConfigRef; path: AbsoluteFile): AbsoluteFile =
result = AbsoluteFile path.string.expandFilename
proc setFromProjectName*(conf: ConfigRef; projectName: string) =
try:
conf.projectFull = canonicalizePath(conf, AbsoluteFile projectName)
except OSError:
conf.projectFull = AbsoluteFile projectName
let p = splitFile(conf.projectFull)
let dir = if p.dir.isEmpty: AbsoluteDir getCurrentDir() else: p.dir
conf.projectPath = AbsoluteDir canonicalizePath(conf, AbsoluteFile dir)
conf.projectName = p.name
proc removeTrailingDirSep*(path: string): string =
if (path.len > 0) and (path[^1] == DirSep):
result = substr(path, 0, path.len - 2)