summaryrefslogtreecommitdiffstats
path: root/build.xml
blob: d5642b2c9f709a0689ca054c76af0f34b11089bd (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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
<?xml version="1.0"?>

<!-- Written to assume that classpath is rooted in the current directory. -->
<!-- So this should be OK if you make this script in the root of a filesystem. -->
<!-- If not, you may prefer to adjust the basedir, or move some directories around. -->
<!-- The idea is that both Ant and NetBeans have to know what the package root is -->
<!-- for the classes in your application. -->
<project name="Sun Games Initiative Client Technologies" basedir="." default="all">

    <!-- Don't worry if you don't know the Ant syntax completely or need help on some tasks! -->
    <!-- The standard Ant documentation is bundled. See Help | Help Sets | Ant 1.4.1 Manual. -->

    <target name="init">
        <!-- You can set up any variables you want used throughout the script here. -->
        <!-- <property name="hello" value="world"/ -->
        <!-- To use e.g. Jikes, uncomment this line. -->
        <!-- (Or make the same change in Tools | Options | Ant Settings | Properties.) -->
        <!-- <property name="build.compiler" value="jikes"/> -->
        <!-- You might like to set up some overridable paths, etc.: -->
        <!-- <property name="mylib" value="../lib/mylib.jar"/> -->
        
        <!-- If we are running in windows, set dx8 property to true -->
        <condition property="dx8" >
            <os family="windows" />
        </condition>
        
        <!-- If we are running in linux, set linux property to true -->
        <condition property="linux" >
            <!--<os family="unix" />-->
            <os name="linux" />
        </condition>
		
		<!-- If we are running in Mac OS X, set osx property to true -->
		<condition property="osx" >
			<and>
				<os family="mac" />
				<os family="unix" />
			</and>
		</condition>
    </target>

    <target name="core" depends="init">
        <!-- Both srcdir and destdir should be package roots. -->
        <!-- They could be different of course; in that case NetBeans can also be set -->
        <!-- up to compile to a different filesystem in the same way; see Compiler Types: -->
         <ant dir="coreAPI" />
    </target>
    
    <target name="windows_plugin" depends="core" if="dx8" >
        <!-- Both srcdir and destdir should be package roots. -->
        <!-- They could be different of course; in that case NetBeans can also be set -->
        <!-- up to compile to a different filesystem in the same way; see Compiler Types: -->
         <ant dir="plugins/DX8" /> 
    </target>

    <target name="linux_plugin" depends="core" if="linux" >
        <!-- Both srcdir and destdir should be package roots. -->
        <!-- They could be different of course; in that case NetBeans can also be set -->
        <!-- up to compile to a different filesystem in the same way; see Compiler Types: -->
         <ant dir="plugins/linux" /> 
    </target>
	
    <target name="OSX_plugin" depends="core" if="osx" >
         <ant dir="plugins/OSX" /> 
    </target>

    <target name="javadoc" depends="init">
        <!-- Both srcdir and destdir should be package roots. -->
        <!-- They could be different of course; in that case NetBeans can also be set -->
        <!-- up to compile to a different filesystem in the same way; see Compiler Types: -->
        <ant dir="coreAPI" target="javadoc"/>
        <ant dir="plugins/DX8" target="javadoc"/>
        <ant dir="plugins/linux" target="javadoc"/>
		<ant dir="plugins/OSX" target="javadoc"/>
    </target>
    
    <target name="compile" depends="core,windows_plugin,linux_plugin,OSX_plugin" />
    
    <target name="all" depends="init,compile" description="Build everything.">
        <echo message="Application built. Hello ${hello}!"/>
    </target>
    
    <target name="clean" depends="init" description="Clean all build products.">
        <ant dir="plugins/DX8" target="clean"/>
        <ant dir="plugins/linux" target="clean"/>
		<ant dir="plugins/OSX" target="clean"/>
        <ant dir="coreAPI" target="clean"/>
        <delete failonerror="no">
            <fileset dir="dist">
                <include name="**/*"/>
            </fileset>
        </delete>
    </target>
    
    <target name="dist" depends="init,compile" description="Build the distribution file for this system">
        <mkdir dir="dist"/>
        <mkdir dir="dist/controller"/>
        <copy file="coreAPI/bin/jinput.jar" todir="dist"/>
        <copy file="coreAPI/lib/jutils.jar" todir="dist"/>
        <copy todir="dist/controller">
            <fileset dir="coreAPI/src/tests/controller/">
                <include name="**/*"/>
            </fileset>
        </copy>
        <zip destfile="dist/jinput_${os.name}_dist.zip" 
            basedir="dist"
            excludes="*.zip"
            />
    </target>
</project>