Files
Nim/tools/trimcc.nim
2010-02-14 00:29:35 +01:00

30 lines
760 B
Nim

# Trim C compiler installation to a minimum
import strutils, os
proc newName(f: string): string =
var (dir, name, ext) = splitFile(f)
return dir / "trim_" & name & ext
proc walker(dir: string) =
for kind, path in walkDir(dir):
case kind
of pcFile:
moveFile(newName(path), path)
# test if installation still works:
if execShellCmd(r"nimrod c --force_build tests\tlastmod") == 0:
echo "Optional: ", path
removeFile(newName(path))
else:
echo "Required: ", path
# copy back:
moveFile(path, newName(path))
of pcDirectory:
walker(path)
else: nil
if paramCount() == 1:
walker(paramStr(1))
else:
echo "Usage: trimcc c_compiler_directory"