Sha256: a1ddb6180192cded7cfd6ad07af3f3045ee9218268d58e570c71fddb8985a85f

Contents?: true

Size: 1.16 KB

Versions: 1

Compression:

Stored size: 1.16 KB

Contents

begin
  require 'bundler/gem_tasks'
rescue LoadError
  puts "Cannot load bundler/gem_tasks"
end

require 'rake/testtask'
require 'ffi'

task :default => :compile

desc "Compile extension"
task :compile do
  prefix = "lib.target/"
  if FFI::Platform.mac?
    prefix = ""
  end
  path = File.expand_path("ext/snowcrash/build/out/Release/#{prefix}libsnowcrash.#{FFI::Platform::LIBSUFFIX}", File.dirname(__FILE__))
  puts path
  if !File.exists?(path) || ENV['RECOMPILE']
    puts "Initializing submodules (if required)..."
    `git submodule update --init --recursive 2>/dev/null`
    puts "Compiling extension..."
    `cd #{File.expand_path("ext/snowcrash/")} && ./configure --shared && make`
    exit $?.exitstatus
  else
    puts "Extension already compiled. To recompile set env variable RECOMPILE=true."
  end
end

Rake::TestTask.new(:test) do |test|
  Rake::Task["compile"].invoke

  test.libs << 'lib' << 'test'
  test.test_files = FileList['test/*_test.rb']
  test.verbose = true
end

# ----- Documentation tasks ---------------------------------------------------

require 'yard'
YARD::Rake::YardocTask.new(:doc) do |t|
  t.options = %w| --embed-mixins --markup=markdown |
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
redsnow-0.1.5 Rakefile