summaryrefslogtreecommitdiff
path: root/antlr-build.xml
blob: d28025502d5b45f54a264a54c22071f78750c13d (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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<!-- simple generic build file -->

<project name="antlr" default="all" basedir=".">

  <!-- Properties -->

  <property name="name" value="antlr"/>
  <property name="src" value="src"/>
  <property name="build" value="work"/>
  <property name="build.classes" value="${build}/classes"/>
  <property name="build.doc" value="${build}/api"/>
  <property name="build.lib" value="${build}/lib"/>
  <property name="packagenames" value="antlr.*"/>
  <property name="j2se.apidoc" value="http://java.sun.com/j2se/1.4/docs/api/"/>

  <!-- Targets -->

  <!-- Prepare build directories -->
  <target name="prepare">
    <mkdir dir="${src}"/>
    <mkdir dir="${build}"/>
    <mkdir dir="${build.classes}"/>
    <mkdir dir="${build.lib}"/>
    <mkdir dir="${build.doc}"/>
    <copy todir="${src}/antlr">
      <fileset dir="antlr"/>
    </copy>
  </target>

  <!-- Kill all the created directories -->
  <target name="clean">
    <delete dir="${build}"/>
    <delete dir="${src}"/>
  </target>

  <!-- Build classes -->
  <target name="classes" depends="prepare">
    <javac srcdir="${src}" destdir="${build.classes}"
      debug="off" optimize="on" deprecation="on"/>
  </target>

  <!-- Build jar archives -->
  <target name="jar" depends="classes">
    <jar jarfile="${build.lib}/${name}.jar" basedir="${build.classes}"
      index="true">
      <manifest>
        <attribute name="Main-Class" value="antlr.Tool"/>
      </manifest>
    </jar>
  </target>

  <!-- Build the full JavaDocs -->
  <target name="javadoc" depends="prepare">
    <javadoc sourcepath="${src}"
      destdir="${build.doc}"
      doctitle="${name} Javadoc"
      windowtitle="${name} Javadoc"
      package="true"
      author="true"
      version="true"
      packagenames="${packagenames}"
      splitindex="true"
      use="true"
      additionalparam="-Xdoclint:none">
      <link href="${j2se.apidoc}"/>
    </javadoc>
  </target>

  <!-- Build everything -->
  <target name="all" depends="jar,javadoc"/>

</project>