all repos — nifty @ a65b2760226c6e49d2ee427973d3d3561dc268bb

A tiny (pseudo) package manager and script runner.

nakefile.nim

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
import 
  nake

import
  lib/config

const
  compile = "nim c -d:release"
  linux_x86 = "--cpu:i386 --os:linux"
  linux_x64 = "--cpu:amd64 --os:linux"
  linux_arm = "--cpu:arm --os:linux"
  windows_x64 = "--cpu:amd64 --os:windows"
  macosx_x64 = ""
  #parallel = "--parallelBuild:1 --verbosity:3"
  hs = "nifty"
  hs_file = "nifty.nim"
  zip = "zip -X"

proc filename_for(os: string, arch: string): string =
  return "nifty" & "_v" & version & "_" & os & "_" & arch & ".zip"

task "windows-x64-build", "Build nifty for Windows (x64)":
  direshell compile, windows_x64, hs_file

task "linux-x86-build", "Build nifty for Linux (x86)":
  direshell compile, linux_x86,  hs_file
  
task "linux-x64-build", "Build nifty for Linux (x64)":
  direshell compile, linux_x64,  hs_file
  
task "linux-arm-build", "Build nifty for Linux (ARM)":
  direshell compile, linux_arm,  hs_file
  
task "macosx-x64-build", "Build nifty for Mac OS X (x64)":
  direshell compile, macosx_x64, hs_file

task "release", "Release nifty":
  echo "\n\n\n WINDOWS - x64:\n\n"
  runTask "windows-x64-build"
  direshell zip, filename_for("windows", "x64"), hs & ".exe"
  direshell "rm", hs & ".exe"
  echo "\n\n\n LINUX - x64:\n\n"
  runTask "linux-x64-build"
  direshell zip, filename_for("linux", "x64"), hs 
  direshell "rm", hs 
  echo "\n\n\n LINUX - x86:\n\n"
  runTask "linux-x86-build"
  direshell zip, filename_for("linux", "x86"), hs 
  direshell "rm", hs 
  echo "\n\n\n LINUX - ARM:\n\n"
  runTask "linux-arm-build"
  direshell zip, filename_for("linux", "arm"), hs 
  direshell "rm", hs 
  echo "\n\n\n MAC OS X - x64:\n\n"
  runTask "macosx-x64-build"
  direshell zip, filename_for("macosx", "x64"), hs 
  direshell "rm", hs 
  echo "\n\n\n ALL DONE!"