m4 不服从展开式?
我在这里使用 m4 进行一些文本预处理,它的行为方式我不明白。
这是有问题的部分:
ifdef(`TEST',
define(`O_EXT', `.obj'),
define(`O_EXT', `.o'))
这个宏将总是扩展为.o
,无论TEST
是否被定义(m4 -DTEST) 。
我做错了什么?
I use m4 for a little text preprocessing here, and it behaves in a way I don't understand.
This is the portion in question:
ifdef(`TEST',
define(`O_EXT', `.obj'),
define(`O_EXT', `.o'))
This macro will always be expanded to .o
, regardless whether TEST
is defined (m4 -DTEST) or not.
What am I doing wrong?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您没有引用
ifdef
的其他参数。试试这个:You're not quoting the other arguments to
ifdef
. Try this: