title: compile *.clj sources only if modified (with `clojure.core.Compile`)
body: <p>I am using the method proposed <a href="https://stackoverflow.com/a/14963239/274677">in this answer</a> to compile Clojure <code>*.clj</code> files to <code>*.class</code> (and subsequently jar them), using more or less the structure of the <code>compile-clojure</code> target from the <code>build.xml</code> file that's found at the root of the Clojure distribution (e.g. in <code>clojure-1.5.1.zip</code>). In my case:</p>
  
  <pre><code>&lt;java classname="clojure.lang.Compile" 
        failonerror="true"
        fork="true"&gt;
    &lt;classpath refid="compile.classpath"/&gt;
    &lt;sysproperty key="clojure.compile.path" value="${cljbuild.dir}"/&gt;
    &lt;arg value="${project.MainClass.name}"/&gt;
  &lt;/java&gt;
  </code></pre>
  
  <p>The problem with this approach is that it keeps compiling the <code>*.clj</code> files even though they haven't changed. Any ways around this?</p>