Hi.
I have been trying the following:
A master file in ex: C:\Master\Rakefile.rb
... with the contents:
require "rake"
task :default => [:master_build]
ns = namespace "sub1" do
puts "Importing sub1."
import Dir.pwd + "/Sub1/Rakefile.rb"
puts "sub1 imported."
end
task :master_build => [:build_dependencies] do
puts "task :master_build run."
end
task :build_dependencies do
#Add ns["build"] as prerequisite
puts "task :build_dependencies run."
End
And a sub-project in ex: C:\Master\Sub1\Rakefile.rb
... with the contents:
require "rake"
task :default => [:build]
task :build do
puts "task :build run."
puts "Current directory: #{Dir.pwd}"
end
Now initially what goes wrong is that the task :default contains 2
prerequisites after the Sub1\Rakefile.rb is loaded. The result is that
invoking the :default task of the master also invokes the :default task
of the sub.
Second the Sub1\Rakefile.rb should be run in its own context i.e. with
Dir.pwd set to C:\Master\Sub1\
Was this what you had in mind Torsten?
/Jesper
_______________________________________________
Rake-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rake-devel