1b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato<!-- Ant build script for ProGuard. -->
2b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
3b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato<project name    = "proguard"
4b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         default = "all"
5b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         basedir = "..">
6b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
7b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <property file = "build/build.properties"/>
8b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <property name = "src"     value = "src"/>
9b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <property name = "classes" value = "classes"/>
10b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <property name = "lib"     value = "lib"/>
11b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
12b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <property name = "ant.jar" value = "${ant.home}/lib/ant.jar"/>
13b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <property name = "wtk.jar" value = "${wtk.home}/wtklib/kenv.jar"/>
14b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
15b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "all"     depends = "basic,options"/>
16b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "basic"   depends = "proguard,proguardgui,retrace"/>
17b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "options" depends = "anttask,wtkplugin"/>
18b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
19b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "proguard" depends = "classes,lib">
20b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <javac nowarn      = "true"
21b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           deprecation = "false"
22b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           srcdir      = "${src}"
23b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           destdir     = "${classes}"
24b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           includes    = "proguard/ProGuard.java">
25b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <compilerarg value = "-Xlint:none"/>
26b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </javac>
27b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
28b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <copy todir = "${classes}">
29b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <fileset dir = "${src}">
30b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/*.properties"/>
31b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/*.png"/>
32b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/*.gif"/>
33b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/*.pro"/>
34b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      </fileset>
35b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </copy>
36b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
37b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <jar jarfile  = "${lib}/proguard.jar"
38b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         manifest = "${src}/proguard/MANIFEST.MF"
39b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         basedir  = "${classes}"
40b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         includes = "proguard/**"/>
41b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  </target>
42b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
43b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "proguardgui" depends = "proguard">
44b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <javac nowarn      = "true"
45b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           deprecation = "false"
46b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           srcdir      = "${src}"
47b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           destdir     = "${classes}"
48b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           includes    = "proguard/gui/ProGuardGUI.java">
49b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <compilerarg value = "-Xlint:none"/>
50b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </javac>
51b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
52b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <copy todir = "${classes}">
53b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <fileset dir = "${src}">
54b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/gui/*.properties"/>
55b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/gui/*.png"/>
56b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/gui/*.gif"/>
57b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/gui/*.pro"/>
58b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      </fileset>
59b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </copy>
60b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
61b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <jar jarfile  = "${lib}/proguardgui.jar"
62b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         manifest = "${src}/proguard/gui/MANIFEST.MF"
63b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         basedir  = "${classes}"
64b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         includes = "proguard/gui/**"/>
65b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  </target>
66b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
67b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "retrace" depends = "classes,lib">
68b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <javac nowarn      = "true"
69b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           deprecation = "false"
70b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           srcdir      = "${src}"
71b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           destdir     = "${classes}"
72b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           includes    = "proguard/retrace/ReTrace.java">
73b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <compilerarg value = "-Xlint:none"/>
74b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </javac>
75b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
76b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <copy todir = "${classes}">
77b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <fileset dir = "${src}">
78b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/retrace/*.properties"/>
79b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/retrace/*.png"/>
80b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/retrace/*.gif"/>
81b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/retrace/*.pro"/>
82b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      </fileset>
83b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </copy>
84b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
85b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <jar jarfile  = "${lib}/retrace.jar"
86b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         manifest = "${src}/proguard/retrace/MANIFEST.MF"
87b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         basedir  = "${classes}"
88b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         includes = "proguard/retrace/**"/>
89b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  </target>
90b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
91b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "anttask" depends = "proguard">
92b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <fail message="Please set the value of the property ant.home in the file build/build.properties, if you want to build the optional ProGuard Ant task.">
93b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <condition>
94b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <not>
95b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato          <available file="${ant.jar}"/>
96b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        </not>
97b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      </condition>
98b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </fail>
99b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
100b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <javac nowarn      = "true"
101b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           deprecation = "false"
102b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           classpath   = "${ant.jar}"
103b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           srcdir      = "${src}"
104b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           destdir     = "${classes}"
105b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           includes    = "proguard/ant/ProGuardTask.java">
106b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <compilerarg value = "-Xlint:none"/>
107b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </javac>
108b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
109b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <copy todir = "${classes}">
110b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <fileset dir = "${src}">
111b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/ant/*.properties"/>
112b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/ant/*.png"/>
113b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/ant/*.gif"/>
114b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/ant/*.pro"/>
115b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      </fileset>
116b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </copy>
117b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
118b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <jar jarfile  = "${lib}/proguard.jar"
119b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         update   = "true"
120b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         basedir  = "${classes}"
121b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         includes = "proguard/ant/**"/>
122b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  </target>
123b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
124b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "wtkplugin" depends = "proguard">
125b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <fail message="Please set the value of the property wtk.home in the file build/build.properties, if you want to build the optional ProGuard WTK plugin.">
126b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <condition>
127b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <not>
128b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato          <available file="${wtk.jar}"/>
129b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        </not>
130b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      </condition>
131b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </fail>
132b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
133b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <javac nowarn      = "true"
134b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           deprecation = "false"
135b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           classpath   = "${wtk.jar}"
136b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           srcdir      = "${src}"
137b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           destdir     = "${classes}"
138b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato           includes    = "proguard/wtk/ProGuardObfuscator.java">
139b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <compilerarg value = "-Xlint:none"/>
140b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </javac>
141b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
142b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <copy todir = "${classes}">
143b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <fileset dir = "${src}">
144b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/wtk/*.properties"/>
145b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/wtk/*.png"/>
146b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/wtk/*.gif"/>
147b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato        <include name = "proguard/wtk/*.pro"/>
148b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      </fileset>
149b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </copy>
150b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
151b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <jar jarfile  = "${lib}/proguard.jar"
152b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         update   = "true"
153b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         basedir  = "${classes}"
154b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato         includes = "proguard/wtk/**"/>
155b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  </target>
156b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
157b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "classes">
158b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <mkdir dir = "${classes}"/>
159b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  </target>
160b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
161b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "lib">
162b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <mkdir dir = "${lib}"/>
163b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  </target>
164b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato
165b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  <target name = "clean">
166b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    <delete>
167b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <fileset dir = "${classes}"/>
168b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato      <fileset dir = "${lib}"/>
169b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato    </delete>
170b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato  </target>
171b72c5c2e5482cf10117b2b25f642f7616b2326c3Joe Onorato</project>
172