我正在尝试为我的 iOS 应用程序构建一个良好的架构,但我的 xcconfig 配置遇到了问题。我有几个 CocoaPods,它们包含警告是很自然的。我一直在使用inhibit_all_warnings!
CocoaPods 集成之上的指令来沉默那些人。所以我的 Podfile 看起来像这样:
platform :ios, '7.0'
inhibit_all_warnings!
source 'https://github.com/CocoaPods/Specs.git'
pod 'AFNetworking', '~> 2.x'
...
这实际上有效,使用此配置构建项目时不会显示任何警告。
但是我在构建应用程序时试图强制一个非常严格的环境,所以我创建了几个 .xcconfig 文件,它们强制警告错误并启用几乎所有可能的警告。这是 xcconfig 文件中实际执行此操作的部分:
GCC_TREAT_WARNINGS_AS_ERRORS = YES;
WARNING_CFLAGS = -Weverything -Wno-objc-missing-property-synthesis -Wno-unused-macros;
这两行都正常工作,但问题似乎是 CocoaPod 库的警告也被视为错误。禁用GCC_TREAT_WARNINGS_AS_ERRORS
将使项目再次编译,但警告会从 CocoaPods 返回。
所以我的问题是:
我将如何正确设置我的 .xcconfig 文件,WARNING_CFLAGS 将仅用于项目文件,而不是库文件?
或者如何制作inhibit_all_warnings!pod 指令在设置 WARNING_CFLAGS 配置变量时起作用,因为在这种情况下它似乎忽略了它?
感谢大家的帮助!