xcode - 如何将 CMake Xcode 模式生成器限制为仅某些目标
问题描述
CMake 3.14 有一个非常有用的机制来为 Xcode 自动生成模式文件。问题是它为所有目标创建模式,而我只需要其中少数目标的模式。我的项目中有数百个目标,向下滚动列表很烦人。
我的代码是:
if(${CMAKE_GENERATOR} MATCHES "Xcode")
set(CMAKE_XCODE_GENERATE_SCHEME YES)
endif()
我想要的只是为 ALL_BUILD 目标而不是所有目标创建一个方案。
解决方案
最后,我找到了一些解决可能出现问题的方法。首先,我像以前一样为所有目标启用方案生成:
set(CMAKE_XCODE_GENERATE_SCHEME YES)
然后禁用子文件夹中所有目标的方案生成:
get_all_targets_recursive(all_subfolder_targets "subfolder")
foreach(subfolder_target ${all_subfolder_targets})
set_target_properties(${subfolder_target} PROPERTIES XCODE_GENERATE_SCHEME NO)
endforeach()
你可以在这里找到 get_all_targets_recursive 实现https://stackoverflow.com/a/62311397/5472544
推荐阅读
- python - Heroku SyntaxError 上的 Python:未定义未来的功能注释
- html - ReactStrap 分页元素超出可用宽度
- reactjs - 调用材质 ui 对话框
- python - 使用 Django 使用 AJAX 在 Bootstrap Modal 中动态加载内容
- javascript - vue.js 项目中没有任何渲染
- xamarin.forms - 在 xamarin 表单中,当从后台打开应用程序但应用程序状态在后台被操作系统杀死时,在 app.cs 中调用了哪个覆盖方法
- android - 找不到 com.android.tools.build:gradle:4.0.0
- c++ - 关于以非常规方式实现邻接矩阵的问题
- java - 自定义系统类未在命令行中编译
- mysql - SQL 数据库中的 ORDER BY 语句语法错误