mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
25 lines
670 B
Ruby
25 lines
670 B
Ruby
|
require 'rake/file_task'
|
||
|
require 'rake/early_time'
|
||
|
|
||
|
module Rake
|
||
|
|
||
|
# A FileCreationTask is a file task that when used as a dependency will be
|
||
|
# needed if and only if the file has not been created. Once created, it is
|
||
|
# not re-triggered if any of its dependencies are newer, nor does trigger
|
||
|
# any rebuilds of tasks that depend on it whenever it is updated.
|
||
|
#
|
||
|
class FileCreationTask < FileTask
|
||
|
# Is this file task needed? Yes if it doesn't exist.
|
||
|
def needed?
|
||
|
! File.exist?(name)
|
||
|
end
|
||
|
|
||
|
# Time stamp for file creation task. This time stamp is earlier
|
||
|
# than any other time stamp.
|
||
|
def timestamp
|
||
|
Rake::EARLY
|
||
|
end
|
||
|
end
|
||
|
|
||
|
end
|