diff --git a/Rakefile b/Rakefile index 227d1d5d5..9396b8cd1 100644 --- a/Rakefile +++ b/Rakefile @@ -67,3 +67,31 @@ task :deep_clean => %w[clean doc:clean] do end puts "Cleaned up mrbgems build folder" end + +PREFIX = ENV['PREFIX'] || ENV['INSTALL_PREFIX'] || '/usr/local' + +desc "install compiled products" +task :install => :install_bin do + if host = MRuby.targets['host'] + install_D host.libmruby_static, File.join(PREFIX, "lib", File.basename(host.libmruby_static)) + # install mruby.h and mrbconf.h + Dir.glob(File.join(MRUBY_ROOT, "include", "*.h")) do |src| + install_D src, File.join(PREFIX, "include", File.basename(src)) + end + Dir.glob(File.join(MRUBY_ROOT, "include", "mruby", "*.h")) do |src| + install_D src, File.join(PREFIX, "include", "mruby", File.basename(src)) + end + Dir.glob(File.join(File.join(MRUBY_ROOT, "build", "host", "include", "mruby", "presym", "*.h"))) do |src| + install_D src, File.join(PREFIX, "include", "mruby", "presym", File.basename(src)) + end + end +end + +desc "install compiled executable (on host)" +task :install_bin => :all do + if host = MRuby.targets['host'] + Dir.glob(File.join(MRUBY_ROOT, "bin", "*")) do |src| + install_D src, File.join(PREFIX, "bin", File.basename(src)) + end + end +end