|
1 |
| -require 'rake/rdoctask' |
| 1 | +require 'rubygems' |
2 | 2 | require 'rake/testtask'
|
3 |
| -require 'rake/packagetask' |
4 |
| -require 'rake/gempackagetask' |
5 | 3 |
|
6 | 4 | require 'rbconfig'
|
7 | 5 | require 'fileutils'
|
8 | 6 |
|
9 |
| -$:.unshift 'lib' |
10 |
| - |
11 |
| -require 'mapi/msg' |
12 |
| - |
13 |
| -PKG_NAME = 'ruby-msg' |
14 |
| -PKG_VERSION = Mapi::VERSION |
| 7 | +spec = eval File.read('ruby-msg.gemspec') |
15 | 8 |
|
16 | 9 | task :default => [:test]
|
17 | 10 |
|
18 |
| -Rake::TestTask.new(:test) do |t| |
| 11 | +Rake::TestTask.new do |t| |
19 | 12 | t.test_files = FileList["test/test_*.rb"] - ['test/test_pst.rb']
|
20 | 13 | t.warning = false
|
21 | 14 | t.verbose = true
|
22 | 15 | end
|
23 | 16 |
|
24 | 17 | begin
|
25 |
| - require 'rcov/rcovtask' |
26 |
| - # NOTE: this will not do anything until you add some tests |
27 |
| - desc "Create a cross-referenced code coverage report" |
28 |
| - Rcov::RcovTask.new do |t| |
29 |
| - t.test_files = FileList['test/test*.rb'] |
30 |
| - t.ruby_opts << "-Ilib" # in order to use this rcov |
31 |
| - t.rcov_opts << "--xrefs" # comment to disable cross-references |
32 |
| - t.rcov_opts << "--exclude /usr/local/lib/site_ruby" |
| 18 | + Rake::TestTask.new(:coverage) do |t| |
| 19 | + t.test_files = FileList["test/test_*.rb"] - ['test/test_pst.rb'] |
| 20 | + t.warning = false |
33 | 21 | t.verbose = true
|
| 22 | + t.ruby_opts = ['-rsimplecov -e "SimpleCov.start; load(ARGV.shift)"'] |
34 | 23 | end
|
35 | 24 | rescue LoadError
|
36 |
| - # Rcov not available |
37 |
| -end |
38 |
| - |
39 |
| -Rake::RDocTask.new do |t| |
40 |
| - t.rdoc_dir = 'doc' |
41 |
| - t.title = "#{PKG_NAME} documentation" |
42 |
| - t.options += %w[--main README --line-numbers --inline-source --tab-width 2] |
43 |
| - t.rdoc_files.include 'lib/**/*.rb' |
44 |
| - t.rdoc_files.include 'README' |
| 25 | + # SimpleCov not available |
45 | 26 | end
|
46 | 27 |
|
47 |
| -spec = Gem::Specification.new do |s| |
48 |
| - s.name = PKG_NAME |
49 |
| - s.version = PKG_VERSION |
50 |
| - s.summary = %q{Ruby Msg library.} |
51 |
| - s.description = %q{A library for reading and converting Outlook msg and pst files (mapi message stores).} |
52 |
| - s.authors = ["Charles Lowe"] |
53 |
| - s.email = %q{aquasync@gmail.com} |
54 |
| - s.homepage = %q{http://code.google.com/p/ruby-msg} |
55 |
| - s.rubyforge_project = %q{ruby-msg} |
56 |
| - |
57 |
| - s.executables = ['mapitool'] |
58 |
| - s.files = FileList['data/*.yaml', 'Rakefile', 'README', 'FIXES'] |
59 |
| - s.files += FileList['lib/**/*.rb', 'test/test_*.rb', 'bin/*'] |
60 |
| - |
61 |
| - s.has_rdoc = true |
62 |
| - s.extra_rdoc_files = ['README'] |
63 |
| - s.rdoc_options += ['--main', 'README', |
64 |
| - '--title', "#{PKG_NAME} documentation", |
65 |
| - '--tab-width', '2'] |
66 |
| - |
67 |
| - s.add_dependency 'ruby-ole', '>=1.2.8' |
68 |
| - s.add_dependency 'vpim', '>=0.360' |
| 28 | +begin |
| 29 | + require 'rdoc/task' |
| 30 | + RDoc::Task.new do |t| |
| 31 | + t.rdoc_dir = 'doc' |
| 32 | + t.rdoc_files.include 'lib/**/*.rb' |
| 33 | + t.rdoc_files.include 'README', 'ChangeLog' |
| 34 | + t.title = "#{PKG_NAME} documentation" |
| 35 | + t.options += %w[--line-numbers --inline-source --tab-width 2] |
| 36 | + t.main = 'README' |
| 37 | + end |
| 38 | +rescue LoadError |
| 39 | + # RDoc not available or too old (<2.4.2) |
69 | 40 | end
|
70 | 41 |
|
71 |
| -Rake::GemPackageTask.new(spec) do |p| |
72 |
| - p.gem_spec = spec |
73 |
| - p.need_tar = false #true |
74 |
| - p.need_zip = false |
75 |
| - p.package_dir = 'build' |
| 42 | +begin |
| 43 | + require 'rubygems/package_task' |
| 44 | + Gem::PackageTask.new(spec) do |t| |
| 45 | + t.need_tar = true |
| 46 | + t.need_zip = false |
| 47 | + t.package_dir = 'build' |
| 48 | + end |
| 49 | +rescue LoadError |
| 50 | + # RubyGems too old (<1.3.2) |
76 | 51 | end
|
77 | 52 |
|
0 commit comments