-2

我刚刚从 make 切换到 tup,我似乎无法理解如何制作命名目标..

Makefile 允许定义多个目标,例如 make clean、make foo 等。

然而, tup 似乎只接受变量开关,而不是真正的目标......

有没有解决的办法?

4

1 回答 1

1

答案是在tup的变体设置中 。

例如,clean目标近似为(来自类似的答案):

# Build files in build-default
touch default.config # An empty config file is ok
tup variant default
tup

实际上,这是手册中描述的变体的用例。

$ ls configs/
bar.config
foo.config
$ tup variant configs/*.config
tup: Added variant 'build-bar' using config file 'configs/bar.config'
tup: Added variant 'build-foo' using config file 'configs/foo.config'

对于通常使用多个变体的项目,可以将 configs/ 目录中的文件签入源代码管理。每个开发人员将在软件初始签出期间在“tup init”之后运行“tup 变体”。也可以通过创建构建目录并在其中创建 tup.config 文件来手动创建变体(请参阅变体部分)。此命令仅有助于节省一些步骤,因此您不必手动创建每个构建目录和 tup.config 符号链接。

但是,tup不再用作正确的更新命令,因为它将更新所有变体。

而是像这样定位它们:

tup build-default
于 2018-07-21T16:23:33.957 回答