$:.unshift( '.' )

require 'rubygems'

require 'rubygems/package_task' require 'rake/testtask'

require 'lib/mxx_ru/version'

spec = Gem::Specification.new do |s|

s.name = "Mxx_ru"
s.version = MXX_RU_VERSION
s.licenses = ['BSD-3-Clause']
s.author = "The Mxx_ru Project"
s.email = "eao197@yahoo.com"
s.homepage = "http://sourceforge.net/projects/mxxru"
s.platform = Gem::Platform::RUBY
s.summary = "Mxx_ru (Make++ on Ruby) is a cross-platform build tool"
s.description = "Mxx_ru is a cross-platform build tool primarily focused " +
  "to C/C++ projects"
s.files = FileList[ "{bin,tests,lib,docs,examples}/**/*" ].
    exclude( "rdoc" ).to_a + [ "THANKS" ]
s.executables = [ 'mxxrugen', 'mxxruexternals' ]
s.require_path = "lib"
s.rdoc_options = [ '--main', 'README' ]
s.extra_rdoc_files = [ "README", "Rakefile", "COPYING", "NEWS" ] + FileList[ "docs/**/*" ].to_a

end

gem = Gem::PackageTask.new( spec ) do |pkg|

pkg.need_zip = true
pkg.need_tar = true

end

test = Rake::TestTask.new do |t|

is_mswin = (/^mswin/ =~ RbConfig::CONFIG[ 'host_os' ] ||
     /^mingw/ =~ RbConfig::CONFIG[ 'host_os' ])
test_files = FileList[ 'tests/**/{tc,ts}*.rb' ]
# Visual C++ 8.0-9.0 specific files must be excluded when working with
# another compiler.
test_files = test_files.delete_if { |n| /\/vc[189]/ =~ n } unless
    /(mxx_ru\/cpp\/toolsets\/){0,1}vc[189]/ =~ ENV[ 'MXX_RU_CPP_TOOLSET' ]
# Visual C++ specific files must be excluded when working with
# another compiler.
test_files = test_files.delete_if { |n| /\/vc/ =~ n } unless
    /(mxx_ru\/cpp\/toolsets\/){0,1}vc\d/ =~ ENV[ 'MXX_RU_CPP_TOOLSET' ]
# MSWin specific files must be excluded if not Windows platform.
test_files = test_files.delete_if { |n| /mswin/ =~ n } unless is_mswin
# Unix specific files must be excluded on Windows platform.
test_files = test_files.delete_if { |n| /unix/ =~ n } if is_mswin
# Darwin specific files must be excluded if not MacOS platform.
test_files = test_files.delete_if { |n| /darwin/ =~ n } unless 
    /^darwin/ =~ RbConfig::CONFIG[ 'host_os' ]
t.test_files = test_files
t.verbose = true

end

task :default => [ gem.package_dir + “/” + gem.name + “.gem” ]