我正在尝试在MacOS上构建一个包含CMake的XCTest包,其中包括资源。我无法让CMake包含资源。
我有一个要点在此处显示问题:https://gist.github.com/wilhuff/94af78f34c79881b2f446da7e94904dc
其中有趣的部分是这些命令:
add_executable(
host_app MACOSX_BUNDLE
host.m
)
xctest_add_bundle(
xctest host_app
test.mm
)
set(resources test.json)
set_target_properties(
xctest PROPERTIES
RESOURCE "${resources}"
)
xctest_add_test(
xctest xctest
)
根据https://cmake.org/cmake/help/v3.5/prop_tgt/RESOURCE.html,要使CMake在目标中包含资源,目标必须是捆绑销售商品,我需要设置RESOURCE
属性。 BUNDLE
属性由xctest_add_bundle
设置,而RESOURCE
属性在我的CMakeLists.txt中。如文档所示,添加MACOSX_BUNDLE
和MACOSX_FRAMEWORK_IDENTIFIER
无效。
请注意,我已经能够获取资源以在可执行文件中工作,但这似乎不适用于非框架捆绑软件。
任何人都不知道要使它正常工作还需要什么?