我正在尝试添加项目
<key>UIStatusBarHidden</key><true/>
我的plist是由CMake自动生成的。对于某些键,似乎有预先定义的方法来添加项目;例如:
set(MACOSX_BUNDLE_ICON_FILE ${ICON})
但我找不到添加任意属性的方法。
我尝试使用MACOSX_BUNDLE_INFO_PLIST
目标属性,如下所示:我希望生成的plist与旧的plist相同,除了我想要的新属性,所以我只是复制了自动生成的plist和将其设置为我的模板。但是plist使用了一些Xcode变量,它们看起来也像${foo}
,而CMake对此抱怨:
cmake代码中的语法错误 解析字符串
<string>com.bedaire.${PRODUCT_NAME:identifier}</string>
语法错误,意外的cal_SYMBOL, 期待}(47)
未设置策略CMP0010:错误 变量引用语法是一个错误。 运行“cmake --help-policy CMP0010” 政策细节。使用 cmake_policy命令设置 政策并取消此警告。这个 警告是为项目开发人员。 使用-Wno-dev来抑制它。
无论如何,我甚至不确定这是正确的做法。我找不到一个好的例子或任何关于此的好文档。理想情况下,我只是让CMake像以前一样生成所有内容,只需添加一条额外的行。我该怎么办?
答案 0 :(得分:6)
您是否考虑过复制*.plist.in
中的相关/opt/local/share/cmake-2.8/Modules
文件(例如MacOSXBundleInfo.plist.in
),将其编辑为<key>UIStatusBarHidden</key><true/>
(或@VAR_TO_REPLACE_BY_CMAKE@
),并在CMAKE_MODULE_PATH
?
如果您将CMake安装为应用套件,则该文件的位置为/Applications/CMake.app/Contents/share/cmake-N.N/Modules
答案 1 :(得分:-2)
您可以使用@添加值,并将@ONLY传递给configure_file。
不幸的是,没有简单的方法可以将自定义行添加到生成的文件中。