无规则地运行忍者

问题描述

我有一个构建,现在最容易为每个构建目标(例如目标文件和库)设置唯一的构建规则。是否可以在 build.ninja 文件中指定要做什么而不先为其指定规则。

例如(玩具语法)

build this_file: depends_on_this.o depends_on_that.o  - gcc argumentss_to_use files.o etc

解决方法

像往常一样,我在询问后一分钟就找到了一种方法。

我们可以将整个命令作为变量转发

rule run
  command = $cmd
  

build log.txt: run
  cmd = echo $hello >> log.txt