git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 04/12] Makefile: introduce CROSS_COMPILE variable

From
Marat Radchenko <marat@slonopotamus.org>
Date
Apr 28, 2014, 20:40 UTC
Message-ID
<20140428204048.GA21365@seldon>
In-Reply-To
<20140428162536.GB13002@google.com>
On Mon, Apr 28, 2014 at 09:25:36AM -0700, Jonathan Nieder wrote:
Show 7 quoted lines
> > -STRIP ?= strip
> > +STRIP = $(CROSS_COMPILE)strip
> 
> Before, STRIP from the environment took precedence over STRIP from the
> makefile.  Switching to the more usual 'environment can't be trusted'
> convention is a good change, but please mention it in the commit
> message.
Taken from [1]:
Show 20 quoted lines
> Simply expanded variables are defined by lines using ‘:=’ or ‘::=’ (see Setting Variables).
> Both forms are equivalent in GNU make; however only the ‘::=’ form is described by the POSIX
> standard (support for ‘::=’ was added to the POSIX standard in 2012, so older versions of make
> won't accept this form either).
>
> The value of a simply expanded variable is scanned once and for all, expanding any references
> to other variables and functions, when the variable is defined. The actual value of the simply
> expanded variable is the result of expanding the text that you write. It does not contain any
> references to other variables; it contains their values as of the time this variable was defined.
> Therefore,
>
>    x := foo
>    y := $(x) bar
>    x := later
> is equivalent to
>
>    y := foo bar
>    x := later
>
> When a simply expanded variable is referenced, its value is substituted verbatim.

I don't see how it relates to environment precedence. Could you please provide me an example of a situation that changed due to my commit?

[1]: http://www.gnu.org/software/make/manual/make.html#Flavors
Previous: Felipe ContrerasNext: Jonathan Nieder
Message 18 of 54 in “Towards MinGW(-W64) cross-compilation”
  1. Towards MinGW(-W64) cross-compilationMarat Radchenko, Apr 28, 2014
  2. 01/12 MINGW: config.mak.uname: add explicit way to request MinGW-buildMarat Radchenko, Apr 28, 2014
  3. Jonathan NiederApr 28, 2014
  4. 02/12 MINGW: compat/bswap.h: include stdint.hMarat Radchenko, Apr 28, 2014
  5. Erik Faye-LundApr 28, 2014
  6. Marat RadchenkoApr 28, 2014
  7. Erik Faye-LundApr 28, 2014
  8. 03/12 MINGW: compat/mingw.h: do not attempt to redefine lseek on mingw-w64Marat Radchenko, Apr 28, 2014
  9. Erik Faye-LundApr 28, 2014
  10. Marat RadchenkoApr 28, 2014
  11. Erik Faye-LundApr 28, 2014
  12. Torsten BögershausenApr 28, 2014
  13. Felipe ContrerasApr 28, 2014
  14. Erik Faye-LundApr 28, 2014
  15. 04/12 Makefile: introduce CROSS_COMPILE variableMarat Radchenko, Apr 28, 2014
  16. Jonathan NiederApr 28, 2014
  17. Felipe ContrerasApr 28, 2014
  18. Marat RadchenkoApr 28, 2014
  19. Jonathan NiederApr 28, 2014
  20. Marat RadchenkoApr 28, 2014
  21. Felipe ContrerasApr 28, 2014
  22. Marat RadchenkoApr 28, 2014
  23. Felipe ContrerasApr 28, 2014
  24. Jonathan NiederApr 28, 2014
  25. Felipe ContrerasApr 28, 2014
  26. 05/12 MINGW: git-compat-util.h: use inttypes.h for printf macros.Marat Radchenko, Apr 28, 2014
  27. Erik Faye-LundApr 28, 2014
  28. Marat RadchenkoApr 28, 2014
  29. Erik Faye-LundApr 28, 2014
  30. 06/12 MSVC: config.mak.uname: drop -D__USE_MINGW_ACCESS from compile definitionsMarat Radchenko, Apr 28, 2014
  31. Erik Faye-LundApr 28, 2014
  32. 07/12 MINGW: config.mak.uname: reorganize MINGW settingsMarat Radchenko, Apr 28, 2014
  33. Erik Faye-LundApr 28, 2014
  34. Marat RadchenkoApr 28, 2014
  35. Erik Faye-LundApr 28, 2014
  36. Marat RadchenkoApr 28, 2014
  37. 08/12 MINGW: config.mak.uname allow using CURL for non-msysGit buildsMarat Radchenko, Apr 28, 2014
  38. Erik Faye-LundApr 28, 2014
  39. Marat RadchenkoApr 28, 2014
  40. Erik Faye-LundApr 28, 2014
  41. 09/12 MINGW: config.mak.uname: drop -DNOGDIMarat Radchenko, Apr 28, 2014
  42. Erik Faye-LundApr 28, 2014
  43. 10/12 MINGW: config.mak.uname: drop USE_NED_ALLOCATORMarat Radchenko, Apr 28, 2014
  44. Erik Faye-LundApr 28, 2014
  45. Jonathan NiederApr 28, 2014
  46. Marat RadchenkoApr 29, 2014
  47. Felipe ContrerasApr 29, 2014
  48. Felipe ContrerasApr 28, 2014
  49. Philip OakleyApr 28, 2014
  50. 11/12 MINGW: do not fail at redefining pid_t on MinGW-W64Marat Radchenko, Apr 28, 2014
  51. Erik Faye-LundApr 28, 2014
  52. 12/12 MINGW: compat/mingw.h: drop fork() definitionMarat Radchenko, Apr 28, 2014
  53. Erik Faye-LundApr 28, 2014
  54. Erik Faye-LundApr 28, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.