运行 来自其他目录的 Omake
Run Omake from an other directory
我正在尝试从我的 buildroot 环境中的 git 仓库添加自定义包。该软件包是使用 omake 构建的,并且在其根目录中有一个 OMakeroot 文件。
在buildroot环境下,我可以自定义一个由BR自动调用的Makefile,这个Makefile调用omake命令。问题是包含此 Makefile 的目录与构建目录不同。 Buildroot 使用变量 $(D)
.
给出构建路径
如果我使用标准的 Makefile,命令将是这样的:
$(MAKE) TARGET_CC=$(TARGET_CC) -C $(D) <= -C is used to change directory
与此命令等效的 omake 是什么?
这样的东西不起作用:
omake TARGET_CC=$(TARGET_CC) $(D)/OMakeroot
或
cd $(D)
omake TARGET_CC=$(TARGET_CC)
您的两次尝试看起来应该是 makefile 中的规则配方,每行开头都有一个制表符。
你的第二次尝试接近于解决方案,但它在第一行(带有 cd
命令的行)的末尾缺少一个连续标记 - 一个反斜杠,以及一个命令序列分隔符 - ;
甚至更好 &&
– 这样 Make 就可以 运行 这两个命令在同一个 shell 子进程中,这样 omake
就可以用 $(D)
作为当前目录。全部放在一起,你得到:
cd $(D) && \
omake TARGET_CC=$(TARGET_CC)
不过,这两个命令足够短,可以放在一行中。另请注意,前导制表符在您的 Web 浏览器中可能显示为四个空格的序列,但它们实际上应该是 makefile 中的制表符。
我正在尝试从我的 buildroot 环境中的 git 仓库添加自定义包。该软件包是使用 omake 构建的,并且在其根目录中有一个 OMakeroot 文件。
在buildroot环境下,我可以自定义一个由BR自动调用的Makefile,这个Makefile调用omake命令。问题是包含此 Makefile 的目录与构建目录不同。 Buildroot 使用变量 $(D)
.
如果我使用标准的 Makefile,命令将是这样的:
$(MAKE) TARGET_CC=$(TARGET_CC) -C $(D) <= -C is used to change directory
与此命令等效的 omake 是什么?
这样的东西不起作用:
omake TARGET_CC=$(TARGET_CC) $(D)/OMakeroot
或
cd $(D)
omake TARGET_CC=$(TARGET_CC)
您的两次尝试看起来应该是 makefile 中的规则配方,每行开头都有一个制表符。
你的第二次尝试接近于解决方案,但它在第一行(带有 cd
命令的行)的末尾缺少一个连续标记 - 一个反斜杠,以及一个命令序列分隔符 - ;
甚至更好 &&
– 这样 Make 就可以 运行 这两个命令在同一个 shell 子进程中,这样 omake
就可以用 $(D)
作为当前目录。全部放在一起,你得到:
cd $(D) && \
omake TARGET_CC=$(TARGET_CC)
不过,这两个命令足够短,可以放在一行中。另请注意,前导制表符在您的 Web 浏览器中可能显示为四个空格的序列,但它们实际上应该是 makefile 中的制表符。