summaryrefslogtreecommitdiffstats
path: root/build.xml
blob: 24d18f0a08557f40c6e8dd40d3e373f17a2aefea (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
<?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"/>
    <!-- external dependencies, adjust to your own -->
    <property name="junit" value="${basedir}/../../../lib/junit-4.11.jar"/>
    <property name="hamcrest" value="${basedir}/../../../lib/hamcrest-core-1.3.jar"/>
  </target>

  <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}:${junit}:${hamcrest}"/>
    </javac>
  </target>

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

</project>