Browse files

Added rake task build:load_order to regenerate .load_order.txt's

* Updated README-DEVELOPERS to describe adding a class to kernel
* Created rake task build:load_order to regenerate the runtime
.load_order.txt files.
  • Loading branch information...
agardiner committed Nov 30, 2007
1 parent 70ff8ff commit 5f864f55ec6dbb856b472ecf6f30a8e0667b2234
Showing with 19 additions and 3 deletions.
  2. +9 −0 Rakefile
@@ -16,7 +16,14 @@
* spec/ and test/ contain tests for verifying that Rubinius implements Ruby.
-2. Primitives
+2. Kernel Classes
+If you create a new file in one of the kernel subdirectories, it will be necessary
+to regenerate the .load_order.txt file in the equivalent runtime subdirectory in
+order to get your class loaded when Rubinius starts up. Use the rake task
+build:load_order to regenerate the .load_order.txt files.
+3. Primitives
To add a primitive:
@@ -30,15 +37,15 @@ If your primitive takes variable arguments, you need to provide a wrapper
method that calls the primitive. For example Dir::glob calls
-3. gdb
+4. gdb
You can run shotgun/rubinius with gdb.
* Run `shotgun/rubinius --gdb`
* Hit ^C to interrupt
* Type 'rbt' at the gdb prompt to get a ruby backtrace
-4. Specifications
+5. Specifications
RSpec is the machinery behind executing these specs. The intention is to have
specs for Ruby as a language and set of standard libraries, and to TDD/BDD the
@@ -178,6 +178,9 @@ class CodeGroup
file @load_order do
create_load_order(@files, @load_order)
+ task "build:load_order" do
+ create_load_order(@files, @load_order)
+ end
@output << @load_order
@@ -469,6 +472,12 @@ RbConfig = Config
+ desc "Rebuild the .load_order.txt files"
+ task "load_order" do
+ # Note: Steps to rebuild load_order were defined above
+ puts "Run rake:build to rebuild .rbc files according to dependency order"
+ end
task :core => :rbc do
raise "OBSOLETE. Use 'rake build'"

0 comments on commit 5f864f5

Please sign in to comment.