chiark / gitweb /
Merge branch 'master' of https://git.distorted.org.uk/~markw/subdirmk
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 13 Nov 2019 21:42:10 +0000 (21:42 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 13 Nov 2019 21:42:10 +0000 (21:42 +0000)
1  2 
subdirmk/README

diff --combined subdirmk/README
index 95cdd69024b8ea194ab2d32d10d31c5857bf3a85,9a53f93bbca48db9d27c631351fe95855a58532d..1b249fd04b6f7914f7df0e63663b824eddc17bfa
@@@ -14,7 -14,7 +14,7 @@@ style is not very ergonomic.  The main 
    - constantly having to write out long file and directory names
    - the lack of a per-directory make variable namespace means
      long make variables (or namespace clashes)
-   - it is difficult to arrange that one can cd to a subdirectory 
+   - it is difficult to arrange that one can cd to a subdirectory
      and say `make all' and have something reasonable happen
      (to wit, build an appropriate subset)
  
@@@ -151,8 -151,8 +151,8 @@@ we describe the expansion at the top le
  case (in general in variable names we call that TOP rather than the
  empty string).
  
- &CAPS         =>      sub_dir_CAPS                    or TOP_CAPS
- &lc           =>      sub/dir/lc                      or lc
+ &CAPS         =>      sub_dir_CAPS                    or TOP_CAPS
+ &lc           =>      sub/dir/lc                      or lc
        Here CAPS is any ASCII letter A-Z and lc is a-z.
        The assumption is that filenames are usually lowercase and
        variables usually uppercase.  Otherwise, use another syntax:
  &!STUFF
        changes the escape sequence from & to literally STUFF
        STUFF may be any series of of non-whitespace characters,
 -      and is terminated by EOL or lwsp.  STUFF and the lwsp
 -      is discarded.
 +      and is terminated by EOL or lwsp.  &!STUFF and the lwsp
 +      are discarded.
  
        After this, write STUFF instead of &, everywhere.
        The effect is global and lasts until the next setting.
        it back before using &:include.
  
        Notably
 -              STUFFSTUFF      =>      STUFF
 +              STUFFSTUFF      =>      STUFFSTUFF
                \STUFF          =>      STUFF
                STUFF!&         set escape back to &
  
  &TARGETS_things
 -      Handled specially.  If mentioned, declares that
 -      this subdirectory ought to have a target `things'.
 -      (`all' if not specified).  The rule will be
 +      Handled specially.  If mentioned, declares that this
 +      subdir ought to have a target `things'.  The rule will be
                &/things:: $(&TARGETS_things)
  
        You may extend it by adding more :: rules for the target,
                &TARGETS_check += & test-passed.stamp
  
        It is important to mention &TARGETS_things at least once in
 -      the context of each applicable directory, because it arranges
 -      that the *parent* will also have a `things' target which
 -      recursively implies this directory's `things'.
 +      the context of each applicable directory, because doing so
 +      arranges that the *parent* will also have a `things' target
 +      which recursively implies this directory's `things'.
  
        Must be spelled exactly &TARGETS_things.  &_TARGETS_things,
 -      for example, does not work.  But mentioning it in a #-comment
 -      *does* work because the & filter does not care about comments.
 +      for example, is not magic.  But mentioning &TARGETS_things in
 +      a #-comment *does* work because the & filter does not care
 +      about comments.
  
        `all' is extra special: every directory has an `all'
        target, which corresponds to &TARGETS.