forked from Chatanga/Girinoscope
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.xml
121 lines (108 loc) · 4.72 KB
/
build.xml
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
111
112
113
114
115
116
117
118
119
120
121
<?xml version="1.0"?>
<project name="Girinoscope" default="usage" basedir=".">
<property name="target.dir" value="${basedir}/build" />
<property name="source.encoding" value="UTF-8" />
<property name="project.version" value="1.1.3" />
<target name="clean" description="Clean the crafting table.">
<delete dir="${target.dir}" />
</target>
<target name="build" description="Build the Girinoscope library.">
<mkdir dir="${target.dir}/classes" />
<!--
The bootstrap classpath warning is bound to happen if not using
a JDK 1.6 or not having it located in the same folder as me.
-->
<property name="boot.classpath" value="${user.home}/Applications/jdk1.6.0_45/jre/lib/rt.jar" />
<javac
srcdir="${basedir}/src"
destdir="${target.dir}/classes"
includeantruntime="false"
debug="on"
encoding="${source.encoding}"
source="1.6"
target="1.6"
bootclasspath="${boot.classpath}">
<classpath>
<fileset dir="${basedir}/lib" includes="*.jar" />
</classpath>
</javac>
<copy todir="${target.dir}/classes">
<fileset dir="${basedir}/src" excludes="*.java" />
</copy>
<mkdir dir="${target.dir}/lib" />
<jar destfile="${target.dir}/lib/Girinoscope.jar">
<fileset dir="${target.dir}/classes" />
<manifest>
<attribute name="Main-Class" value="org.hihan.girinoscope.ui.UI" />
</manifest>
</jar>
</target>
<target name="set-jvmarg">
<!-- The '-client' is just a default inoffensive option to avoid
an empty value for the 'jvmarg' which turns to be a problem for Ant.
-->
<condition property="jvmarg" value="-client">
<os family="windows" />
</condition>
<condition property="jvmarg" value="-d32">
<os family="mac" />
</condition>
<condition property="jvmarg" value="-client">
<!-- Tested after 'mac' because a Mac is a Unix
(and remember that Ant properties are immutable).
-->
<os family="unix" />
</condition>
</target>
<target name="run-sonar-analysis" depends="clean, build">
<property name="sonar.projectKey" value="org.hihan.org.girinoscope" />
<property name="sonar.projectName" value="Girinoscope" />
<property name="sonar.projectVersion" value="${project.version}" />
<property name="sonar.language" value="java" />
<property name="sonar.sources" value="src" />
<property name="sonar.binaries" value="${target.dir}" />
<property name="sonar.sourceEncoding" value="${source.encoding}" />
<taskdef uri="antlib:org.sonar.ant" resource="org/sonar/ant/antlib.xml">
<classpath path="${basedir}/sonar-ant-task-2.2.jar" />
</taskdef>
<sonar:sonar xmlns:sonar="antlib:org.sonar.ant" />
</target>
<target name="run" description="Run Girinoscope." depends="set-jvmarg">
<echo message="Running on ${os.name} (${os.arch})." />
<java classname="org.hihan.girinoscope.ui.UI" fork="true">
<jvmarg value="${jvmarg}" />
<classpath>
<fileset dir="${basedir}/lib" includes="*.jar" />
<fileset dir="${target.dir}/lib" includes="*.jar" />
</classpath>
</java>
</target>
<target name="dist" description="Build Girinoscope distribution." depends="clean, build">
<tstamp>
<format property="build.number" pattern="yyyyddMMhhmm" timezone="UTC" />
</tstamp>
<property name="app.dir" value="Girinoscope-v${project.version}-beta-${build.number}" />
<zip destfile="${target.dir}/dist/${app.dir}.zip">
<zipfileset dir="${basedir}" prefix="${app.dir}">
<include name="lib/*.jar" />
</zipfileset>
<zipfileset dir="${basedir}/build" prefix="${app.dir}">
<include name="lib/*.jar" />
</zipfileset>
<zipfileset dir="${basedir}/native" prefix="${app.dir}">
<include name="linux/**/*" />
<include name="macosx/**/*" />
<include name="windows/**/*" />
</zipfileset>
<zipfileset dir="${basedir}/native" prefix="${app.dir}" filemode="755">
<include name="girinoscope" />
</zipfileset>
<zipfileset dir="${basedir}/native" prefix="${app.dir}">
<include name="girinoscope.bat" />
</zipfileset>
</zip>
</target>
<target name="usage" description="Display usage.">
<echo message="Use 'ant -projecthelp' to list the available targets." />
</target>
</project>