这是我正确设置PATH_PROJET var的代码 - >
PATH_PROJET = 0
-projet-build-path:
ifneq ($(wildcard $(PATH_CURR)/.path_root), )
$(eval PATH_PROJET = .)
endif
ifneq ($(wildcard $(PATH_CURR)/../.path_root), )
$(eval PATH_PROJET = ..)
endif
-projet-build-path-verif:
ifeq ($(PATH_PROJET),0)
$(error Cant find $(PATH_PROJET)/.path_root)
endif
如果我使用PATH_PROJET var进行回声,我会得到正确的设置(。或..取决于),但是当我尝试在第二个规则“-projet-build-path-verif”中使用相同的var时,它会使用这个var“0”的第一个值,但不是我刚设置的值。如果我在$(通配符)中使用var,则会出现同样的问题。
有人有解决方案吗?
答案 0 :(得分:0)
我最终找到了另一种方法。我不知道如果在规则之外可以使用,所以我以这种方式设置var(在所有规则之外)
ifneq ($(wildcard $(PATH_CURR)/.path_root), )
PATH_PROJET = .
else
ifneq ($(wildcard $(PATH_CURR)/../.path_root), )
PATH_PROJET = ..
else
PATH_PROJET = 0
endif
endif