首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用m4_define宏在m4_esyscmd中定义的变量?

如何使用m4_define宏在m4_esyscmd中定义的变量?
EN

Stack Overflow用户
提问于 2015-10-13 09:38:31
回答 2查看 1.4K关注 0票数 0

我想在configure.ac中用下面的代码做一些类似的事情

代码语言:javascript
复制
m4_define([product], [NGU29832])
m4_define([version], [R1A1])

之后,在AC_INIT宏中使用以下变量:

代码语言:javascript
复制
AC_INIT([foo], m4_esyscmd([$(pwd)/modify_version_script.sh $version $product]))

不幸的是,这不能工作,因为$version$product在解析为m4_esyscmd宏时都是空的。

有人知道怎么做吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-04 08:13:54

我找到了一个解决办法:

代码语言:javascript
复制
m4_define([product], [NGU29832])
m4_define([version], [R1A1])

AC_INIT([foo], m4_esyscmd([$(pwd)/modify_version_script.sh m4_defn([version] m4_defn([product])))
票数 -2
EN

Stack Overflow用户

发布于 2015-10-15 15:30:40

$version$product不存在于M4Sugar层:它们是M4变量:

代码语言:javascript
复制
m4_define([product], [NGU29832])
m4_define([version], [R1A1])

AC_INIT([foo], [m4_esyscmd([$(pwd)/modify_version_script.sh version product])])

应该为你工作。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33099222

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档