Skip to content

Commit

Permalink
Add support for packager to build one-click installers
Browse files Browse the repository at this point in the history
  • Loading branch information
chriseppstein committed Mar 14, 2012
1 parent 95844e1 commit b90f9c5
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 3 deletions.
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -29,3 +29,4 @@ devbin
vendor/ruby
vendor
Gemfile.lock
Compass.pkg
3 changes: 3 additions & 0 deletions Gemfile
Expand Up @@ -2,6 +2,7 @@ source :rubygems

gemspec

unless ENV['PKG']
gem "cucumber", "~> 1.1.4"
gem "rspec", "~>2.0.0"
gem "rails", "~> 3.1"
Expand All @@ -25,4 +26,6 @@ unless ENV["CI"]
gem 'guard'
gem 'guard-test'
gem 'guard-cucumber'
gem 'packager'
end
end
37 changes: 34 additions & 3 deletions Rakefile
@@ -1,7 +1,16 @@
require 'rubygems'
require 'bundler'
Bundler.setup
require 'rake/dsl_definition' rescue nil
if ENV["PKG"]
$: << File.expand_path(File.dirname(__FILE__))+"/lib"
else
require 'bundler'
Bundler.setup
end

begin
require 'rake/dsl_definition'
rescue LoadError
#pass
end
require 'compass'

# ----- Default: Testing ------
Expand All @@ -10,12 +19,17 @@ task :default => [:test, :features]

require 'rake/testtask'
require 'fileutils'

begin
require 'cucumber'
require 'cucumber/rake/task'

Cucumber::Rake::Task.new(:features) do |t|
t.cucumber_opts = "features --format progress"
end
rescue LoadError
$stderr.puts "cannot load cucumber"
end

Rake::TestTask.new :test do |t|
t.libs << 'lib'
Expand Down Expand Up @@ -124,3 +138,20 @@ rescue LoadError => e
puts "WARNING: #{e}"
end

begin
require 'packager/rake_task'
require 'compass/version'
# Building a package:
# 1. Get packager installed and make sure your system is setup correctly according to their docs.
# 2. Make sure you are actually using a universal binary that has been nametooled.
# 3. PKG=1 OFFICIAL=1 rake packager:pkg
Packager::RakeTask.new(:pkg) do |t|
t.package_name = "Compass"
t.version = Compass::VERSION
t.domain = "compass-style.org"
t.bin_files = ["compass"]
t.resource_files = FileList["frameworks/**/*"] + ["VERSION.yml", "LICENSE.markdown"]
end
rescue LoadError => e
puts "WARNING: #{e}"
end

0 comments on commit b90f9c5

Please sign in to comment.