Module-Shared.xcconfig 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. // Configuration settings file format documentation can be found at:
  2. // https://help.apple.com/xcode/#/dev745c5c974
  3. // This setting is deprecated as of Xcode 8.3 and may not be supported in future versions. It is recommended that you disable the setting. If enabled, both `#include <header.h>`-style and `#include "header.h"`-style directives search the paths in `USER_HEADER_SEARCH_PATHS` before `HEADER_SEARCH_PATHS`
  4. ALWAYS_SEARCH_USER_PATHS = NO
  5. // Warn for missing nullability attributes
  6. CLANG_ANALYZER_NONNULL = YES
  7. // Warn when a number object, such as an instance of `NSNumber`, `CFNumberRef`, `OSNumber`, or `OSBoolean` is compared or converted to a primitive value instead of another object.
  8. CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE
  9. // Choose a standard or non-standard C++ language dialect.
  10. CLANG_CXX_LANGUAGE_STANDARD = gnu++14
  11. // Choose a version of the C++ standard library to use.
  12. CLANG_CXX_LIBRARY = libc++
  13. // Enables the use of modules for system APIs. System headers are imported as semantic modules instead of raw headers.
  14. CLANG_ENABLE_MODULES = YES
  15. // Compiles reference-counted Objective-C code (when garbage collection is not enabled) to use Automatic Reference Counting.
  16. CLANG_ENABLE_OBJC_ARC = YES
  17. // Warn about block captures of implicitly autoreleasing parameters.
  18. CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES
  19. // Warn about implicit conversions to boolean values that are suspicious. For example, writing `if (foo)` where `foo` is the name a function will trigger a warning.
  20. CLANG_WARN_BOOL_CONVERSION = YES
  21. // Warn about suspicious uses of the comma operator.
  22. CLANG_WARN_COMMA = YES
  23. // Warn about implicit conversions of constant values that cause the constant value to change, either through a loss of precision, or entirely in its meaning.
  24. CLANG_WARN_CONSTANT_CONVERSION = YES
  25. // Warn if an Objective-C class either subclasses a deprecated class or overrides a method that has been marked deprecated or unavailable.
  26. CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES
  27. // Warn about direct accesses to the Objective-C `isa` pointer instead of using a runtime API.
  28. CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR
  29. // Warns about issues in documentation comments (`doxygen`-style) such as missing or incorrect documentation tags.
  30. CLANG_WARN_DOCUMENTATION_COMMENTS = YES
  31. // Warn about declaring the same method more than once within the same `@interface`.
  32. CLANG_WARN__DUPLICATE_METHOD_MATCH = YES
  33. // Warn about loop bodies that are suspiciously empty.
  34. CLANG_WARN_EMPTY_BODY = YES
  35. // Warn about implicit conversions between different kinds of enum values. For example, this can catch issues when using the wrong enum flag as an argument to a function or method.
  36. CLANG_WARN_ENUM_CONVERSION = YES
  37. // Warn if all paths through a function call itself.
  38. CLANG_WARN_INFINITE_RECURSION = YES
  39. // Warn about implicit conversions between pointers and integers. For example, this can catch issues when one incorrectly intermixes using `NSNumber*`'s and raw integers.
  40. CLANG_WARN_INT_CONVERSION = YES
  41. // Warn about non-literal expressions that evaluate to zero being treated as a null pointer.
  42. CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES
  43. // Warn about `@property` declarations that are implicitly atomic.
  44. CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = NO
  45. // Warn about implicit retains of `self` within blocks, which can create a retain-cycle.
  46. CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES
  47. // Warn about implicit conversions from Objective-C literals to values of incompatible type.
  48. CLANG_WARN_OBJC_LITERAL_CONVERSION = YES
  49. // Warn about classes that unintentionally do not subclass a root class, such as `NSObject`.
  50. CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR
  51. // Warn about ranged-based for loops.
  52. CLANG_WARN_RANGE_LOOP_ANALYSIS = YES
  53. // Warn about non-prototype declarations.
  54. CLANG_WARN_STRICT_PROTOTYPES = YES
  55. // Warn about suspicious uses of `std::move`.
  56. CLANG_WARN_SUSPICIOUS_MOVE = YES
  57. // Warn if an API that is newer than the deployment target is used without "if (@available(...))" guards.
  58. CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE
  59. // Warns about potentially unreachable code.
  60. CLANG_WARN_UNREACHABLE_CODE = YES
  61. // The path to a file specifying code-signing entitlements.
  62. CODE_SIGN_ENTITLEMENTS =
  63. // The name, also known as the *common name*, of a valid code-signing certificate in a keychain within your keychain path. A missing or invalid certificate will cause a build error.
  64. CODE_SIGN_IDENTITY =
  65. // This setting defines the current version of the project. The value must be a integer or floating point number, such as `57` or `365.8`.
  66. CURRENT_PROJECT_VERSION = 1
  67. // If enabled, the product will be treated as defining its own module. This enables automatic production of LLVM module map files when appropriate, and allows the product to be imported as a module.
  68. DEFINES_MODULE = YES
  69. // Determines the compatibility version of the resulting library, bundle, or framework binary.
  70. DYLIB_COMPATIBILITY_VERSION = 1
  71. // This setting defines the current version of any framework built by the project. As with `CURRENT_PROJECT_VERSION`, the value must be an integer or floating point number, such as `57` or `365.8`.
  72. DYLIB_CURRENT_VERSION = 1
  73. // Sets the base value for the internal `install path` (`LC_ID_DYLIB`) in a dynamic library. This will be combined with the `EXECUTABLE_PATH` to form the full install path.
  74. DYLIB_INSTALL_NAME_BASE = @rpath
  75. // Controls whether `objc_msgSend` calls must be cast to the appropriate function pointer type before being called.
  76. ENABLE_STRICT_OBJC_MSGSEND = YES
  77. // This is a list of paths to folders containing frameworks to be searched by the compiler for both included or imported header files when compiling C, Objective-C, C++, or Objective-C++, and by the linker for frameworks used by the product. Paths are delimited by whitespace, so any paths with spaces in them must be properly quoted.
  78. FRAMEWORK_SEARCH_PATHS = $(inherited)
  79. // Choose a standard or non-standard C language dialect.
  80. GCC_C_LANGUAGE_STANDARD = gnu11
  81. // Faster function calls for applications. Not appropriate for shared libraries, which need to be position-independent.
  82. GCC_DYNAMIC_NO_PIC = NO
  83. // In C, allocate even uninitialized global variables in the data section of the object file, rather than generating them as common blocks.
  84. GCC_NO_COMMON_BLOCKS = YES
  85. // When enabled, all symbols are declared `private extern` unless explicitly marked to be exported using `\_\_attribute\_\_((visibility("default")))` in code. If not enabled, all symbols are exported unless explicitly marked as `private extern`.
  86. GCC_SYMBOLS_PRIVATE_EXTERN = NO
  87. // Enabling this option causes all warnings to be treated as errors.
  88. GCC_TREAT_WARNINGS_AS_ERRORS = NO
  89. // Warn if a value is implicitly converted from a 64-bit type to a 32-bit type. This is a subset of the warnings provided by -Wconversion.
  90. GCC_WARN_64_TO_32_BIT_CONVERSION = YES
  91. // Warn if a structure's initializer has some fields missing.
  92. GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES
  93. // Warn when a source file does not end with a newline.
  94. GCC_WARN_ABOUT_MISSING_NEWLINE = YES
  95. // Causes warnings to be emitted about missing prototypes.
  96. GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES
  97. // Causes warnings to be emitted when a function with a defined return type (not `void`) contains a return statement without a return-value. Also emits a warning when a function is defined without specifying a return type.
  98. GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR
  99. // Warn if an aggregate or union initializer is not fully bracketed.
  100. GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES
  101. // Warn whenever a local variable shadows another local variable, parameter or global variable or whenever a builtin function is shadowed.
  102. GCC_WARN_SHADOW = YES
  103. // Warn when a comparison between signed and unsigned values could produce an incorrect result when the signed value is converted to unsigned.
  104. GCC_WARN_SIGN_COMPARE = YES
  105. // Warn if a `@selector(...)` expression referring to an undeclared selector is found. A selector is considered undeclared if no method with that name has been declared before the `@selector(...)` expression, either explicitly in an `@interface` or `@protocol` declaration, or implicitly in an `@implementation` section.
  106. GCC_WARN_UNDECLARED_SELECTOR = YES
  107. // Warn if a variable might be clobbered by a `setjmp` call or if an automatic variable is used without prior initialization. The compiler may not detect all cases where an automatic variable is initialized or all usage patterns that may lead to use prior to initialization.
  108. GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE
  109. // Warn whenever a static function is declared but not defined or a noninline static function is unused.
  110. GCC_WARN_UNUSED_FUNCTION = YES
  111. // Warn whenever a label is declared but not used.
  112. GCC_WARN_UNUSED_LABEL = YES
  113. // Warn whenever a function parameter is unused aside from its declaration.
  114. GCC_WARN_UNUSED_PARAMETER = NO
  115. // Warn whenever a local variable or nonconstant static variable is unused aside from its declaration.
  116. GCC_WARN_UNUSED_VARIABLE = YES
  117. // This is a list of paths to folders to be searched by the compiler for included or imported header files when compiling C, Objective-C, C++, or Objective-C++. Paths are delimited by whitespace, so any paths with spaces in them need to be properly quoted.
  118. HEADER_SEARCH_PATHS = $(inherited)
  119. // Code will load on this and later versions of iOS. Framework APIs that are unavailable in earlier versions will be weak-linked; your code should check for null function pointers or specific system versions before calling newer APIs.
  120. IPHONEOS_DEPLOYMENT_TARGET = 8.0
  121. // This is a list of paths to be added to the `runpath` search path list for the image being created. At runtime, `dyld` uses the `runpath` when searching for dylibs whose load path begins with `@rpath/`.
  122. LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks @loader_path/Frameworks
  123. // This is a list of paths to folders to be searched by the linker for libraries used by the product. Paths are delimited by whitespace, so any paths with spaces in them need to be properly quoted.
  124. LIBRARY_SEARCH_PATHS = $(inherited)
  125. // Code will load on this and later versions of macOS. Framework APIs that are unavailable in earlier versions will be weak-linked; your code should check for null function pointers or specific system versions before calling newer APIs.
  126. MACOSX_DEPLOYMENT_TARGET = 10.10
  127. // Options defined in this setting are passed to invocations of the linker.
  128. OTHER_LDFLAGS = -ObjC
  129. // A string that uniquely identifies the bundle. The string should be in reverse DNS format using only alphanumeric characters (`A-Z`, `a-z`, `0-9`), the dot (`.`), and the hyphen (`-`). This value is used as the `CFBundleIdentifier` in the `Info.plist` of the built bundle.
  130. PRODUCT_BUNDLE_IDENTIFIER_PREFIX = com.dailymotion
  131. PRODUCT_BUNDLE_IDENTIFIER = $(PRODUCT_BUNDLE_IDENTIFIER_PREFIX).${PRODUCT_NAME:rfc1034identifier}
  132. // This is the basename of the product generated by the target.
  133. PRODUCT_NAME = $(TARGET_NAME)
  134. // Must contain a profile name (or UUID). A missing or invalid profile will cause a build error. Use in conjunction with [DEVELOPMENT_TEAM] to fully specify provisioning profile.
  135. PROVISIONING_PROFILE_SPECIFIER =
  136. // Activating this setting will cause Xcode to run the `Clang` static analysis tool on qualifying source files during every build.
  137. RUN_CLANG_STATIC_ANALYZER = YES
  138. // The name or path of the base SDK being used during the build. The product will be built against the headers and libraries located inside the indicated SDK. This path will be prepended to all search paths, and will be passed through the environment to the compiler and linker. Additional SDKs can be specified in the `ADDITIONAL_SDKS` setting.
  139. SDKROOT = macosx
  140. // If enabled, don't install built products even if deployment locations are active.
  141. SKIP_INSTALL = YES
  142. // The list of supported platforms from which a base SDK can be used. This setting is used if the product can be built for multiple platforms using different SDKs.
  143. SUPPORTED_PLATFORMS = macosx iphoneos iphonesimulator watchsimulator watchos appletvsimulator appletvos
  144. // The build system uses the selected device to set the correct value for the `UIDeviceFamily` key it adds to the target's `Info.plist` file. This also drives the --target-device flag to actool, which determines the idioms selected during catalog compilation for iOS platforms.
  145. TARGETED_DEVICE_FAMILY = 1,2,3,4
  146. // Code will load on this and later versions of tvOS. Framework APIs that are unavailable in earlier versions will be weak-linked; your code should check for null function pointers or specific system versions before calling newer APIs.
  147. TVOS_DEPLOYMENT_TARGET = 9.0
  148. // Selects the process used for version-stamping generated files. * *None:* Use no versioning system. * *Apple Generic:* Use the current project version setting. [apple-generic]
  149. VERSIONING_SYSTEM = apple-generic
  150. // Code will load on this and later versions of watchOS. Framework APIs that are unavailable in earlier versions will be weak-linked; your code should check for null function pointers or specific system versions before calling newer APIs.
  151. WATCHOS_DEPLOYMENT_TARGET = 2.0
  152. // macOS Catalyst support
  153. SUPPORTS_MACCATALYST = YES
  154. // macOS Catalyst support
  155. DERIVE_MACCATALYST_PRODUCT_BUNDLE_IDENTIFIER = NO