Как вы реализуете Makefile, который запоминает последнюю цель сборки?

Допустим, у вас есть Makefile с двумя псевдо-целями, 'all' и «отладка». Цель «отладка» предназначена для создания того же проекта, что и «все», за исключением некоторых других параметров компиляции (например, -ggdb). весь проект, если вы переключаетесь между ними. Но GNUmake естественно этого не распознает.

Так что, если вы наберете make all , вы получите

Building ...
...

Затем, если вы наберете make debug , вы получите

make: Nothing to be done for `debug'.

Итак, мой вопрос: как вы реализуете чистое решение в Makefile, чтобы заметить, что последняя сборка использовала другую псевдо-цель или другие переключатели компиляции, чем тот, который вы хотите в настоящее время? Если они разные, Makefile перестроит все.

6
задан Elliot Cameron 7 March 2011 в 16:13
поделиться