chiark / gitweb /
Syntax: Provide convenience syntax &( for $(eval
[subdirmk.git] / README
diff --git a/README b/README
index 4493a0da2f146b5bf9121f09aa780ee9b3ee5cfa..d85a68804c4e4bf8adff2480fc37fcf9bcef0ed7 100644 (file)
--- a/README
+++ b/README
@@ -219,9 +219,10 @@ STUFF $ THINGS     ..      STUFF $$ THINGS
 &:endm         ..      endef
        NAME is processed for &
 
-&${..$..}      =>      ${eval ${call ..$$..}}
+&{..$..}       =>      ${eval ${call ..$$..}}
        (matches { } pairs to find the end)
        content is $-doubled (unless it contains &$- to turn that off)
+       cf &(...), see "Convenience syntax for eval", below.
 
 Together &:macro and &${...} provide a more reasonable macro facility
 than raw make.  They solve the problem that make expansions cannot
@@ -245,6 +246,18 @@ A few contexts do not support $-doubling, such as directive arguments
 or places where this might imply $-quadrupling.  (There is no way to
 get $-quadrupling.)
 
+Convenience syntax for eval
+- - - - - - - - - - - - - -
+
+&(thing                =>      $(call thing
+&( thing       =>      $(call thing
+       and specially:
+&(&lc          =>      $(call sub_dir_lc       or $(call TOP_lc
+&( &lc         =>      $(call sub_dir_lc       or $(call TOP_lc
+       even though lc would normally be thought a filename
+
+Unlike &{...}, this does not involve any dollar-doubling.
+
 
 Invocation, "recursive" per-directory targets
 ---------------------------------------------