在 Makefile.am(automake) 中使用 if 语句
Posted
技术标签:
【中文标题】在 Makefile.am(automake) 中使用 if 语句【英文标题】:using if statement in Makefile.am(automake) 【发布时间】:2013-02-07 17:41:32 【问题描述】:我知道对于 Makefile 我们可以写如下 bloc
ifneq ($(MYAPP_REVISION)_,_)
ifneq ($(MYAPP_REVISION),exported)
myapp_CFLAGS+=-DMYAPP_REVISION=\"$(MYAPP_REVISION)\"
myapp_LDFLAGS+=-DMYAPP_REVISION=\"$(MYAPP_REVISION)\"
endif
endif
但是如果在makefile.am
(autoconf) 中写这个块,我会得到构建不起作用。
关于在 makefile.am
中编写与此 bloc 等效的内容有什么想法吗?
【问题讨论】:
你试过手册吗? gnu.org/software/automake/manual/html_node/… 另见sourceware.org/autobook/autobook/autobook_179.html 您可以在 Makefile 中编写此类内容,但并非所有版本的 make 都能识别它。 automake 的要点之一是它生成(大部分)可移植的 makefile。将不可移植的语法写入 Makefile.am 会适得其反。 【参考方案1】:您必须在源代码中查找生成的输出并引用 M4 语法。
【讨论】:
以上是关于在 Makefile.am(automake) 中使用 if 语句的主要内容,如果未能解决你的问题,请参考以下文章
懒人学习automake, Makefile.am,configure.ac