【发布时间】:2018-06-25 12:43:37
【问题描述】:
我需要在 Xcode 中的 clean 步骤上运行自定义 shell 脚本(确切地说是 Xcode 9)。我有一组构建我的依赖项的生成文件,最初我在运行脚本阶段调用这个脚本,但是这些生成文件的输出永远不会被清理。所以我认为,如果我在这个脚本中处理了 Xcode 环境变量${ACTION},那么它也可以清理它们。问题是 - 脚本没有被调用干净。
有几篇关于这个的帖子,所以这是我尝试过的:
- 制作额外的聚合目标。我添加了目标并从构建环境中放置了一个处理
${ACTION}的脚本,但该脚本在清理时永远不会执行。清理时,构建日志中只有Clean.remove clean行。 - 制作外部构建系统目标(一些较早的帖子声明了外部脚本目标,但我在 Xcode 9 中找不到)。然后,这允许我执行自定义脚本(如果我将默认的
/usr/bin/make命令替换为我的脚本),但在这种情况下,${ACTION}环境变量未设置(我在构建输出中验证了这一点,它总是有 @ 987654328@),因此我无法区分清理阶段和构建阶段。
关于聚合目标,它具有输出文件属性,如果我指定它们 - 可以让 Xcode 清理它们吗?
【问题讨论】:
-
这个你搞定了吗?这似乎仍然是一个问题。自定义脚本不会在干净时执行。
-
对于未来的读者来说,这基本上是stackoverflow.com/questions/1903890/…的复制品