class Object
Public Instance Methods
arrayify(arg)
click to toggle source
# File lib/reggae.rb, line 66 def arrayify(arg) arg.class == Array ? arg : [arg] end
dependify(arg, klass)
click to toggle source
# File lib/reggae.rb, line 74 def dependify(arg, klass) (arg.is_a? Dependencies) ? arg : klass.new(arg) end
jsonifiable(arg, klass)
click to toggle source
# File lib/reggae.rb, line 70 def jsonifiable(arg, klass) (arg.respond_to? :jsonify) ? arg : klass.new(arg) end
link(exe_name:, flags: '', dependencies: [], implicits: [])
click to toggle source
# File lib/reggae.rb, line 89 def link(exe_name:, flags: '', dependencies: [], implicits: []) Target.new([exe_name], LinkCommand.new(flags), dependencies, implicits) end
object_files(src_dirs: [], exclude_dirs: [], src_files: [], exclude_files: [], flags: '', includes: [], string_imports: [])
click to toggle source
# File lib/reggae.rb, line 93 def object_files(src_dirs: [], exclude_dirs: [], src_files: [], exclude_files: [], flags: '', includes: [], string_imports: []) DynamicDependencies.new('objectFiles', { src_dirs: src_dirs, exclude_dirs: exclude_dirs, src_files: src_files, exclude_files: exclude_files, flags: flags, includes: includes, string_imports: string_imports }) end
scriptlike(src_name:, exe_name:, flags: '', includes: [], string_imports: [], link_with: [])
click to toggle source
# File lib/reggae.rb, line 141 def scriptlike(src_name:, exe_name:, flags: '', includes: [], string_imports: [], link_with: []) Dynamic.new('scriptlike', { src_name: src_name, exe_name: exe_name, flags: flags, includes: includes, string_imports: string_imports, link_with: dependify(link_with, FixedDependencies) }) end
static_library(name, src_dirs: [], exclude_dirs: [], src_files: [], exclude_files: [], flags: '', includes: [], string_imports: [])
click to toggle source
a rule to create a static library
# File lib/reggae.rb, line 122 def static_library(name, src_dirs: [], exclude_dirs: [], src_files: [], exclude_files: [], flags: '', includes: [], string_imports: []) DynamicDependencies.new('staticLibrary', { name: name, src_dirs: src_dirs, exclude_dirs: exclude_dirs, src_files: src_files, exclude_files: exclude_files, flags: flags, includes: includes, string_imports: string_imports }) end