forked from spotify/HubFramework
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathspotify_os.xcconfig
153 lines (131 loc) · 5.54 KB
/
spotify_os.xcconfig
1
2
3
4
5
6
7
8
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
// A set of configurations used for Spotify Objective-C Open Source Projects
// Project settings:
VALID_ARCHS = i386 x86_64 armv7 arm64
IPHONEOS_DEPLOYMENT_TARGET = 8.0
ENABLE_NS_ASSERTIONS_Debug = YES
ENABLE_NS_ASSERTIONS_Release = NO
ENABLE_NS_ASSERTIONS = $(ENABLE_NS_ASSERTIONS_$(CONFIGURATION))
ONLY_ACTIVE_ARCH_Debug = YES
ONLY_ACTIVE_ARCH_Release = NO
ONLY_ACTIVE_ARCH = $(ONLY_ACTIVE_ARCH_$(CONFIGURATION))
DEBUG_INFORMATION_FORMAT_Debug = dwarf
DEBUG_INFORMATION_FORMAT_Release = dwarf-with-dsym
DEBUG_INFORMATION_FORMAT = $(DEBUG_INFORMATION_FORMAT_$(CONFIGURATION))
ENABLE_TESTABILITY_Debug = YES
ENABLE_TESTABILITY_Release = NO
ENABLE_TESTABILITY = $(ENABLE_TESTABILITY_$(CONFIGURATION))
SUPPORTED_PLATFORMS = iphoneos iphonesimulator
CLANG_ENABLE_MODULES = YES
CLANG_MODULES_AUTOLINK = NO
CLANG_ENABLE_OBJC_ARC = YES
GCC_NO_COMMON_BLOCKS = YES
GCC_OPTIMIZATION_LEVEL_Debug = 0
GCC_OPTIMIZATION_LEVEL_Release = s
GCC_OPTIMIZATION_LEVEL = $(GCC_OPTIMIZATION_LEVEL_$(CONFIGURATION))
ALWAYS_SEARCH_USER_PATHS = NO
DEFINES_MODULE = YES
MODULEMAP_FILE = module.map
INSTALL_PATH = @rpath
DYLIB_INSTALL_NAME_BASE = @rpath
LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks
COPY_PHASE_STRIP_Debug = NO
COPY_PHASE_STRIP_Release = YES
COPY_PHASE_STRIP = $(COPY_PHASE_STRIP_$(CONFIGURATION))
// Spotify language and std-library standards
GCC_C_LANGUAGE_STANDARD = gnu11
CLANG_CXX_LANGUAGE_STANDARD = c++11
CLANG_CXX_LIBRARY = libc++
SPOTIFY_OS_CONFIG_PREPROCESSOR_DEFINITIONS_Debug = DEBUG=1 _DEBUG=1
SPOTIFY_OS_CONFIG_PREPROCESSOR_DEFINITIONS_Release =
SPOTIFY_OS_CONFIG_PREPROCESSOR_DEFINITIONS = $(SPOTIFY_OS_CONFIG_PREPROCESSOR_DEFINITIONS_$(CONFIGURATION))
GCC_PREPROCESSOR_DEFINITIONS = $SPOTIFY_OS_CONFIG_PREPROCESSOR_DEFINITIONS
// Warnings:
// Attribution: https://github.com/jonreid/XcodeWarnings
// Warnings, by Xcode version, we want to ignore.
HF_IGNORED_WARNINGS_0730 = -Wno-double-promotion -Wno-partial-availability
HF_IGNORED_WARNINGS_0800 = $(HF_IGNORED_WARNINGS_0730)
WARNING_CFLAGS = -Weverything -Wno-error=deprecated -Wno-objc-missing-property-synthesis -Wno-gnu-conditional-omitted-operand -Wno-gnu -Wno-reserved-id-macro -Wno-auto-import -Wno-missing-variable-declarations -Werror $(HF_IGNORED_WARNINGS_$(XCODE_VERSION_MINOR))
// Apple LLVM 7.0 - Warnings - All languages
GCC_WARN_CHECK_SWITCH_STATEMENTS = YES
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES
CLANG_WARN_DOCUMENTATION_COMMENTS = YES
CLANG_WARN_EMPTY_BODY = YES
GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES
GCC_WARN_SHADOW = YES
CLANG_WARN_BOOL_CONVERSION = YES
CLANG_WARN_CONSTANT_CONVERSION = YES
GCC_WARN_64_TO_32_BIT_CONVERSION = YES
CLANG_WARN_ENUM_CONVERSION = YES
CLANG_WARN_INT_CONVERSION = YES
CLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES
CLANG_WARN_NULLABLE_TO_NONNULL_CONVERSION = YES
GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR
GCC_WARN_MISSING_PARENTHESES = YES
GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES
GCC_WARN_ABOUT_MISSING_NEWLINE = YES
CLANG_WARN_ASSIGN_ENUM = YES
GCC_WARN_ABOUT_POINTER_SIGNEDNESS = YES
GCC_WARN_SIGN_COMPARE = YES
CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES
GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES
GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE
GCC_WARN_UNKNOWN_PRAGMAS = YES
CLANG_WARN_UNREACHABLE_CODE = YES
GCC_WARN_UNUSED_FUNCTION = YES
GCC_WARN_UNUSED_LABEL = YES
//GCC_WARN_UNUSED_PARAMETER = YES
GCC_WARN_UNUSED_VALUE = YES
GCC_WARN_UNUSED_VARIABLE = YES
// Apple LLVM 7.0 - Warnings - C++
CLANG_WARN__EXIT_TIME_DESTRUCTORS = YES
GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES
GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS = YES
GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = YES
CLANG_WARN_CXX0X_EXTENSIONS = YES
// Apple LLVM 7.0 - Warnings - Objective-C
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES
CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = YES
GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL = YES
GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES
GCC_WARN_STRICT_SELECTOR_MATCH = YES
GCC_WARN_UNDECLARED_SELECTOR = YES
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR
// Apple LLVM 7.0 - Warnings - Objective-C and ARC
CLANG_WARN_OBJC_EXPLICIT_OWNERSHIP_TYPE = YES
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES
CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES
CLANG_WARN__ARC_BRIDGE_CAST_NONARC = YES
// Static Analyzer - Analysis Policy
RUN_CLANG_STATIC_ANALYZER = YES
CLANG_STATIC_ANALYZER_MODE_ON_ANALYZE_ACTION = Deep
CLANG_STATIC_ANALYZER_MODE = Deep
// Static Analyzer - Generic Issues
CLANG_ANALYZER_DEADCODE_DEADSTORES = YES
CLANG_ANALYZER_MEMORY_MANAGEMENT = YES
CLANG_ANALYZER_GCD = YES
CLANG_ANALYZER_LOCALIZABILITY = YES
CLANG_ANALYZER_NONNULL = YES
// Static Analyzer - Checks - Objective-C
CLANG_ANALYZER_OBJC_ATSYNC = YES
CLANG_ANALYZER_OBJC_NSCFERROR = YES
CLANG_ANALYZER_OBJC_INCOMP_METHOD_TYPES = YES
CLANG_ANALYZER_OBJC_COLLECTIONS = YES
CLANG_ANALYZER_OBJC_UNUSED_IVARS = YES
CLANG_ANALYZER_OBJC_SELF_INIT = YES
CLANG_ANALYZER_OBJC_RETAIN_COUNT = YES
CLANG_ANALYZER_OBJC_GENERICS = YES
// Static Analyzer - Checks - Security
CLANG_ANALYZER_SECURITY_FLOATLOOPCOUNTER = YES
CLANG_ANALYZER_SECURITY_KEYCHAIN_API = YES
CLANG_ANALYZER_SECURITY_INSECUREAPI_UNCHECKEDRETURN = YES
CLANG_ANALYZER_SECURITY_INSECUREAPI_GETPW_GETS = YES
CLANG_ANALYZER_SECURITY_INSECUREAPI_MKSTEMP = YES
CLANG_ANALYZER_SECURITY_INSECUREAPI_RAND = YES
CLANG_ANALYZER_SECURITY_INSECUREAPI_STRCPY = YES
CLANG_ANALYZER_SECURITY_INSECUREAPI_VFORK = YES