Skip to content

Commit 1f4c9b9

Browse files
author
Edward Ocampo-Gooding
committedJun 22, 2015
Rakefile fixups for easy Gem install + testing
1 parent c21ccfd commit 1f4c9b9

File tree

4 files changed

+31
-16
lines changed

4 files changed

+31
-16
lines changed
 

‎Rakefile

+4-14
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,12 @@ rescue LoadError
44
puts 'Cannot load bundler/gem_tasks'
55
end
66

7-
task default: :test
8-
9-
task prepare: "ext/lib/libsass.so"
7+
require 'tasks/libsass'
108

11-
file "ext/lib/libsass.so" do
12-
gem_dir = File.expand_path(File.dirname(__FILE__)) + "/"
13-
cd "ext/libsass"
14-
sh 'make lib/libsass.so LDFLAGS="-Wall -O2"'
15-
cd gem_dir
16-
end
9+
task default: :test
1710

18-
task test: :prepare do
11+
desc "Run all tests"
12+
task test: 'libsass:compile' do
1913
$LOAD_PATH.unshift('lib', 'test')
2014
Dir.glob('./test/**/*_test.rb') { |f| require f }
2115
end
22-
23-
task :submodule do
24-
sh "git submodule update --init"
25-
end

‎ext/Rakefile

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
require_relative '../lib/tasks/libsass'
2+
3+
task default: 'libsass:compile'

‎lib/tasks/libsass.rb

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
namespace :libsass do
2+
desc "Compile libsass"
3+
task compile: "ext/libsass/lib/libsass.so"
4+
5+
file "ext/libsass/.git" do
6+
sh "git submodule update --init"
7+
end
8+
9+
file "ext/libsass/lib/libsass.so" => "ext/libsass/.git" do
10+
libsass_path = ""
11+
if Dir.pwd.end_with?('/ext')
12+
libsass_path = "libsass"
13+
else
14+
libsass_path = "ext/libsass"
15+
end
16+
17+
cd libsass_path do
18+
sh 'make lib/libsass.so LDFLAGS="-Wall -O2"'
19+
end
20+
end
21+
end

‎sassc.gemspec

+3-2
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,10 @@ Gem::Specification.new do |spec|
1616
spec.files = `git ls-files -z`.split("\x0")
1717
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
1818
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19-
spec.require_paths = ["lib", "ext"]
2019

21-
spec.extensions = ["Rakefile"]
20+
spec.require_paths = ["lib"]
21+
22+
spec.extensions = ["ext/Rakefile"]
2223

2324
spec.add_development_dependency "rake"
2425
spec.add_development_dependency "minitest", "~> 5.5.1"

0 commit comments

Comments
 (0)
Please sign in to comment.