makefile - формы - чем отличается did от made




make: правило вызова правила (3)

Могу ли я вызвать правило из другого правила в make-файле?

Похожий на:

rule1:
        echo "bye"
rule2:
        date
rule3:
        @echo "hello"
        rule1

Makefiles не являются процедурами; «правила» не похожи на функции. При этом вы можете указать, что одно правило является предпосылкой другого:

rule1:
    @echo "Rule 1"

rule2: rule1
    @echo "Rule 2"

Если вы делаете make rule2 , вы должны увидеть:

Rule 1
Rule 2

В GNU Make есть две расширенные функции, которые могут это сделать, хотя их следует использовать только в смягчающих обстоятельствах. Это SO имеет рейтинг в google.

Правильные предпосылки более рекомендуются, но иногда вам нужен пост-реквизит.

Функция GNU Make Call

Функция GNU Make Eval

По сути, Eval позволяет вам создавать цели «на лету», а Call позволяет создавать функции типа «определяет».


Просто добавьте новое правило с желаемым заказом.

rule1:
        echo "bye"
rule2:
        date
rule3:
        @echo "hello"

rule4: rule3 rule1




makefile