rake_wrapper.rb 630 B

123456789101112131415161718192021222324252627282930313233
  1. require 'rubygems'
  2. require 'rake'
  3. require 'makefile' # our replacement for rake's make-style dependency loader
  4. include Rake::DSL if defined?(Rake::DSL)
  5. class Rake::Task
  6. attr_reader :already_invoked
  7. end
  8. class RakeWrapper
  9. def initialize
  10. @makefile_loader = Rake::MakefileLoader.new # use our custom replacement noted above
  11. end
  12. def [](task)
  13. return Rake::Task[task]
  14. end
  15. def task_list
  16. return Rake::Task.tasks
  17. end
  18. def create_file_task(file_task, dependencies)
  19. file(file_task => dependencies)
  20. end
  21. def load_dependencies(dependencies_path)
  22. @makefile_loader.load(dependencies_path)
  23. end
  24. end