xcode - Xcode 10 构建阶段排序
问题描述
Xcode 的现代构建系统使用什么逻辑来对构建阶段进行排序或并行化?我意识到可以定义输入/输出文件来对相互依赖的构建阶段进行排序,但这是唯一的考虑因素吗?
我从事的一些更复杂的项目有多达 10 个运行脚本构建阶段。虽然我想从一些可以并行运行的事实中受益,但我们之前利用遗留构建系统对自上而下排序的尊重来确保事情按顺序发生。是否有任何简单的方法来确保不依赖输入/输出文件的排序?
解决方案
简而言之,没有什么好办法。
我最终做了几件事来降低复杂性:
- 将运行脚本构建阶段合并为两个:预编译、后编译
- 利用 Python 中的多处理按顺序运行脚本组(构建在内部工具之上)
我仍然定义在任一阶段生成的“输出文件”——例如,以确保脚本生成(或检索)的文件可能被复制到产品包中。它减少了开销,并缩短了构建时间。我仍然认为 Apple 需要实施一种改进的机制来对构建运行脚本阶段进行排序。
推荐阅读
- python - 来自包含列表的两列的 Pandas 元组列表
- sql - 使用 NSIS 在文件中获取 SQL 查询的结果
- sql - 没有任何用户回答的问题
- ios - 如何在第三方域 (mydomain.app.link) 中上传 AASA (apple-app-site-association) 文件
- ruby-on-rails - 部署失败,bin/yarn:权限被拒绝
- javascript - 为什么当 URL 为空时,chrome 控制台中的 fetch() 请求失败?. 但在 Firefox 中运行良好
- python - Firestore - 递归复制文档及其所有子集合/文档
- wordpress - 使用多个单一产品模板
- c# - SVN 使用什么文件编码?
- javascript - 如何重绘然后删除旧版本的不规则形状?