问题很简单。我有多平台项目(Windows/ Mac OS)。
现在,如果Mac OS我需要在我的包(它是 launchd 守护进程)的功能部分启用“强化运行时”。
我希望我的 Xcode 项目是由cmake(我不想维护多个项目文件)生成的。如果我可以通过修改构建过程(例如通过向xcodebuidl命令添加一些标志)来克服这个问题,那应该没问题,但我更喜欢在CMakeLists.txt文件中定义所有内容。
您可以使用属性XCODE_ATTRIBUTE_ENABLE_HARDENED_RUNTIME,它是一个布尔值。
在您的 macOS 目标上设置该属性,例如
set_property(TARGET target PROPERTY XCODE_ATTRIBUTE_ENABLE_HARDENED_RUNTIME YES)
Run Code Online (Sandbox Code Playgroud)
或者,如果您为目标提供更多属性,它可能如下所示:
set_target_properties(target PROPERTIES
MACOSX_BUNDLE TRUE
MACOSX_BUNDLE_BUNDLE_NAME "yourTargetName"
MACOSX_RPATH TRUE
MACOSX_FRAMEWORK_IDENTIFIER com.host.target
XCODE_ATTRIBUTE_LD_RUNPATH_SEARCH_PATHS "@loader_path/Libraries"
RESOURCE "${RESOURCE_FILES}"
XCODE_ATTRIBUTE_ENABLE_HARDENED_RUNTIME YES
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1211 次 |
| 最近记录: |