[macruby-changes] [286] MacRuby/trunk/Rakefile

source_changes at macosforge.org source_changes at macosforge.org
Thu Jun 12 15:00:00 PDT 2008


Revision: 286
          http://trac.macosforge.org/projects/ruby/changeset/286
Author:   eloy.de.enige at gmail.com
Date:     2008-06-12 14:59:59 -0700 (Thu, 12 Jun 2008)

Log Message:
-----------
Removed unnessecary FileUtils prefix. Moved groups into namespaces. Small cleanups.

Modified Paths:
--------------
    MacRuby/trunk/Rakefile

Modified: MacRuby/trunk/Rakefile
===================================================================
--- MacRuby/trunk/Rakefile	2008-06-12 19:39:19 UTC (rev 285)
+++ MacRuby/trunk/Rakefile	2008-06-12 21:59:59 UTC (rev 286)
@@ -82,14 +82,14 @@
   def link_archive(name, objs=nil)
     objs ||= @objs
     if should_link?(name, objs)
-      FileUtils.rm_f(name)
+      rm_f(name)
       sh("/usr/bin/ar rcu #{name} #{objs.map { |x| x + '.o' }.join(' ') }")
       sh("/usr/bin/ranlib #{name}")
     end
   end
 
   def clean
-    @objs.map { |o| o + '.o' }.select { |o| File.exist?(o) }.each { |o| FileUtils.rm_f(o) }
+    @objs.map { |o| o + '.o' }.select { |o| File.exist?(o) }.each { |o| rm_f(o) }
   end
  
   private
@@ -177,7 +177,7 @@
 $builder = Builder.new(OBJS)
 
 desc "Same as all"
-task :default => [:all]
+task :default => :all
 
 desc "Create config.h"
 task :config_h do
@@ -204,34 +204,34 @@
     if !File.exist?(config_h) or File.read(config_h) != new_config_h
       File.open(config_h, 'w') { |io| io.print new_config_h }
       ext_dir = ".ext/include/#{NEW_RUBY_PLATFORM}/ruby"
-      FileUtils.mkdir_p(ext_dir)
-      FileUtils.cp(config_h, ext_dir)
+      mkdir_p(ext_dir)
+      cp(config_h, ext_dir)
     end
   end
 end
 
 desc "Build known objects"
-task :objects => [:config_h] do
+task :objects => :config_h do
   sh "/usr/bin/ruby -I. tool/compile_prelude.rb prelude.rb miniprelude.c.new"
   if !File.exist?('miniprelude.c') or File.read('miniprelude.c') != File.read('miniprelude.c.new')
-    FileUtils.mv('miniprelude.c.new', 'miniprelude.c')
+    mv('miniprelude.c.new', 'miniprelude.c')
   else
-    FileUtils.rm('miniprelude.c.new')
+    rm('miniprelude.c.new')
   end
   if !File.exist?('prelude.c')
-    FileUtils.touch('prelude.c') # create empty file nevertheless
+    touch('prelude.c') # create empty file nevertheless
   end
   if !File.exist?('parse.c') or File.mtime('parse.y') > File.mtime('parse.c')
     sh("/usr/bin/bison -o y.tab.c parse.y")
     sh("/usr/bin/sed -f ./tool/ytab.sed -e \"/^#/s!y\.tab\.c!parse.c!\" y.tab.c > parse.c.new")
     if !File.exist?('parse.c') or File.read('parse.c.new') != File.read('parse.c')
-      FileUtils.mv('parse.c.new', 'parse.c')
+      mv('parse.c.new', 'parse.c')
     else
-      FileUtils.rm('parse.c.new')
+      rm('parse.c.new')
     end
   end
   if !File.exist?('lex.c') or File.read('lex.c') != File.read('lex.c.blt')
-    FileUtils.cp('lex.c.blt', 'lex.c')
+    cp('lex.c.blt', 'lex.c')
   end
   inc_to_gen = %w{opt_sc.inc optinsn.inc optunifs.inc insns.inc insns_info.inc vmtc.inc vm.inc}.select { |inc| !File.exist?(inc) or File.mtime("template/#{inc}.tmpl") > File.mtime(inc) }
   unless inc_to_gen.empty?
@@ -244,12 +244,12 @@
 end
 
 desc "Create miniruby"
-task :miniruby => [:objects] do
+task :miniruby => :objects do
   $builder.link_executable('miniruby', OBJS - ['prelude'])
 end
 
 desc "Create config file"
-task :rbconfig => [:miniruby] do
+task :rbconfig => :miniruby do
   rbconfig = <<EOS
 # This file was created when MacRuby was built.  Any changes made to this file 
 # will be lost the next time MacRuby is built.
@@ -447,34 +447,36 @@
   end
 end
 
-desc "Build dynamic libraries for MacRuby"
-task :macruby_dylib => [:rbconfig, :miniruby] do
-  sh("./miniruby -I. -I./lib -rrbconfig tool/compile_prelude.rb prelude.rb gem_prelude.rb prelude.c.new")
-  if !File.exist?('prelude.c') or File.read('prelude.c') != File.read('prelude.c.new')
-    FileUtils.mv('prelude.c.new', 'prelude.c')
-    $builder.build(['prelude'])
-  else
-    FileUtils.rm('prelude.c.new')
-  end
-  dylib = "lib#{RUBY_SO_NAME}.#{NEW_RUBY_VERSION}.dylib"
-  $builder.link_dylib(dylib, $builder.objs - ['main', 'gc-stub', 'miniprelude'])
-  major, minor, teeny = NEW_RUBY_VERSION.scan(/\d+/)
-  ["lib#{RUBY_SO_NAME}.#{major}.#{minor}.dylib", "lib#{RUBY_SO_NAME}.dylib"].each do |dylib_alias|
-    if !File.exist?(dylib_alias) or File.readlink(dylib_alias) != dylib  
-      FileUtils.rm_f(dylib_alias)
-      FileUtils.ln_s(dylib, dylib_alias)
+namespace :macruby do
+  desc "Build dynamic libraries for MacRuby"
+  task :dylib => [:rbconfig, :miniruby] do
+    sh("./miniruby -I. -I./lib -rrbconfig tool/compile_prelude.rb prelude.rb gem_prelude.rb prelude.c.new")
+    if !File.exist?('prelude.c') or File.read('prelude.c') != File.read('prelude.c.new')
+      mv('prelude.c.new', 'prelude.c')
+      $builder.build(['prelude'])
+    else
+      rm('prelude.c.new')
     end
+    dylib = "lib#{RUBY_SO_NAME}.#{NEW_RUBY_VERSION}.dylib"
+    $builder.link_dylib(dylib, $builder.objs - ['main', 'gc-stub', 'miniprelude'])
+    major, minor, teeny = NEW_RUBY_VERSION.scan(/\d+/)
+    ["lib#{RUBY_SO_NAME}.#{major}.#{minor}.dylib", "lib#{RUBY_SO_NAME}.dylib"].each do |dylib_alias|
+      if !File.exist?(dylib_alias) or File.readlink(dylib_alias) != dylib  
+        rm_f(dylib_alias)
+        ln_s(dylib, dylib_alias)
+      end
+    end
   end
-end
 
-desc "Build static libraries for MacRuby"
-task :macruby_static => [:macruby_dylib] do
-  $builder.link_archive("lib#{RUBY_SO_NAME}-static.a", $builder.objs - ['main', 'gc-stub', 'miniprelude'])
-end
+  desc "Build static libraries for MacRuby"
+  task :static => :dylib do
+    $builder.link_archive("lib#{RUBY_SO_NAME}-static.a", $builder.objs - ['main', 'gc-stub', 'miniprelude'])
+  end
 
-desc "Build MacRuby"
-task :macruby => [:macruby_dylib] do
-  $builder.link_executable(RUBY_INSTALL_NAME, ['main', 'gc-stub'], "-L. -l#{RUBY_SO_NAME}")
+  desc "Build MacRuby"
+  task :build => :dylib do
+    $builder.link_executable(RUBY_INSTALL_NAME, ['main', 'gc-stub'], "-L. -l#{RUBY_SO_NAME}")
+  end
 end
 
 DESTDIR = (ENV['DESTDIR'] or "")
@@ -485,13 +487,14 @@
 INSTRUBY_ARGS = "#{SCRIPT_ARGS} --data-mode=0644 --prog-mode=0755 --installed-list #{INSTALLED_LIST} --mantype=\"doc\""
 
 desc "Build extensions"
-task :extensions => [:miniruby, :macruby_static] do
-  sh("./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ext/extmk.rb #{EXTMK_ARGS}")
+task :extensions => [:miniruby, "macruby:static"] do
+  sh "./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ext/extmk.rb #{EXTMK_ARGS}"
 end
 
-desc "Create the plist file for the framework"
-task :framework_info_plist do
-  plist = <<EOS
+namespace :framework do
+  desc "Create the plist file for the framework"
+  task :info_plist do
+    plist = <<EOS
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
@@ -523,37 +526,46 @@
 </dict>
 </plist>
 EOS
-  File.open('framework/Info.plist', 'w') { |io| io.print plist }
-end
+    File.open('framework/Info.plist', 'w') { |io| io.print plist }
+  end
 
-desc "Install the framework"
-task :install =>[:framework_info_plist] do
-  sh("./miniruby instruby.rb #{INSTRUBY_ARGS}")  
+  desc "Install the framework"
+  task :install => :info_plist do
+    sh "./miniruby instruby.rb #{INSTRUBY_ARGS}"
+  end
 end
 
-desc "Clean local build files"
-task :clean_local do
-  $builder.clean
-  ['parse.c', 'lex.c', INSTALLED_LIST].each { |x| FileUtils.rm_f(x) }
-end
+namespace :clean do
+  desc "Clean local build files"
+  task :local do
+    $builder.clean
+    ['parse.c', 'lex.c', INSTALLED_LIST, *Dir['*.inc']].each { |x| rm_f(x) }
+  end
 
-desc "Clean extension build files"
-task :clean_ext do
-  if File.exist?('./miniruby') 
-    sh("./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ext/extmk.rb #{EXTMK_ARGS} -- clean")
+  desc "Clean extension build files"
+  task :ext do
+    if File.exist?('./miniruby') 
+      sh "./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ext/extmk.rb #{EXTMK_ARGS} -- clean"
+    end
   end
 end
 
+desc "Same as framework:install"
+task :framework => 'framework:install'
+
+desc "Same as macruby:build"
+task :macruby => 'macruby:build'
+
 desc "Run the sample tests"
 task :sample_test do
-  sh("./miniruby rubytest.rb")
+  sh "./miniruby rubytest.rb"
 end
 
 desc "Clean local and extension build files"
-task :clean => [:clean_local, :clean_ext]
+task :clean => ['clean:local', 'clean:ext']
 
 desc "Build MacRuby and extensions"
 task :all => [:macruby, :extensions]
 
 desc "Same as sample_test"
-task :test => [:sample_test]
+task :test => :sample_test

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macruby-changes/attachments/20080612/e59e6214/attachment-0001.htm 


More information about the macruby-changes mailing list