Spec-Zone.ru › GNU Make

Условное присвоение переменной

Существует ещё один оператор присваивания переменных, ‘?=’. Он называется оператором условного присваивания переменной, так как он действует только в том случае, если переменная ещё не определена. Это утверждение:

FOO ?= bar

в точности эквивалентно этому (см. Функцию origin):

ifeq ($(origin FOO), undefined)
  FOO = bar
endif

Обратите внимание, что переменная, установленная в пустое значение, всё ещё определена, поэтому ‘?=’ не установит эту переменную.

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/Conditional-Assignment.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API