lib/rscons.rb in rscons-0.0.7 vs lib/rscons.rb in rscons-0.0.8

- old
+ new

@@ -20,6 +20,22 @@ Program, ] class BuildError < Exception end + + # Remove all generated files + def self.clean + cache = Cache.new + # remove all built files + cache.targets.each do |target| + FileUtils.rm_f(target) + end + # remove all created directories if they are empty + cache.directories.sort {|a, b| b.size <=> a.size}.each do |directory| + if (Dir.entries(directory) - ['.', '..']).empty? + Dir.rmdir(directory) rescue nil + end + end + Cache.clear + end end