makefile: как вызывать макросы в макросах - PullRequest
1 голос
/ 07 мая 2010

В моем файле make есть следующие макросы:


pdf: // сделать что-то

clean: // просто еще одна интересная вещь


Нет, я хочу объявить макрос all: который включает (или вызывает) макросы выше.Следующая вещь не работает:


all: pdf: clean:


Я не хочу повторять код из pdf: и clean: по порядку, нетвосстать против принципа СУХОГО.

Спасибо за вашу помощь.

Ответы [ 3 ]

2 голосов
/ 07 мая 2010

Это не макросы, а цели.

Make-файлы принимают синтаксис [target]: [зависимая цель 1] [зависимая цель 2]

Попытка:

all: pdf clean
1 голос
/ 07 мая 2010

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

Это не правильно. Первая нормальная цель в файле - цель по умолчанию. В all нет ничего волшебного, хотя принято использовать это в качестве первой цели.

0 голосов
/ 07 мая 2010

Вы также можете запустить:

make clean pdf

В любом случае, all обычно используется как цель make по умолчанию - другими словами, выполнение make без аргумента аналогично вызову make all . Это может быть очень запутанным для опытных пользователей, поэтому, если вы хотите «такой ярлык», называйте его почтительно (например, cpdf )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...