KDIR ?= $(shell uname -r)
Qual é o significado de ?=
?
Tenho entendido a diferença entre :=
, +=
e =
de outro segmento disponível no Stack Overflow, mas incapaz de encontrar a explicação para ?=
.
Respostas:
?=
indica para definir a KDIR
variável apenas se não estiver definida / não tiver um valor.
Por exemplo:
KDIR ?= "foo"
KDIR ?= "bar"
test:
echo $(KDIR)
Imprimiria "foo"
Manual GNU: http://www.gnu.org/software/make/manual/html_node/Setting.html
?=
pode ser usado para aplicar um valor default / fallback a uma variável, pode estar permitindo KDIR
sua configuração no ambiente.
?=
.
Obrigado a Simon e RT por sua resposta rápida e correta.
Além disso, encontrei o manual GNU que explica tudo em detalhes: http://www.gnu.org/software/make/manual/html_node/Setting.html