2

我正在尝试在 automake 中执行此操作

platform=$(uname)
ifeq ($(platform), Darwin)
    stmt = ...
else
    stmt1 = ...
endif

但我明白了

错误:否则没有if

错误:没有 if 的 endif

我究竟做错了什么?

4

1 回答 1

5
  • 删除缩进,以便所有语句从第 1 列开始。
  • 使用 Automake 条件,您首先必须在配置脚本中定义一个条件变量,如下所示:

    AM_CONDITIONAL([DARWIN], [test $(uname) -eq "Darwin"])
    

    然后在 Automake 文件中,执行以下操作:

    if DARWIN
    stmt = ...
    else
    stmt1 = ...
    endif
    

或者,只需将 bash 脚本中的 if 语句编写为 Automake 文件中的规则主体。

于 2013-03-24T11:47:40.800 回答