makefile:如何删除多个结尾的多个文件

时间:2013-10-31 20:50:08

标签: makefile

我无法找到在makefile中完成此操作的方法,也许有人可以帮助我:

我有两个带文件名的列表

$FILES = file1 file2 ...

和一个带后缀的

$SUF = .suf1 .suf2 ...

我希望得到一个像

这样的列表
file1.suf1 file2.suf1 file1.suf2 file2.suf2 ...

如何在makefile中执行此操作?

2 个答案:

答案 0 :(得分:0)

以下内容将起作用。

FILES = file1 file2 file3 file4

SUF = .suf1 .suf2 .suf3 .suf4

$(info $(foreach s,$(SUF),$(foreach f,$(FILES),$f$s)))

$(info $(foreach s,$(SUF),$(addsuffix $s,$(FILES))))

答案 1 :(得分:0)

根据定义,一切都可以在makefile中完成。

首先,您的变量语法不正确。应该没有$

FILES := file0 file1

请注意,除非您有充分的理由使用:=,否则应始终使用=。 (另外,如果一个受访者用1开始他们的阵列,我会说“没有雇用”。但这可能只是我)。

现在,您问题的一个解决方案是

$(foreach suf, $(SUF),$(addsuffix $(suf), $(FILES)))