title: CMake custom clean commands
body: <p>In my CMake project I'd like to have some custom behavior happen when the clean target is run.  However, if I do</p>
  
  <pre><code>add_dependencies(clean extra-clean)
  </code></pre>
  
  <p>it fails with</p>
  
  <pre><code>add_dependencies Adding dependency to non-existent target: clean
  </code></pre>
  
  <p>Is it even possible to have custom clean behavior?</p>
  
  <p><strong>EDIT:</strong> I am running some external tools as part of the build.  These tools generate lots of files, but they can be cleaned up simply by asking the tool to do so.  Ideally, I could add a custom target to the clean target to call the tool to do its cleanup.</p>