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