在条件中添加先决条件



如果在工作区中找到另一个文件,是否可以添加先决条件?或者我怎样才能实现以下想法?基本上,如果我的工作空间在特定位置有一个lcf文件,我需要创建另一个文件。像这样:

lcf := ../base_sw/lcf/base.lcf
.PHONY :
all : $(objects)
# if $(lcf) file exists then
all : $(objects) sup.a2l
sup.a2l :
    # Perl script runs here to produce sup.a2l
    @echo Chris > $@

应该这样做:

lcf := $(wildcard ../base_sw/lcf/base.lcf)
.PHONY :
all : $(objects) $(lcf)

我想我已经自己回答了这个问题!

如果lcf文件不存在,通配符函数不返回:

  lcf := $(wildcard ../base_sw/lcf/base.lcf)

开始构建需要制作的文件:

make_these_file := $(obejcts)

如果lcf变量不为空,则追加到文件列表中:

ifneq ($(lcf),)
   make_these_file += sup.a2l
endif

现在我们的目标文件需要制作:

.PHONY :
all : $(make_these_file)
sup.a2l :
   # Perl script here to produce sup.a2l
   @echo Chris > $@

相关内容

  • 没有找到相关文章

最新更新