public
Description: embedding Lua in Ruby, via FFI
Homepage: http://rufus.rubyforge.org
Clone URL: git://github.com/jmettraux/rufus-lua.git
jmettraux (author)
Tue Sep 29 21:26:30 -0700 2009
commit  ec550f9bac9aac87f15673e3a205f36e73f79826
tree    797b7b571439a51fc310948dff18863ea540f50e
parent  24f00703629bb23261b2d1c1b470cb1cf10d550f
rufus-lua / Rakefile
100644 106 lines (72 sloc) 1.597 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
require 'rubygems'
 
require 'fileutils'
require 'rake'
require 'rake/clean'
require 'rake/packagetask'
require 'rake/gempackagetask'
require 'rake/testtask'
 
 
gemspec = File.read('rufus-lua.gemspec')
eval "gemspec = #{gemspec}"
 
#task :gemspec do
# File.open('rufus-lua.gemspec', 'w') do |f|
# f.write(gemspec.to_ruby)
# end
#end
 
 
#
# tasks
 
CLEAN.include('pkg', 'tmp', 'html')
 
task :default => [ :clean, :repackage ]
 
 
#
# SPECING
 
task :spec do
  load File.join(File.dirname(__FILE__), 'spec', 'spec.rb')
end
 
 
#
# TESTING
 
task :test => :spec
 
 
#
# VERSION
 
task :change_version do
 
  version = ARGV.pop
  `sedip "s/VERSION = '.*'/VERSION = '#{version}'/" lib/rufus/lua/state.rb`
  `sedip "s/s.version = '.*'/s.version = '#{version}'/" rufus-lua.gemspec`
  exit 0 # prevent rake from triggering other tasks
end
 
 
#
# PACKAGING
 
Rake::GemPackageTask.new(gemspec) do |pkg|
  #pkg.need_tar = true
end
 
Rake::PackageTask.new('rufus-lua', gemspec.version) do |pkg|
 
  pkg.need_zip = true
  pkg.package_files = FileList[
    'Rakefile',
    '*.txt',
    'lib/**/*',
    'spec/**/*',
    'test/**/*'
  ].to_a
  #pkg.package_files.delete("MISC.txt")
  class << pkg
    def package_name
      "#{@name}-#{@version}-src"
    end
  end
end
 
 
#
# DOCUMENTATION
 
task :rdoc do
  sh %{
rm -fR rdoc
yardoc 'lib/**/*.rb' \
-o html/rufus-lua \
--title 'rufus-lua'
}
end
 
 
#
# WEBSITE
 
task :upload_website => [ :clean, :rdoc ] do
 
  account = 'jmettraux@rubyforge.org'
  webdir = '/var/www/gforge-projects/rufus'
 
  sh "rsync -azv -e ssh html/rufus-lua #{account}:#{webdir}/"
end