Sha256: 4b10e1424e574a16df3dd9596d8ac9a9e90991277705d855a4441ba8ed289c4f

Contents?: true

Size: 1.68 KB

Versions: 1

Compression:

Stored size: 1.68 KB

Contents

require 'rake/clean'

require 'rdoc/task'

require 'rubygems/package_task'


PKG_NAME = "ruby-gumbo"
PKG_VERSION = "1.0.2"

EXT_CONF = "ext/extconf.rb"
MAKEFILE = "ext/Makefile"
MODULE = "ext/gumbo.so"
SRC = Dir.glob("ext/*.c") << MAKEFILE

CLEAN.include [MODULE, "ext/*.o"]
CLOBBER.include ["ext/mkmf.log", "ext/extconf.h", MAKEFILE]

# Build
file MAKEFILE => EXT_CONF do |t|
  Dir::chdir(File::dirname(EXT_CONF)) do
    unless sh "ruby #{File::basename(EXT_CONF)}"
      $stderr.puts "extconf.rb failed"
      break
    end
  end
end

file MODULE => SRC do |t|
  Dir::chdir(File::dirname(EXT_CONF)) do
    unless sh "make"
      $stderr.puts "make failed"
      break
    end
  end
end

desc "Build the native library"
task :build => MODULE

# Documentation
RDOC_FILES = FileList["ext/gumbo.c", "lib/gumbo/extra.rb"]

Rake::RDocTask.new do |task|
  #task.main = "README.rdoc"
  task.rdoc_dir = "doc/api"
  task.rdoc_files.include(RDOC_FILES)
end

Rake::RDocTask.new(:ri) do |task|
  #task.main = "README.rdoc"
  task.rdoc_dir = "doc/ri"
  task.options << "--ri-system"
  task.rdoc_files.include(RDOC_FILES)
end

# Packaging
PKG_FILES = FileList["Rakefile", "LICENSE", "README.mkd",
                     "lib/gumbo/*.rb",
                     "ext/extconf.rb", "ext/*.[hc]"]

SPEC = Gem::Specification.new do |spec|
    spec.name = PKG_NAME
    spec.version = PKG_VERSION
    spec.summary = "Ruby bindings for the gumbo html5 parser"
    spec.author = "Nicolas Martyanoff"
    spec.email = "khaelin@gmail.com"
    spec.license = "ISC"

    spec.files = PKG_FILES
    spec.extensions = "ext/extconf.rb"

    spec.required_ruby_version = ">= 1.9.3"
end

Gem::PackageTask.new(SPEC) do |pkg|
    pkg.need_tar = true
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ruby-gumbo-1.0.2 Rakefile