
Scott Wood wrote:
Wolfgang Denk wrote:
Dear Scott Wood,
In message 20091019212409.GA31322@loki.buserror.net you wrote:
The override keyword is needed for make to take our version over the one specified on the command line, and remove it from the list of command line overrides that are passed to submakes. IMHO, the combination of "export" and "override" ought to do this automatically, but oh well.
I have to admit that I don't see the problem. When I explicitly ask for a specific ARCH setting on the command line (versus using some setting I inherited from the envrionment, eventually even unaware of the current value), then I do want to use that. So the current code seems to do what I would expect from it.
Maybe my expectations are whacky, though.
I tend to NAK this one.
For the benefit of those who weren't on the IRC channel when we discussed this, I'll restate my objection. I think you're reading too much into the difference between setting ARCH with an environment variable and setting it on the command line. The number of users who are going to be confused by this (at least one, since I was) is greater than the number of users who would have done something useful by truly forcing ARCH=powerpc (zero without other changes, since all it gets you is a failed build).
BTW, the existing makefile fragment: ifeq ($(ARCH),powerpc) ARCH = ppc endif
does not do anything if you pass ARCH in the environment either. U-Boot will build if you pass ARCH=powerpc that way, but it will also build if you pass ARCH=nonsense, as whatever you specify will be replaced by include/config.mk.
-Scott