Rakefile in rhubarb-0.2.0 vs Rakefile in rhubarb-0.2.1
- old
+ new
@@ -1,8 +1,25 @@
require 'rubygems'
require 'rake'
+begin
+ require 'metric_fu'
+ MetricFu::Configuration.run do |config|
+ #define which metrics you want to use
+ config.metrics = [:flog, :flay, :reek, :roodi]
+ config.graphs = [:flog, :flay, :reek, :roodi]
+ config.flay = { :dirs_to_flay => ['lib'],
+ :minimum_score => 10 }
+ config.flog = { :dirs_to_flog => ['lib'] }
+ config.reek = { :dirs_to_reek => ['lib'] }
+ config.roodi = { :dirs_to_roodi => ['lib'] }
+ config.graph_engine = :bluff
+ end
+rescue LoadError
+ nil
+end
+
begin
require 'jeweler'
Jeweler::Tasks.new do |gem|
gem.name = "rhubarb"
gem.summary = %Q{Rhubarb: object graph persistence, easy as pie}
@@ -20,9 +37,68 @@
end
def pkg_version
version = File.exist?('VERSION') ? File.read('VERSION') : ""
return version.chomp
+end
+
+def pkg_version
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
+ return version.chomp
+end
+
+def pkg_name
+ return 'ruby-rhubarb'
+end
+
+def pkg_spec
+ return pkg_name() + ".spec"
+end
+
+def pkg_rel
+ return `grep -i 'define rel' #{pkg_spec} | awk '{print $3}'`.chomp()
+end
+
+def pkg_source
+ return pkg_name() + "-" + pkg_version() + "-" + pkg_rel() + ".tar.gz"
+end
+
+def pkg_dir
+ return pkg_name() + "-" + pkg_version()
+end
+
+def rpm_dirs
+ return %w{BUILD BUILDROOT RPMS SOURCES SPECS SRPMS}
+end
+
+desc "create RPMs"
+task :rpms => [:build, :tarball] do
+ require 'fileutils'
+ FileUtils.cp pkg_spec(), 'SPECS'
+ sh "rpmbuild --define=\"_topdir \${PWD}\" -ba SPECS/#{pkg_spec}"
+end
+
+desc "Create a tarball"
+task :tarball => :make_rpmdirs do
+ require 'fileutils'
+ FileUtils.cp_r 'lib', pkg_dir()
+ FileUtils.cp ['LICENSE', 'README.rdoc', 'CHANGES', 'TODO', 'VERSION'], pkg_dir()
+ sh "tar -cf #{pkg_source} #{pkg_dir}"
+ FileUtils.mv pkg_source(), 'SOURCES'
+end
+
+desc "Make dirs for building RPM"
+task :make_rpmdirs => :rpm_clean do
+ require 'fileutils'
+ FileUtils.mkdir pkg_dir()
+ FileUtils.mkdir rpm_dirs()
+end
+
+desc "Cleanup after an RPM build"
+task :rpm_clean do
+ require 'fileutils'
+ FileUtils.rm_r pkg_dir(), :force => true
+ FileUtils.rm_r rpm_dirs(), :force => true
end
require 'spec/rake/spectask'
Spec::Rake::SpecTask.new(:spec) do |spec|
spec.libs << 'lib' << 'spec'