by the final warning state after processing all the toplevel
input files (including Final.sd.mk).
-&:local+global [&]VARIABLE ...
- Suppresses the warning about seeing both VARIABLE and
- &VARIABLE. Any & specified in the RHS is redundant: this
- always affects both versions identically.
+&:local+global [!][&]VARIABLE ...
+ Suppresses any warnings relating to forthcoming mentions
+ to VARIABLE or &VARIABLE, as applicable. Scope ends at
+ the end of the current directory's Suffix.sd.mk.
+ Prefixing with ! removes [&]VARIABLE from the suppresion list.
&:changequote NEWQUOTE
changes the escape sequence from & to literally NEWQUOTE
&$- Stops dollar-doubling
Both are idempotent and local to the file or context.
+This is useful both for make macrology involving $(eval ...), and
+possibly for helping write complicated recipes involving shell
+variables, inline Perl code, etc.
+
Sometimes we will show $'s being doubled inside another construct.
This means the content of the construct is $-doubled: $-doubling is
locally enabled, and restored afterwards.
&-expansions not mentioned here
&\$ => $
-&$( => $(
-&$NN => $(NN) where N are digits
+&$( => ${ (expands to { } so it is useable for shell too)
+&$NN => ${NN} where N are digits
A few contexts do not support $-doubling, such as directive arguments
or places where this might imply $-quadrupling. (There is no way to
just rerun ./config.status by hand.
If you go back and forth between different versions of your code you
-can sometimes find that `make' complains that one of your Subdir.sd.mk
+can sometimes find that `make' complains that one of your Dir.sd.mk
files is missing: typically, if iot was used and therefore a
dependency in some other version of your code. If you run `make
clean' (or `make realclean') these dependencies are suppressed, which