Используя Ant, я мог разархивировать архив, прежде чем приступить к сборке как таковой... Это возможно с помощью nmake? Могу ли я вызвать внешнее приложение? Или даже пакетный скрипт?
Есть ли в nmake задачи сборки?
Ответы (2)
Любой вариант make может выполнять любую задачу, которую можно выполнить из командной строки. Действительно, большая часть функциональности сборки любого make-файла будет зависеть от запуска внешних процессов, таких как компилятор, компоновщик, библиотекарь и т. д. Единственным недостатком make является то, что существует множество вариантов синтаксиса (nmake, borland make , GNU make и т. д.), что делает практически невозможным написание одного кроссплатформенного make-файла.
Отвечая на ваш конкретный вопрос, обратите внимание на следующее:
main.cpp: archive.zip unzip archive.zip
По сути, это означает, что main.cpp зависит от archive.zip, и утверждает, что эту зависимость можно удовлетворить, вызвав команду «unzip».
Вы можете вызывать внешнее приложение из make-файлов nmake точно так же, как и из любого другого Make-файла.
Впрочем, что звать? Вам нужно будет установить инструменты командной строки WinZip или что-то еще, верно?
Я рекомендую просмотреть SCons. Это замечательный движок сборки, полностью поддерживающий Windows и MSVC++ и имеющий встроенную распаковку.