In article <[email protected]>,
David Holland <[email protected]> wrote:
>On Sat, Feb 20, 2016 at 01:19:03AM +0000, Simon J. Gerraty wrote:
> > Modified Files:
> > src/usr.bin/make: [lots of very random stuff]
>
>Was any of this discussed anywhere?
Yes, we discussed it privately. The short explanation is:
The previous fix to avoid eating $'s in := assignments broken some uses
that were legitimate:
1. export environment changes .export-literal:
Previously there was no way to export variables into the environment
without having their values expanded. It is useful for sub-makes to
be able to pass such variables unexpanded and have the sub-make expand
them.
2. SAVE_DOLLARS: There were some complex use cases that took advantage of the
previous $$ -> $ behavior of := that broke. Although it is unclear if
there is a better way to do this, the expedient method was to provide
a knob to enable or disable the behavior. We are going to revisit this.
As for the variable name, we discussed better names, but we both
thought that SAVE_DOLLARS was funny so we kept it.
christos