用/结束目标?

时间:2014-04-30 17:09:09

标签: makefile target

我想编写一个通用的makefile,它可以同时满足我对各种项目的大部分需求。但后来我摔倒了下面的内容:

%/:
    mkdir -p $@

.SECONDEXPANSION:
$(objects): $$(dir $$@)

我希望这个运行得很好并且只要$(objects)中的目标的目录确实需要一个目录就创建一个目录。但不知怎的,它没有用。我检查并发现以下内容:目标不能以' /'结尾。

有没有办法可以避免这种情况?

1 个答案:

答案 0 :(得分:1)

您只需选择一个后缀,该后缀不能是文件夹中文件的名称。例如.。所以规则如下:

%/.:
    mkdir -p $@

.SECONDEXPANSION:
$(objects): $$(dir $$@).

由于.指的是目录本身,因此不应该产生任何问题:)