Top Level Namespace

Defined Under Namespace

Modules: Ambient, Kernel Classes: CapabilitiesHelper, ProjectHelper, SchemeScope, TargetScope

Instance Method Summary collapse

Instance Method Details

#enable_default_warnings!Object



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/dsl.rb', line 38

def enable_default_warnings!
  truthy = %w(CLANG_WARN_BOOL_CONVERSION
    CLANG_WARN_CONSTANT_CONVERSION
    CLANG_WARN_EMPTY_BODY
    CLANG_WARN_ENUM_CONVERSION
    CLANG_WARN_INT_CONVERSION
    CLANG_WARN_UNREACHABLE_CODE
    CLANG_WARN__DUPLICATE_METHOD_MATCH
    GCC_WARN_64_TO_32_BIT_CONVERSION
    GCC_WARN_UNDECLARED_SELECTOR
    GCC_WARN_UNUSED_FUNCTION
    GCC_WARN_UNUSED_VARIABLE)
  error = %w(CLANG_WARN_DIRECT_OBJC_ISA_USAGE
    CLANG_WARN_OBJC_ROOT_CLASS
    GCC_WARN_ABOUT_RETURN_TYPE)
  aggressive = %w(GCC_WARN_UNINITIALIZED_AUTOS)

  truthy.each { |w| option(w, true) }
  error.each { |w| option(w, "YES_ERROR") }
  aggressive.each { |w| option(w, "YES_AGGRESSIVE") }
end

#enable_extra_warnings_and_static_analyser!Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/dsl.rb', line 9

def enable_extra_warnings_and_static_analyser!
  warnings = %w(GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED
    GCC_WARN_MISSING_PARENTHESES
    GCC_WARN_ABOUT_RETURN_TYPE
    GCC_WARN_SIGN_COMPARE
    GCC_WARN_CHECK_SWITCH_STATEMENTS
    GCC_WARN_UNUSED_FUNCTION
    GCC_WARN_UNUSED_LABEL
    GCC_WARN_UNUSED_VALUE
    GCC_WARN_UNUSED_VARIABLE
    GCC_WARN_SHADOW
    GCC_WARN_64_TO_32_BIT_CONVERSION
    GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS
    GCC_WARN_UNDECLARED_SELECTOR
    GCC_WARN_TYPECHECK_CALLS_TO_PRINTF
    GCC_WARN_UNINITIALIZED_AUTOS
    CLANG_WARN_INT_CONVERSION
    CLANG_WARN_ENUM_CONVERSION
    CLANG_WARN_CONSTANT_CONVERSION
    CLANG_WARN_BOOL_CONVERSION
    CLANG_WARN_EMPTY_BODY
    CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION
    CLANG_WARN__DUPLICATE_METHOD_MATCH
    GCC_WARN_64_TO_32_BIT_CONVERSION
    RUN_CLANG_STATIC_ANALYZER
    GCC_TREAT_WARNINGS_AS_ERRORS)
  warnings.each { |w| option(w, true) }
end

#option(name, value) ⇒ Object



5
6
7
# File 'lib/dsl.rb', line 5

def option(name, value)
  Ambient.configure { set_option(name, value) }
end

#scheme(name, parent: nil, &block) ⇒ Object



68
69
70
# File 'lib/dsl.rb', line 68

def scheme(name, parent: nil, &block)
  SchemeScope.new(nil, name, parent).configure(&block)
end

#target(name, &block) ⇒ Object



60
61
62
# File 'lib/dsl.rb', line 60

def target(name, &block)
  TargetScope.new(name).configure(&block)
end

#use_defaults_for_everything_not_specified_in_this_file!Object



64
65
66
# File 'lib/dsl.rb', line 64

def use_defaults_for_everything_not_specified_in_this_file!
  Ambient.configure { @use_defaults = true }
end

#use_settings_from(filename) ⇒ Object



1
2
3
# File 'lib/dsl.rb', line 1

def use_settings_from(filename)
  Ambient.configure { run_ambientfile(filename) }
end