title: Iterating over lists in Makefiles?
body: <p>I find I'm writing a lot of Makefiles that could be cleaned up with the use of <em>n</em>-tuple lists. But I can't find any way to do this properly (and cleanly). So far I've only been able to come up with using <em>$(shell ...)</em> and <em>tr</em>, <em>sed</em>, or otherwise non-Makefile standards.</p>
  
  <p>For example, I'd like to do this:</p>
  
  <pre><code>XYZs = \
      dog.c  pull_tail bark  \
      duck.c chase     quack \
      cow.c  tip       moo
  
  all:
      @- $(foreach X Y Z,$(XYZs), \
          $(CC) $X -o bully/$Y ; \
          ln bully/$Y sounds/$Z ; \
      )
  </code></pre>
  
  <p>Is there a good way to iterate <em>n</em>-tuple lists in Makefiles? Thanks!</p>