Class: Rake::Delphi::Project
- Inherits:
-
Task
- Object
- Task
- Rake::Delphi::Project
show all
- Defined in:
- lib/rake/delphi/project.rb
Instance Attribute Summary collapse
Attributes inherited from Task
#logger
Instance Method Summary
collapse
Methods inherited from Task
#execute, #execute_base, #initialize_base, #needed=, #needed?, #out, #reenable_chain, #shortname, #trace?
Constructor Details
#initialize(name, app) ⇒ Project
Returns a new instance of Project.
17
18
19
20
21
22
23
24
25
|
# File 'lib/rake/delphi/project.rb', line 17
def initialize(name, app)
super
initvars
@dcc = application.define_task(Dcc32Task, shortname + ':dcc32')
@libs = LibsTask.define(name + ':all-delphi-libs', application)
@post = application.define_task(PAClientTask, @dcc.shortname + ':post')
@level = 1
enhance([@libs, @dcc, @post])
end
|
Instance Attribute Details
#properties ⇒ Object
Returns the value of attribute properties.
15
16
17
|
# File 'lib/rake/delphi/project.rb', line 15
def properties
@properties
end
|
Instance Method Details
#[](key) ⇒ Object
64
65
66
|
# File 'lib/rake/delphi/project.rb', line 64
def [](key)
return @properties[key]
end
|
#[]=(key, value) ⇒ Object
60
61
62
|
# File 'lib/rake/delphi/project.rb', line 60
def []=(key, value)
@properties[key.to_sym] = value
end
|
#init(module_name, rake_file, vars, level = 1) ⇒ Object
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
# File 'lib/rake/delphi/project.rb', line 43
def init(module_name, rake_file, vars, level = 1)
@level = level
module_name = module_name.dup.shift.to_s
self[:projectlabel] = eval("#{module_name}::PROJECT_NAME")
projectfile = eval("#{module_name}::PROJECT_FILE")
self[:projectfile] = File.dirname2(rake_file) + File.separator + projectfile
self[:sourcename] = File.dirname2(rake_file)
@cdir = File.dirname(rake_file)
self[:systempath] = @cdir + '/' + projectfile
self[:altercfg].prepend(self[:sourcename] + '/') if self[:altercfg]
[:version, :bin, :build, :dcu, :alldebuginfo, :map, :defines, :releaseCandidate].each do |k|
self[k] = vars[k] if vars.has_key?(k)
end if vars
@dcc.init(@properties)
end
|
#init_libs ⇒ Object
37
38
39
40
41
|
# File 'lib/rake/delphi/project.rb', line 37
def init_libs
self[:includepaths] = ['.'] unless self[:includepaths]
self[:includepaths] |= @libs.libs_relative(@level)
@dcc.init_libs(self[:includepaths])
end
|
#initvars ⇒ Object
27
28
29
30
31
32
33
34
35
|
# File 'lib/rake/delphi/project.rb', line 27
def initvars
@properties = {
:build => true,
:warnings => false,
:hints => false,
:includepaths => nil
}
@cdir = ''
end
|