从Podfile为cocoapod指定GCC_PREPROCESSOR_DEFINITIONS

yas*_*375 2 xcode objective-c ios cocoapods

我在我的应用程序中使用MTDates库进行日期计算.当然,它作为cocoapod添加到我的项目中.

MTDates增加了类似的方法mt_startOfCurrentHourNSDate.但它也可以选择使用没有mt_前缀的方法名称.只是startOfCurrentHour.为了启用它,我们需要定义一个预处理器宏MTDATES_NO_PREFIX=1.

在podscpec文件中,它可以通过以下方式实现:

s.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => 'MTDATES_NO_PREFIX=1' }
Run Code Online (Sandbox Code Playgroud)

但在发布的podscpec中没有这样的线.因此,默认情况下不启用简短的方法名称.

我想使用简短的方法名称,并将MTDates作为cocoapod添加到我的项目中.

目前我已将podspec复制到项目仓库,添加该行并指向Podfile中的自定义podspec:

pod 'MTDates', :podspec => 'config/MTDates.podspec'
Run Code Online (Sandbox Code Playgroud)

如何在不完全覆盖podspec的情况下为Podfile中的pod指定预处理器宏?

提前致谢!

all*_*loy 9

您可以使用Podfile的post_install钩子来修改Pods.xcodeproj安装后的操作.该示例基本上向您展示了您需要知道的所有内容.