On Fri, Nov 27, 2015 at 05:20:43PM +0100, David Marchand wrote: > On Fri, Nov 27, 2015 at 5:01 PM, Ferruh Yigit <ferruh.yigit at intel.com> > wrote: > > > As far as I know only "?=" assignment overridden by command line. > > > > Basic experiment: > > > > # cat Makefile > > A ?= a > > B := b > > C = c > > > > all: > > @echo $(A) $(B) $(C) > > > > ----- > > > > # make > > a b c > > > > # A=x B=x C=x make > > x b c > > > > Those variables are passed through env, but if you give them to make. > > $ make A=x B=x C=x > x x x > > You just beat me to it! ?= can be overridden by either environment or cmdline, others are overridden just by cmdline, which means they are passed to make, not to the shell.
/Bruce