diff options
-rw-r--r-- | compiler/installer.ini | 6 | ||||
-rw-r--r-- | tools/niminst/niminst.nim | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/compiler/installer.ini b/compiler/installer.ini index acc82002d..40050a2f7 100644 --- a/compiler/installer.ini +++ b/compiler/installer.ini @@ -89,8 +89,6 @@ Files: "bin/c2nim.exe" Files: "bin/nimgrep.exe" Files: "bin/nimsuggest.exe" Files: "bin/nimble.exe" -Files: "bin/makelink.exe" -Files: "bin/*.dll" Files: "koch.exe" Files: "finish.exe" @@ -105,6 +103,10 @@ Download: r"Support DLLs|bin|nim_dlls.zip|479|http://nim-lang.org/download/dlls. Download: r"Aporia Text Editor|dist|aporia.zip|97997|http://nim-lang.org/download/aporia-0.4.0.zip|aporia-0.4.0\bin\aporia.exe" ; for now only NSIS supports optional downloads +[WinBin] +Files: "$NIMINSTDEPS/makelink.exe" +Files: "$NIMINSTDEPS/*.dll" + [UnixBin] Files: "bin/nim" diff --git a/tools/niminst/niminst.nim b/tools/niminst/niminst.nim index ff9d8881d..66ea52447 100644 --- a/tools/niminst/niminst.nim +++ b/tools/niminst/niminst.nim @@ -313,7 +313,7 @@ proc parseIniFile(c: var ConfigData) = of cfgSectionStart: section = normalize(k.section) of cfgKeyValuePair: - var v = k.value % c.vars + var v = `%`(k.value, c.vars, {useEnvironment}) c.vars[k.key] = v case section @@ -621,7 +621,7 @@ proc xzDist(c: var ConfigData; windowsZip=false) = let proj = toLowerAscii(c.name) & "-" & c.version let tmpDir = if c.outdir.len == 0: "build" else: c.outdir - template processFile(destFile, src) = + proc processFile(destFile, src: string) = let dest = tmpDir / destFile echo "Copying ", src, " to ", dest if not existsFile(src): @@ -648,6 +648,10 @@ proc xzDist(c: var ConfigData; windowsZip=false) = var dir = buildDir(osA, cpuA) for k, f in walkDir("build" / dir): if k == pcFile: processFile(proj / dir / extractFilename(f), f) + else: + for f in items(c.cat[fcWinBin]): + let filename = f.extractFilename + processFile(proj / "bin" / filename, f) let osSpecific = if windowsZip: fcWindows else: fcUnix for cat in items({fcConfig..fcOther, osSpecific, fcNimble}): |