qasim/Rakefile

125 lines
2.1 KiB
Ruby

NAME="qasim"
DESTDIR=""
DEV_DESTDIR="tmp"
CONFDIR="#{DESTDIR}/etc"
BINDIR="#{DESTDIR}/usr/bin"
MANDIR="#{DESTDIR}/usr/share/man"
DOCDIR="#{DESTDIR}/usr/share/doc"
SHAREDIR="#{DESTDIR}/usr/share"
RUBYVERSION="2.0"
RDOC="rdoc#{RUBYVERSION}"
QRC_FILES=Dir.glob("lib/#{NAME}/*.qrc")
RBQRC_FILES=QRC_FILES.map{ |f| f.sub(/\.qrc$/,'_qrc.rb') }
UI_FILES=Dir.glob("lib/#{NAME}/ui/*.ui")
RBUI_FILES=UI_FILES.map{ |f| f.sub(/\.ui$/,'_ui.rb') }
require 'rake'
#Rake.application.options.trace_rules = true
desc "Do everything"
task :all => [:build, :install]
desc "Clean everything"
task :clean => [
:"ui:clean",
:"qrc:clean",
#:clean_bin,
#:clean_lib,
#:clean_data,
:"gem:clean"
]
desc "Build everything"
task :build => [
:"ui:build",
:"qrc:build",
#:build_bin,
#:build_lib,
#:build_data,
:"gem:build"
]
desc "Install everything"
task :install => [
#:"ui:install",
#:"qrc:install",
#:install_bin,
#:install_lib,
#:install_data
]
desc "Build documentation"
task :doc => [:build_doc]
task :clean_doc do
rm_rf doc
end
task :build_doc => :clean_doc do
sh %Q{#{RDOC}
--promiscuous
--inline-source
--line-numbers
-o doc lib/$(NAME)/
bin/
}
end
namespace :qrc do
desc "Clean QRC files"
task :clean do
rm_rf RBQRC_FILES
end
desc "Build QRC files"
task :build => RBQRC_FILES do
puts RBQRC_FILES
end
rule "_qrc.rb" => lambda{|f| f.gsub(/_qrc\.rb/,'.qrc') } do |t|
sh %Q{rbrcc #{t.source} -o #{t.name}}
end
end
namespace :ui do
desc "Clean UI files"
task :clean do
rm_rf RBUI_FILES
end
desc "Build UI files"
task :build => RBUI_FILES do
puts RBQRC_FILES
end
rule "_ui.rb" => lambda{|f| f.gsub(/_ui\.rb/,'.ui') } do |t|
sh %Q{rbuic4 #{t.source} -o #{t.name}}
sh %Q{sed -e '/^module Ui/,/^end # module Ui/d' -i #{t.name}}
end
end
namespace :gem do
require "bundler/gem_tasks"
desc "Clean stalling gem files from the pkg directory"
task :clean do
rm_rf Dir.glob('pkg/*.gem')
end
end
require "bundler/gem_tasks"
require 'rake/testtask'
Rake::TestTask.new do |t|
#t.warning = true
#t.verbose = true
t.libs << "spec"
t.test_files = FileList['spec/**/*_spec.rb']
end