summaryrefslogtreecommitdiffstats
path: root/build.xml
blob: 8dde32e6addafb156b880319b4f55e47e153013b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?xml version="1.0" encoding="UTF-8"?>
<project name="Fernflower" default="dist" basedir=".">

  <target name="init">
    <property name="src" value="${basedir}/src"/>
    <property name="out" value="${basedir}/out/production"/>
    <property name="dist" value="${basedir}/fernflower.jar"/>
    <property name="test-src" value="${basedir}/test"/>
    <property name="test-out" value="${basedir}/out/test"/>
  </target>

  <!-- external dependencies, adjust to your own -->
  <path id="junit">
    <file name="${basedir}/../../../lib/junit-4.11.jar"/>
    <file name="${basedir}/../../../lib/hamcrest-core-1.3.jar"/>
    <file name="${basedir}/../../../lib/hamcrest-library-1.3.jar"/>
  </path>

  <target name="clean" depends="init">
    <delete includeemptydirs="true" failonerror="false">
      <fileset dir="${out}"/>
      <fileset dir="${test-out}"/>
      <fileset file="${dist}"/>
    </delete>
  </target>

  <target name="compile" depends="init,clean">
    <mkdir dir="${out}"/>
    <javac srcdir="${src}" destdir="${out}" source="1.6" target="1.6" encoding="UTF-8" debug="true" includeantruntime="false"/>
  </target>

  <target name="dist" depends="init,compile">
    <jar jarfile="${dist}" compress="true" basedir="${out}" includes="**/*.class">
      <manifest>
        <attribute name="Main-Class" value="org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler"/>
      </manifest>
    </jar>
  </target>

  <target name="test-compile" depends="init,compile">
    <mkdir dir="${test-out}"/>
    <javac srcdir="${test-src}" destdir="${test-out}" source="1.6" target="1.6" encoding="UTF-8" debug="true" includeantruntime="false">
      <classpath path="${out}"/>
      <classpath refid="junit"/>
    </javac>
  </target>

  <target name="test" depends="init,test-compile">
    <junit printsummary="true" haltonfailure="true">
      <classpath path="${test-out}:${out}"/>
      <classpath refid="junit"/>
      <batchtest>
        <fileset dir="${test-src}" includes="**/*Test.java"/>
      </batchtest>
    </junit>
  </target>

</project>