Почему предпосылка для цели отображается пустой? - PullRequest
0 голосов
/ 15 марта 2019
ifdef CUSTOM_CONFIG
rom: chk_custom_cfg create_custom_binaries
else
rom: create_binaries
endif

chk_custom_cfg:
ifdef CUSTOM_CONFIG
    export CUSTOM_CONFIG 
    $(eval CUST_CFG_DATA_FILES=$(CUSTOM_CONFIG)) 
    export CUST_CFG_DATA_FILES
    $(eval CUST_CFG_DATA_MEM_FILES=$(addprefix bin/,$(notdir $(CUST_CFG_DATA_FILES:.csv=.mem)))) 
    export CUST_CFG_DATA_MEM_FILES 
    $(eval CUST_CFG_DATA_BIN_FILES=$(addprefix bin/,$(notdir $(CUST_CFG_DATA_MEM_FILES:.mem=.bin))))
    export CUST_CFG_DATA_BIN_FILES 
    $(eval CUST_COMBINED_BIN_FILES=$(subst .bin,_combined.bin,$(CUST_CFG_DATA_BIN_FILES)))
    export CUST_COMBINED_BIN_FILES 
    @echo existing cfg files $(CUST_CFG_DATA_FILES)
    @echo existing mem files $(CUST_CFG_DATA_MEM_FILES)
    @echo existing bin files $(CUST_CFG_DATA_BIN_FILES)
    @echo existing combined files $(CUST_COMBINED_BIN_FILES)
endif
build_images: copy_ops_imgs 

create_binaries: config  $(COMBINED_BIN_FILES)

create_custom_binaries: cust_config $(CUST_COMBINED_BIN_FILES)
    @echo print all the pre required $^
    @echo custom config bin files $(CUST_CFG_DATA_BIN_FILES)
    @echo custom config bin files $(CUST_COMBINED_BIN_FILES)

В цели create_custom_binaries при печати $^, получая только cust_config, я ожидаю $(CUST_COMBINED_BIN_FILES) также часть предпосылки для цели cust_config

$(CUST_COMBINED_BIN_FILES) is set when CUSTOM_CONFIG is defined.

e.g:make --debug CUSTOM_CONFIG=.config.csv rom.
  • Почему предварительное условие $ (CUST_COMBINED_BIN_FILES) пусто для цели
  • create_custom_binaries?тогда как @echo custom config bin files $ (CUST_COMBINED_BIN_FILES) дает правильное значение !!

Я ценю любые указания на это.Моя цель - создать другую цель на основе входных данных, сохраненных в CUSTOM_CONFIG

...