PageRenderTime 35ms CodeModel.GetById 33ms app.highlight 1ms RepoModel.GetById 0ms app.codeStats 0ms

/installer/build.xml

http://jswat.googlecode.com/
XML | 100 lines | 26 code | 5 blank | 69 comment | 0 complexity | e678914b776c32578f546a136cb0fbe1 MD5 | raw file
Possible License(s): MPL-2.0-no-copyleft-exception
  1<?xml version="1.0" encoding="UTF-8"?>
  2<!-- You may freely edit this file. See commented blocks below for -->
  3<!-- some examples of how to customize the build. -->
  4<!-- (If you delete it and reopen the project it will be recreated.) -->
  5<project name="JSwat_Installer" default="default" basedir=".">
  6    <description>Builds, tests, and runs the project JSwat Installer.</description>
  7    <import file="nbproject/build-impl.xml"/>
  8    <!--
  9
 10    There exist several targets which are by default empty and which can be 
 11    used for execution of your tasks. These targets are usually executed 
 12    before and after some main targets. They are: 
 13
 14      -pre-init:                 called before initialization of project properties
 15      -post-init:                called after initialization of project properties
 16      -pre-compile:              called before javac compilation
 17      -post-compile:             called after javac compilation
 18      -pre-compile-single:       called before javac compilation of single file
 19      -post-compile-single:      called after javac compilation of single file
 20      -pre-compile-test:         called before javac compilation of JUnit tests
 21      -post-compile-test:        called after javac compilation of JUnit tests
 22      -pre-compile-test-single:  called before javac compilation of single JUnit test
 23      -post-compile-test-single: called after javac compilation of single JUunit test
 24      -pre-jar:                  called before JAR building
 25      -post-jar:                 called after JAR building
 26      -post-clean:               called after cleaning build products
 27
 28    (Targets beginning with '-' are not intended to be called on their own.)
 29
 30    Example of inserting an obfuscator after compilation could look like this:
 31
 32        <target name="-post-compile">
 33            <obfuscate>
 34                <fileset dir="${build.classes.dir}"/>
 35            </obfuscate>
 36        </target>
 37
 38    For list of available properties check the imported 
 39    nbproject/build-impl.xml file. 
 40
 41
 42    Another way to customize the build is by overriding existing main targets.
 43    The targets of interest are: 
 44
 45      -init-macrodef-javac:     defines macro for javac compilation
 46      -init-macrodef-junit:     defines macro for junit execution
 47      -init-macrodef-debug:     defines macro for class debugging
 48      -init-macrodef-java:      defines macro for class execution
 49      -do-jar-with-manifest:    JAR building (if you are using a manifest)
 50      -do-jar-without-manifest: JAR building (if you are not using a manifest)
 51      run:                      execution of project 
 52      -javadoc-build:           Javadoc generation
 53      test-report:              JUnit report generation
 54
 55    An example of overriding the target for project execution could look like this:
 56
 57        <target name="run" depends="JSwat_Installer-impl.jar">
 58            <exec dir="bin" executable="launcher.exe">
 59                <arg file="${dist.jar}"/>
 60            </exec>
 61        </target>
 62
 63    Notice that the overridden target depends on the jar target and not only on 
 64    the compile target as the regular run target does. Again, for a list of available 
 65    properties which you can use, check the target you are overriding in the
 66    nbproject/build-impl.xml file. 
 67
 68    -->
 69
 70    <target name="-pre-jar">
 71        <!-- Copy the license file to the .jar file. -->
 72        <copy file="../docs/release/LICENSE.txt" todir="${build.classes.dir}"/>
 73        <available property="use.top.zip" file="../jswat.zip"/>
 74        <antcall target="copy-top-zip"/>
 75        <antcall target="copy-test-zip"/>
 76        <available property="use.top.version" file="../version.properties"/>
 77        <antcall target="copy-top-version"/>
 78        <antcall target="copy-test-version"/>
 79    </target>
 80
 81    <target name="copy-top-zip" if="use.top.zip">
 82        <!-- Copy the production .zip file to the .jar file. -->
 83        <copy file="../jswat.zip" todir="${build.classes.dir}"/>
 84    </target>
 85
 86    <target name="copy-test-zip" unless="use.top.zip">
 87        <!-- Copy the dummy .zip file to the .jar file. -->
 88        <copy file="test/jswat.zip" todir="${build.classes.dir}"/>
 89    </target>
 90
 91    <target name="copy-top-version" if="use.top.version">
 92        <!-- Copy the production version file to the .jar file. -->
 93        <copy file="../version.properties" todir="${build.classes.dir}"/>
 94    </target>
 95
 96    <target name="copy-test-version" unless="use.top.version">
 97        <!-- Copy the dummy version file to the .jar file. -->
 98        <copy file="test/version.properties" todir="${build.classes.dir}"/>
 99    </target>
100</project>