github.com/hexonet/dnscontrol@v0.2.8/build.ps1 (about) 1 param ( 2 [string]$SHA = "" 3 ) 4 5 if ($SHA -eq ""){ 6 $SHA = (git rev-parse HEAD) | Out-String 7 $SHA = $SHA.Replace([System.Environment]::NewLine,"") 8 } 9 10 11 $PKG = "github.com/StackExchange/dnscontrol" 12 $DATE = [int][double]::Parse((Get-Date -UFormat %s)) 13 $FLAGS="-s -w -X main.SHA=$SHA -X main.BuildTime=$DATE" 14 Write-Host $FLAGS 15 16 $OrigGOOS = $env:GOOS 17 18 Write-Host 'Building Linux' 19 $env:GOOS = "linux" 20 go build -o dnscontrol-Linux -ldflags "$FLAGS" $PKG 21 22 Write-Host 'Building Windows' 23 $env:GOOS = "windows" 24 go build -o dnscontrol.exe -ldflags "$FLAGS" $PKG 25 26 Write-Host 'Building Darwin' 27 $env:GOOS = "darwin" 28 go build -o dnscontrol-Darwin -ldflags "$FLAGS" $PKG 29 30 $env:GOOS = $OrigGOOS 31 32 #No compression if building on windows 33 <# 34 if [ "$COMPRESS" = "1" ] 35 then 36 echo 'Compressing executables' 37 upx dnscontrol.exe 38 upx dnscontrol-Linux 39 upx dnscontrol-Darwin 40 fi 41 #>