# File sprout/lib/sprout/tasks/tool_task.rb, line 557
    def setup_preprocessing_file_tasks(input_file, output_file)
      return if(File.directory?(input_file))
      CLEAN.add(belongs_to.preprocessed_path) if(!CLEAN.index(belongs_to.preprocessed_path))
      
      file input_file
      file output_file => input_file do
        dir = File.dirname(output_file)
        if(!File.exists?(dir))
          FileUtils.mkdir_p(dir)
        end
        File.open(input_file, 'r') do |readable|
          File.open(output_file, 'w+') do |writable|
            if(text_file?(input_file))
              preprocess_content(readable, writable, belongs_to.preprocessor, input_file)
            else
              writable.write(readable.read)
            end
          end
        end
      end
      belongs_to.prerequisites << output_file
    end