Cmake firebreath预定义功能能否配置_模板仅支持@?
现在我正在使用Firebreath开发我的插件,我遇到了使用Firebreath预定义的配置_模板函数的问题 就我现在所见,configure_模板将替换引用为${VAR}或@VAR@或@foreach循环的变量 但是我的配置文件(nsis安装程序文件)有自己定义的变量${VAR},所以我不希望它被configure_模板替换 我使用Firebreath预定义的configure_模板而不是configure_文件(仅限inputfile outputfile@ONLY)的原因是我想在configure文件中使用@foreach循环来解释分号CMAKE变量Cmake firebreath预定义功能能否配置_模板仅支持@?,cmake,firebreath,Cmake,Firebreath,现在我正在使用Firebreath开发我的插件,我遇到了使用Firebreath预定义的配置_模板函数的问题 就我现在所见,configure_模板将替换引用为${VAR}或@VAR@或@foreach循环的变量 但是我的配置文件(nsis安装程序文件)有自己定义的变量${VAR},所以我不希望它被configure_模板替换 我使用Firebreath预定义的configure_模板而不是configure_文件(仅限inputfile outputfile@ONLY)的原因是我想在confi
那么,我应该如何解决这个问题呢?我可以很容易地修改exist configure_模板以忽略${VAR},或者有其他方法来解释配置文件中的分号CMAKE变量吗?我只是自己想出了一个解决方案 FireSpreat提供的现有configure_模板函数可以修改为忽略替代变量,如${VAR}。修改很简单,只需一行, 更改以下代码
string(CONFIGURE "${line}" line ESCAPE_QUOTES)
到
@ONLY参数将告诉CMAKE仅替换以下变量@VAR@.
虽然,这可以解决配置我自己的文件的问题,但这将破坏特定于Firebreath的配置文件,因为它们都使用${VAR}
所以,我的最终解决方案是
string(CONFIGURE "${line}" line ESCAPE_QUOTES @ONLY)