0

在我的makefile我有

运行_sh:

echo"run script";\
toolk -run -tcl sequence.tcl | tee ./log/catch.log;\
$(call chck "./log/catch.log")

我想error status=0从上面的日志文件中捕获消息并检查,如果不是“0”退出表单生成文件。所以我写了这个函数并在我的目标 run_sh 中调用它。

define chck
log=$(1)
STAT=`cat $(1) | grep "exit status=0"`
ifneq ($(STAT),"exit status=0")
$(error error in script)
endif
endef

是正确的写作方式,因为我遇到了错误。

4

1 回答 1

1

这个怎么样:

run_sh:
    echo"run script"; toolk -run -tcl sequence.tcl | tee ./log/catch.log;
    grep "error status=0" ./log/catch.log || exit

编辑:

我无法访问 GNUMake 3.79.1,所以我们必须进行一些实验。设置此规则:

run_sh:
    exit

并尝试“make run_sh”(不是“make”或“make all”或其他任何东西)。结果是什么?(不要只是说“它不起作用”,向我们展示输出。)

于 2013-10-05T11:49:42.703 回答