Follow-up Comment #1, bug #64107 (project make):
$ ls makefile $ cat makefile $(info 0 CC=$(CC), $$(origin CC) = $(origin CC), makeflags = $(MAKEFLAGS)) MAKEFLAGS:=R $(info 1 CC=$(CC), $$(origin CC) = $(origin CC), makeflags = $(MAKEFLAGS)) CC ?= gcc $(info 2 CC=$(CC), $$(origin CC) = $(origin CC), makeflags = $(MAKEFLAGS)) all:; $(info 3 CC=$(CC), $$(origin CC) = $(origin CC) makeflags = $(MAKEFLAGS)) $ make-4.4 0 CC=cc, $(origin CC) = default, makeflags = 1 CC=cc, $(origin CC) = default, makeflags = R 2 CC=cc, $(origin CC) = default, makeflags = R 3 CC=, $(origin CC) = undefined makeflags = rR make-4.4: 'all' is up to date. $ We can see here that after -R was set in MAKEFLAGS, CC still had value cc, until build time. Similarly, -r was missing from makeflags until build time. This fails conditional assignment like MAKEFLAGS:=R CC ?= gcc _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?64107> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/