Функции, контролирующие Make
Эти функции управляют способом работы Make. Как правило, они используются для предоставления информации пользователю файла makefile или для остановки Make, если обнаружена какая-либо ошибка среды.
$(error text…)-
Генерирует критическую ошибку, где сообщение — текст. Обратите внимание, что ошибка генерируется всякий раз, когда вызывается эта функция. Таким образом, если вы поместите ее внутрь рецепта или в правой части рекурсивного присваивания переменной, она не будет вычислена до тех пор, пока не потребуется. Текст будет расширен до того, как произойдёт генерация ошибки.
Например,
ifdef ERROR1 $(error error is $(ERROR1)) endif
сгенерирует критическую ошибку во время чтения файла makefile, если переменная
makeERROR1определена. Или же,ERR = $(error found an error!) .PHONY: err err: ; $(ERR)
сгенерирует критическую ошибку во время выполнения
make, если вызвана цельerr. $(warning text…)-
Эта функция работает аналогично функции
errorвыше, за исключением того, чтоmakeне завершает работу. Вместо этого текст расширяется, и полученное сообщение отображается, но обработка makefile продолжается.Результат расширения этой функции — пустая строка.
$(info text…)-
Эта функция не делает ничего, кроме вывода своих (расширенных) аргументов в стандартный вывод. Имя файла makefile или номер строки не добавляются. Результат расширения этой функции — пустая строка.
Copyright © 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Free Software Foundation, Inc.
Licensed under the GNU Free Documentation License.
https://www.gnu.org/software/make/manual/html_node/Make-Control-Functions.html