From 6f2f028a374c9061c879b453fa389177282dcef5 Mon Sep 17 00:00:00 2001 From: djhworld Date: Sat, 22 Jun 2013 15:01:18 +0100 Subject: [PATCH] Updated rakefile to package up into release --- .gitignore | 1 + Rakefile | 19 ++++++++++++++++--- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 41c2ffd..c6ea2cd 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ *.iml out/* target/* +artifacts/* .DS_Store pkg/* src/code.google.com/* diff --git a/Rakefile b/Rakefile index bd972db..5ea5be2 100755 --- a/Rakefile +++ b/Rakefile @@ -58,23 +58,26 @@ end #can't get the standard CGO_LDFLAGS to work for linux task :build_linux => [:setgopath, :get_go_deps] do - puts "Packaging for #{@build_platform} (static linked binary)" + puts "Building for #{@build_platform} (static linked binary)" ENV["CGO_LDFLAGS"] = "-Wl,-Bstatic -lGLEW -lglfw -Wl,-Bdynamic" puts "Set CGO_LDFLAGS to #{ENV["CGO_LDFLAGS"]}" sh %{#{construct_build_command(@build_platform, @version, EXE_NAME)}} + package(EXE_NAME, @version, "target/#{@build_platform}") end task :build_darwin => [:setgopath, :set_cgo_flags, :get_go_deps] do - puts "Packaging for #{@build_platform} (dymanic linked binary)" + puts "Building for #{@build_platform} (dymanic linked binary)" sh construct_build_command(@build_platform, @version, EXE_NAME) sh "mkdir target/#{@build_platform}/bin && mv target/#{@build_platform}/#{EXE_NAME} target/#{@build_platform}/bin/" sh "cp -a #{Dir.pwd}/dist/#{@build_platform}/pkg/* target/#{@build_platform}/" + package(EXE_NAME, @version, "target/#{@build_platform}") end task :build_windows => [:setgopath, :set_cgo_flags, :get_go_deps] do |t, args| - puts "Packaging for #{@build_platform} (dymanic linked binary)" + puts "Building for #{@build_platform} (dymanic linked binary)" sh construct_build_command(@build_platform, @version, EXE_NAME+".exe") sh "cp -a #{Dir.pwd}/dist/#{@build_platform}/pkg/* target/#{@build_platform}/" + package(EXE_NAME, @version, "target/#{@build_platform}") end task :run_darwin, [:prog_args] => [:setgopath, :set_cgo_flags, :get_go_deps_no_download] do |t, args| @@ -108,6 +111,16 @@ task :get_go_deps_no_download do get_deps(false) end +def package(name, version, artifacts_dir) + filename="#{name}_#{version}.zip" + puts + puts "Packaging up to #{filename}" + sh "rm -rf artifacts" + sh "mkdir artifacts" + cd artifacts_dir + sh "zip -r ../../artifacts/#{filename} ./*" +end + def get_deps(download) flag = " " if download then