gpt4 book ai didi

autotools - 如何在 autoconf :configure. ac 中使用字符串变量

转载 作者:行者123 更新时间:2023-12-04 05:05:38 24 4
gpt4 key购买 nike

如何在 configure.ac 中为消息使用变量

if test "$foo" = "yes"; then
AC_MSG_ERROR([this string is being used in WARN as well as ERROR])
else
AC_MSG_WARN([this string is being used in WARN as well as ERROR])
fi

在变量中定义字符串“此字符串正在 WARN 和 ERROR 中使用”,然后在 中使用该变量是有意义的。 AC_MSG_WARN AC_MSG_ERROR .最好的方法是什么?

除此之外,m4 是否有任何宏可以通过将 string 和 $foo 作为参数来替换整个 if else ?

最佳答案

这应该有效:

msg="this string is being used in WARN as well as ERROR"
if test "$foo" = "yes"; then
AC_MSG_ERROR([$msg])
else
AC_MSG_WARN([$msg])
fi

In addition to that, does m4 has any macro which can replace this entire if else by taking string and $foo as argument ?



如果你写一个,它会的。 :-)。 if-else 不在 m4 中,它在 m4 的输出中, configure shell 脚本。类似的东西:
AC_DEFUN([AX_TEST_FOO], [
pushdef([MSG],$1)
pushdef([FOO],$2)
AS_IF([test $FOO = yes], [AC_MSG_ERROR([$MSG])], [AC_MSG_WARN([$MSG])])
popdef([FOO])
popdef([MSG])
])

称为:
AX_TEST_FOO(["this string is being used in WARN as well as ERROR"], [$foo])

应该接近。我没试过。

关于autotools - 如何在 autoconf :configure. ac 中使用字符串变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15541534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com