source: ruby/trunk/lib/adl_parser/Rakefile@ 283

Last change on this file since 283 was 283, checked in by Tatsukawa, Akimichi, 15 years ago

Scanners for ADL parser do not need yaparc library any more

File size: 2.4 KB
Line 
1require 'rubygems'
2require 'rake'
3require 'rake/testtask'
4require 'rake/rdoctask'
5require 'rake/clean'
6require 'rake/gempackagetask'
7require 'yaml'
8
9$DEBUG = false
10
11RACC_SRC = FileList["lib/*.y"]
12RACC_PARSER = FileList['lib/parser.rb']
13RB_SRC = FileList["lib/*.rb"]
14TAGS = FileList['TAGS']
15
16task :default => [:racc]
17
18desc "Generate parser by racc."
19task :racc => RACC_PARSER
20rule '.rb' => '.y' do |target|
21 if $DEBUG == true
22 sh "racc -v -g #{target.source} -o #{target.name}"
23 else
24 sh "racc #{target.source} -o #{target.name}"
25 end
26end
27
28desc "Generate TAGS by rtags."
29task :tags => TAGS
30rule 'TAGS' => RB_SRC do |target|
31 sh "rtags #{target.prerequisites.join(' ')}"
32end
33
34
35desc "Whole Unit tests"
36task 'test' => ['test:shell', 'test:validator', 'test:parser', 'test:scanner']
37
38
39Rake::TestTask.new('test:shell') do |t|
40 t.libs = ["lib"]
41 t.pattern = ['test/shell_test.rb']
42 t.warning = true
43 t.verbose = true
44end
45
46Rake::TestTask.new('test:validator') do |t|
47 t.libs = ["lib"]
48 t.pattern = ['test/validator_test.rb']
49 t.warning = true
50 t.verbose = true
51end
52
53Rake::TestTask.new('test:parser') do |t|
54 t.libs = ["lib"]
55 t.pattern = ['test/parser_test.rb']
56 t.warning = true
57 t.verbose = true
58end
59
60Rake::TestTask.new('test:scanner') do |t|
61 t.libs = ["lib"]
62 t.pattern = ['test/scanner_test.rb']
63 t.warning = true
64 t.verbose = true
65end
66
67
68Rake::RDocTask.new('rdoc') do |t|
69 t.rdoc_dir = 'rdoc'
70 t.rdoc_files.include('README', 'lib/*.rb', 'bin/*.rb')
71 t.main = 'README'
72 t.title = "ADL parser API documentation"
73end
74
75gem_spec = Gem::Specification.new do |s|
76 s.name = 'adl_parser'
77 s.author = 'Akimichi Tatsukawa'
78 s.version = '0.0.4'
79 s.summary = 'ADL parser'
80 s.email = 'akimichi.tatsukawa@gmail.com'
81 s.test_files = FileList['test/*_test.rb', '*.adl']
82 candidates = Dir.glob("{bin,docs,lib,test,ext}/**/*")
83 s.files = candidates.delete_if do |item|
84 item.include?(".svn") || item.include?("rdoc") || item.include?("log")
85 end
86 s.files = FileList['README', 'COPYING', 'Rakefile']
87 s.require_path = "lib"
88 s.has_rdoc = true
89 s.extra_rdoc_files = ["README"]
90# s.add_dependency("yaparc", ">= 0.2.3")
91 s.add_dependency("openehr_models", ">= 0.0.3")
92end
93
94Rake::GemPackageTask.new(gem_spec) do |pkg|
95 pkg.need_zip = false
96 pkg.need_tar = false
97end
98
99
100CLOBBER.include('rdoc')
101CLEAN.include('lib/*.output', 'log/*.log')
102
103
104### Local Variables:
105### mode:ruby
106### mode:font-lock
107### comment-column:0
108### comment-start: "### "
109### comment-end:""
110### End:
111
112
Note: See TracBrowser for help on using the repository browser.