KDIR ?= $(shell uname -r)
Cuál es el significado de ?=
?
He entendido la diferencia entre :=
, +=
y =
desde otro hilo disponible en desbordamiento de pila, pero no puede encontrar la explicación a ?=
.
Respuestas:
?=
indica establecer la KDIR
variable solo si no está establecida / no tiene un valor.
Por ejemplo:
KDIR ?= "foo"
KDIR ?= "bar"
test:
echo $(KDIR)
Imprimiría "foo"
Manual de GNU: http://www.gnu.org/software/make/manual/html_node/Setting.html
?=
se puede usar para aplicar un valor predeterminado / de respaldo a una variable, puede permitir KDIR
que se configure en el entorno.
?=
.
Gracias a Simon y RT por su rápida y correcta respuesta.
Además, he encontrado el manual de GNU que explica todo en detalle: http://www.gnu.org/software/make/manual/html_node/Setting.html