Sha256: 2477da9a2fab4b9d0a2430c1e972f1d70d590e9bdbdf41392655270df4a324bd

Contents?: true

Size: 1.52 KB

Versions: 1

Compression:

Stored size: 1.52 KB

Contents

require 'rake'
require 'rake/clean'
require 'rake/testtask'
require 'rbconfig'
include Config

desc "Clean the build files for the sys-admin source for UNIX systems"
task :clean do
   Dir.chdir('ext') do
      unless RUBY_PLATFORM.match('mswin')
         FileUtils.rm_rf('sys') if File.exists?('sys')
         build_file = 'admin.' + Config::CONFIG['DLEXT']
         sh 'make distclean' if File.exists?(build_file)
      end
   end
end

desc "Build the sys-admin package on UNIX systems (but don't install it)"
task :build => [:clean] do
   Dir.chdir('ext') do
      unless RUBY_PLATFORM.match('mswin')
         ruby 'extconf.rb'
         sh 'make'
         build_file = 'admin.' + Config::CONFIG['DLEXT']
         Dir.mkdir('sys') unless File.exists?('sys')
         FileUtils.cp(build_file, 'sys')
      end
   end
end

if RUBY_PLATFORM.match('mswin')
   desc "Install the sys-admin package for MS Windows"
   task :install do
      install_dir = File.join(CONFIG['sitelibdir'], 'sys')
      Dir.mkdir(install_dir) unless File.exists?(install_dir)
      FileUtils.cp('lib/sys/admin.rb', install_dir, :verbose => true)
   end
else
   desc "Install the sys-admin package for Unix platforms"
   task :install => [:build] do
      Dir.chdir('ext') do
         sh 'make install'
      end
   end
end

desc "Run the test suite"
Rake::TestTask.new("test") do |t|
   if RUBY_PLATFORM.match('mswin')
      t.libs << 'lib'
   else
      task :test => :build
      t.libs << 'ext'
      t.libs.delete('lib')
   end
   t.test_files = FileList['test/tc_admin.rb']
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
sys-admin-1.4.2 Rakefile