Skip to content

Commit 2b9f189

Browse files
committed
Added ant build script
1 parent a05f975 commit 2b9f189

2 files changed

Lines changed: 77 additions & 0 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
/.idea/
1010
/nbproject/
1111
*build.xml
12+
!ant/build.xml
1213
manifest.mf
1314

1415

ant/build.xml

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
Self-contained Ant build for javaxt-core.
4+
5+
javaxt-core has no third-party dependencies, so a plain javac + jar is all
6+
that's needed.
7+
8+
Usage:
9+
ant -f ant/build.xml (clean + jar, version "dev")
10+
ant -f ant/build.xml -Dversion.num=2.3.0 (override the version)
11+
12+
The release workflow passes -Dversion.num=<tag>, so "dev" is only used
13+
for local/ad-hoc builds.
14+
15+
Produces: dist/javaxt-core.jar
16+
-->
17+
<project name="javaxt-core" default="jar" basedir=".">
18+
19+
<property name="project.name" value="JavaXT Core"/>
20+
<property name="version.num" value="dev"/>
21+
22+
<property name="src.dir" value="../src"/>
23+
<property name="build.dir" value="../build"/>
24+
<property name="classes.dir" value="${build.dir}/classes"/>
25+
<property name="dist.dir" value="../dist"/>
26+
<property name="dist.jar" value="${dist.dir}/javaxt-core.jar"/>
27+
28+
<tstamp>
29+
<format property="build.date" pattern="yyyy-MM-dd HH:mm:ss z"/>
30+
</tstamp>
31+
32+
33+
<target name="clean" description="Delete build artifacts">
34+
<delete dir="${build.dir}"/>
35+
<delete dir="${dist.dir}"/>
36+
</target>
37+
38+
39+
<target name="compile" description="Compile the source">
40+
<mkdir dir="${classes.dir}"/>
41+
<javac srcdir="${src.dir}"
42+
destdir="${classes.dir}"
43+
source="1.8"
44+
target="1.8"
45+
encoding="UTF-8"
46+
includeantruntime="false"
47+
debug="true">
48+
</javac>
49+
</target>
50+
51+
52+
<target name="copy-resources" depends="compile"
53+
description="Copy non-java resources (e.g. native dlls) into the jar root">
54+
<copy todir="${classes.dir}">
55+
<fileset dir="${src.dir}" excludes="**/*.java,**/*.form"/>
56+
</copy>
57+
</target>
58+
59+
60+
<target name="jar" depends="copy-resources" description="Build the jar">
61+
<mkdir dir="${dist.dir}"/>
62+
<jar destfile="${dist.jar}" basedir="${classes.dir}">
63+
<manifest>
64+
<attribute name="Bundle-Name" value="${project.name}"/>
65+
<attribute name="Bundle-Version" value="${version.num}"/>
66+
<attribute name="Bundle-Date" value="${build.date}"/>
67+
<attribute name="Implementation-Title" value="${project.name}"/>
68+
<attribute name="Implementation-Version" value="${version.num}"/>
69+
<attribute name="Implementation-URL" value="http://www.javaxt.com"/>
70+
<attribute name="Main-Class" value="javaxt.utils.Console"/>
71+
</manifest>
72+
</jar>
73+
<echo message="Built ${dist.jar} (version ${version.num})"/>
74+
</target>
75+
76+
</project>

0 commit comments

Comments
 (0)