Можем ли мы иметь несколько правил с одной и той же целью? - PullRequest
0 голосов
/ 21 мая 2019

Можем ли мы иметь несколько правил с одной и той же целью?Здесь пререквизиты будут меняться.Я использую 3.82 make version.Где он выберет длину пара (% символ совпадения), чтобы определить, какое правило выбрать среди нескольких противоречивых шаблонных правил.С версией 3.81 все работает нормально, как и ожидалось.Но с 3.82 он выбирает неправильное правило.

Например: - У нас есть два правила ниже

$(TGTDIR)/$(TGT_EXAMPLES_UVM)/%: $(SRC_EXAMPLES_UVM)/%
$(copy_test)

$(TGTDIR)/$(TGT_EXAMPLES_UVM)/bug_fix/%: $(SRC_EXAMPLES_UVM)/common_src/%
$(copy_test)

Значение SRC_EXAMPLES_UVM равно 'example / uvm'.Внутри папки / uvm у нас есть папка bug_fix / с некоторыми файлами в ней.Некоторые файлы являются общими (т.е. с одинаковыми именами) в папках common_src / & bug_fix /.Для этих файлов make должен запустить первое правило выше.Но в более новой версии 3.82 это работает второе правило, чтобы исправить это, я хочу иметь отдельное правило ниже для папки / bug_fix /.Это правильный способ исправить это?Потому что цель станет такой же в этом случае?Я новичок, чтобы сделать.Кто-нибудь может помочь, пожалуйста?

$(TGTDIR)/$(TGT_EXAMPLES_UVM)/bug_fix/%: $(SRC_EXAMPLES_UVM)/bug_fix/%
$(copy_test)
...