Mercurial > hg > charamega
annotate Rakefile @ 13:21bc7e1d1429
Compiles with Mirah 0.1.0.
author | Mikhail Kryshen <mikhail@kryshen.net> |
---|---|
date | Tue, 05 Mar 2013 18:18:06 +0400 (2013-03-05) |
parents | 6e272c520bc6 |
children | 9726d78eb848 |
rev | line source |
---|---|
0 | 1 require 'mirah' |
1 | 2 require 'ant' |
0 | 3 require 'rake/clean' |
4 | |
5 SRC = FileList['src/**/*.mirah'] | |
1 | 6 |
7 CLEAN.include 'build/**/*.class' | |
10 | 8 CLEAN.include 'build/**/version.properties' |
1 | 9 CLEAN.include 'dist/*.jar' |
0 | 10 |
11 task :default => [:compile] | |
12 | |
13 task :compile => SRC do | |
1 | 14 Mirah::compile '--jvm', '1.6', '-d', 'build', *SRC |
10 | 15 |
12
6e272c520bc6
Read version information from .hg_archival.txt when available.
Mikhail Kryshen <mikhail@kryshen.net>
parents:
10
diff
changeset
|
16 begin |
6e272c520bc6
Read version information from .hg_archival.txt when available.
Mikhail Kryshen <mikhail@kryshen.net>
parents:
10
diff
changeset
|
17 hga = Hash[*File.read('.hg_archival.txt').split(/: |\n+/)] |
6e272c520bc6
Read version information from .hg_archival.txt when available.
Mikhail Kryshen <mikhail@kryshen.net>
parents:
10
diff
changeset
|
18 version = "#{hga['latesttag']}.#{hga['latesttagdistance']}" |
6e272c520bc6
Read version information from .hg_archival.txt when available.
Mikhail Kryshen <mikhail@kryshen.net>
parents:
10
diff
changeset
|
19 rescue Errno::ENOENT |
6e272c520bc6
Read version information from .hg_archival.txt when available.
Mikhail Kryshen <mikhail@kryshen.net>
parents:
10
diff
changeset
|
20 version = `hg log -r tip --template "{latesttag}.{latesttagdistance}"` |
6e272c520bc6
Read version information from .hg_archival.txt when available.
Mikhail Kryshen <mikhail@kryshen.net>
parents:
10
diff
changeset
|
21 end |
6e272c520bc6
Read version information from .hg_archival.txt when available.
Mikhail Kryshen <mikhail@kryshen.net>
parents:
10
diff
changeset
|
22 |
10 | 23 File.open('build/net/kryshen/charamega/version.properties', 'w') do |f| |
24 f.write "version = #{version}\n" | |
25 end | |
0 | 26 end |
27 | |
28 task :run => [:compile] do | |
29 sh 'java -cp build:res net/kryshen/charamega/Ui' | |
30 end | |
1 | 31 |
32 task :jar => [:compile] do | |
33 ant.jar :jarfile => 'dist/charamega.jar' do | |
34 fileset :dir => 'build' | |
35 fileset :dir => 'res' | |
36 manifest do | |
37 attribute :name => 'Main-Class', :value => 'net.kryshen.charamega.Ui' | |
38 end | |
39 end | |
40 end |