chiark / gitweb /
docs
[subdirmk.git] / subdirmk / README
diff --git a/subdirmk/README b/subdirmk/README
new file mode 100644 (file)
index 0000000..7cf84cf
--- /dev/null
@@ -0,0 +1,40 @@
+&CAPS          =>      subdir_CAPS                     or TOP_CAPS
+&lc            =>      subdir/lc                       or lc
+
+&_             =>      subdir_                         or TOP_
+&/             =>      subdir/                         or nothing
+&=_            =>      subdir                          or TOP
+&=/            =>      subdir                          or .
+&^             =>      $(top_srcdir)/subdir            or $(top_srcdir)
+&~             =>      $(abs_top_srcdir)/subdir        or $(abs_top_srcdir)
+
+&&             =>      &&
+\&             =>      &
+
+& thing thing... &     =>      each thing prefixed by &/ &^/ &~/ resp
+& ^ thing thing... &           each thing is any non-ws
+& ~ thing thing... &           & may be omitted before EOL or before \EOL
+                               other &'s not recognised
+
+CAPS is [A-Z][0-9_A-Z]*(?!\w)
+lc is [a-z][-+,0-9_a-z]*(?!\w)
+
+&!<spaces or tabs>     disables & *until* EOL (and disappears)
+
+&!STUFF<lwsp>          STUFF is recognised instead of &
+                       the terminating lwsp is discarded too
+                       may also occur at eol
+
+eg notably
+ STUFF!&       now & is recognised instead (ie back to normal)
+ STUFFSTUFF    STUFF
+
+eg
+ &!@@@         @@@ is recognised instead of &
+ @@@!&         go back to &
+
+&TARGETS[_things]              is handled specially
+                               must be spelled precisely this way
+                               if no _things, means _all
+
+Also, `all' is weird in that it is present even if not specified