koch install should work now as documented
This commit is contained in:
parent
5d4c048705
commit
5cc8213950
1 changed files with 18 additions and 9 deletions
27
koch.nim
27
koch.nim
|
|
@ -58,6 +58,15 @@ Boot options:
|
||||||
|
|
||||||
proc exe(f: string): string = return addFileExt(f, ExeExt)
|
proc exe(f: string): string = return addFileExt(f, ExeExt)
|
||||||
|
|
||||||
|
proc findNim(): string =
|
||||||
|
var nimrod = "nimrod".exe
|
||||||
|
result = "bin" / nimrod
|
||||||
|
if existsFile(result): return
|
||||||
|
for dir in split(getEnv("PATH"), PathSep):
|
||||||
|
if existsFile(dir / nimrod): return dir / nimrod
|
||||||
|
# assume there is a symlink to the exe or something:
|
||||||
|
return nimrod
|
||||||
|
|
||||||
proc exec(cmd: string) =
|
proc exec(cmd: string) =
|
||||||
echo(cmd)
|
echo(cmd)
|
||||||
if execShellCmd(cmd) != 0: quit("FAILURE")
|
if execShellCmd(cmd) != 0: quit("FAILURE")
|
||||||
|
|
@ -70,15 +79,15 @@ const
|
||||||
compileNimInst = "-d:useLibzipSrc tools/niminst/niminst"
|
compileNimInst = "-d:useLibzipSrc tools/niminst/niminst"
|
||||||
|
|
||||||
proc csource(args: string) =
|
proc csource(args: string) =
|
||||||
exec("nimrod cc $1 -r $3 --var:version=$2 csource compiler/nimrod.ini $1" %
|
exec("$4 cc $1 -r $3 --var:version=$2 csource compiler/nimrod.ini $1" %
|
||||||
[args, NimrodVersion, compileNimInst])
|
[args, NimrodVersion, compileNimInst, findNim()])
|
||||||
|
|
||||||
proc zip(args: string) =
|
proc zip(args: string) =
|
||||||
exec("nimrod cc -r $2 --var:version=$1 zip compiler/nimrod.ini" %
|
exec("$3 cc -r $2 --var:version=$1 zip compiler/nimrod.ini" %
|
||||||
[NimrodVersion, compileNimInst])
|
[NimrodVersion, compileNimInst, findNim()])
|
||||||
|
|
||||||
proc buildTool(toolname, args: string) =
|
proc buildTool(toolname, args: string) =
|
||||||
exec("nimrod cc $# $#" % [args, toolname])
|
exec("$# cc $# $#" % [findNim(), args, toolname])
|
||||||
copyFile(dest="bin"/ splitFile(toolname).name.exe, source=toolname.exe)
|
copyFile(dest="bin"/ splitFile(toolname).name.exe, source=toolname.exe)
|
||||||
|
|
||||||
proc inno(args: string) =
|
proc inno(args: string) =
|
||||||
|
|
@ -90,13 +99,13 @@ proc inno(args: string) =
|
||||||
NimrodVersion)
|
NimrodVersion)
|
||||||
|
|
||||||
proc install(args: string) =
|
proc install(args: string) =
|
||||||
exec("nimrod cc -r $# --var:version=$# scripts compiler/nimrod.ini" %
|
exec("$# cc -r $# --var:version=$# scripts compiler/nimrod.ini" %
|
||||||
[compileNimInst, NimrodVersion])
|
[findNim(), compileNimInst, NimrodVersion])
|
||||||
exec("sh ./install.sh $#" % args)
|
exec("sh ./install.sh $#" % args)
|
||||||
|
|
||||||
proc web(args: string) =
|
proc web(args: string) =
|
||||||
exec(("nimrod cc -r tools/nimweb.nim web/nimrod --putenv:nimrodversion=$#" &
|
exec(("$# cc -r tools/nimweb.nim web/nimrod --putenv:nimrodversion=$#" &
|
||||||
" --path:$#") % [NimrodVersion, getCurrentDir()])
|
" --path:$#") % [findNim(), NimrodVersion, getCurrentDir()])
|
||||||
|
|
||||||
# -------------- boot ---------------------------------------------------------
|
# -------------- boot ---------------------------------------------------------
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue