title: Complex conditions check in Makefile
body: <p>In my Makefile I would like to check the following complex condition:</p>
  
  <pre><code>ifdef VAR1 || VAR2 || VAR3
  action
  endif
  </code></pre>
  
  <p>however the documentation says the syntax like that is not supported. So the only simple workaround that came to my mind is to use the concatenation:</p>
  
  <pre><code>ifneq ($(VAR1)$(VAR2)$(VAR3),)
  action
  endif
  </code></pre>
  
  <p>Are there any other more correct solutions?</p>
  
  <p>For the following case:</p>
  
  <pre><code>ifdef VAR1 &amp;&amp; VAR2 &amp;&amp; VAR3
  action
  endif
  </code></pre>
  
  <p>one need to write</p>
  
  <pre><code>ifdef VAR1
  ifdef VAR2
  ifdef VAR3
  action
  endif
  endif
  endif
  </code></pre>
  
  <p>which is also ugly. Are there more elegant alternatives?</p>