1 |
<?xml version="1.0" encoding="UTF-8"?> |
2 |
<project basedir="." default="release" name="slcshttps"> |
3 |
|
4 |
<!-- |
5 |
! Properties |
6 |
--> |
7 |
|
8 |
<!-- Set output java version --> |
9 |
<property name="javaversion" value="1.6"/> |
10 |
|
11 |
<property name="bin" value="./bin"/> |
12 |
<property name="doc" value="./doc"/> |
13 |
<property name="src" value="./src"/> |
14 |
|
15 |
<property name="version" value="0.1"/> |
16 |
<property name="package" value="nl/nikhef/slcshttps"/> |
17 |
<property name="packagename" value="nl.nikhef.slcshttps"/> |
18 |
|
19 |
|
20 |
<!-- Set short version for the above java version --> |
21 |
<condition property="javashort" value="14"> |
22 |
<equals arg1="${javaversion}" arg2="1.4"/> |
23 |
</condition> |
24 |
<condition property="javashort" value="15"> |
25 |
<equals arg1="${javaversion}" arg2="1.5"/> |
26 |
</condition> |
27 |
<condition property="javashort" value="16"> |
28 |
<equals arg1="${javaversion}" arg2="1.6"/> |
29 |
</condition> |
30 |
|
31 |
<!-- Set BouncyCastle provider --> |
32 |
<property name="bcprov" value="extern/bcprov-jdk${javashort}-143.jar"/> |
33 |
|
34 |
<!-- jarfile name contains the JVM short version --> |
35 |
<property name="jar" value="${ant.project.name}_jdk${javashort}_v${version}.jar"/> |
36 |
|
37 |
<!-- Set the correct BareBonesBrowserLaunch.java file to copy to the real one --> |
38 |
<property name="BBBLdir" value="src/${package}/util/"/> |
39 |
<!-- Note: both 1.5 and 1.6 use the .15 file --> |
40 |
<condition property="BBBL" |
41 |
value="${BBBLdir}BareBonesBrowserLaunch.java.14" |
42 |
else= "${BBBLdir}BareBonesBrowserLaunch.java.15"> |
43 |
<equals arg1="${javaversion}" arg2="1.4"/> |
44 |
</condition> |
45 |
|
46 |
<!-- |
47 |
! Path |
48 |
--> |
49 |
<path id="project.path"> |
50 |
<pathelement location="${bin}"/> |
51 |
</path> |
52 |
|
53 |
<!-- |
54 |
! task to copy the correct browser java file |
55 |
--> |
56 |
<target name="updateBBBL"> |
57 |
<copy |
58 |
file="${BBBL}" tofile="${BBBLdir}BareBonesBrowserLaunch.java" |
59 |
overwrite="true" preservelastmodified="true" verbose="true" /> |
60 |
</target> |
61 |
|
62 |
<!-- |
63 |
! Release generation |
64 |
--> |
65 |
<target name="release" depends="build,javadoc"> |
66 |
</target> |
67 |
|
68 |
<!-- |
69 |
! Class file compilation |
70 |
--> |
71 |
<target name="compile" depends="updateBBBL"> |
72 |
<mkdir dir="${bin}"/> |
73 |
<javac srcdir="${src}" |
74 |
destdir="${bin}" |
75 |
includes="**/*.java" |
76 |
deprecation="yes" |
77 |
source="${javaversion}" |
78 |
target="${javaversion}" |
79 |
> |
80 |
<classpath> |
81 |
<pathelement location="${bcprov}"/> |
82 |
</classpath> |
83 |
</javac> |
84 |
</target> |
85 |
|
86 |
<!-- |
87 |
! Jar file creation |
88 |
--> |
89 |
<target name="build" depends="compile"> |
90 |
<jar destfile="${jar}" compress="true"> |
91 |
<fileset dir="bin"> |
92 |
<include name="**/*"/> |
93 |
</fileset> |
94 |
<manifest> |
95 |
<!-- <attribute name="Name" value="${package}/"/>--> |
96 |
<attribute name="Specification-Title" value="OnlineCA SLCS https classes"/> |
97 |
<attribute name="Specification-Vendor" value="nikhef.nl"/> |
98 |
<attribute name="Implementation-Vendor" value="nikhef.nl"/> |
99 |
<attribute name="Main-Class" value="${package}/TestSURFCA"/> |
100 |
<!-- note: multiple files should be space separated --> |
101 |
<attribute name="Class-Path" value="${bcprov}"/> |
102 |
</manifest> |
103 |
</jar> |
104 |
</target> |
105 |
|
106 |
<!-- |
107 |
! JavaDoc |
108 |
--> |
109 |
<target name="javadoc"> |
110 |
<mkdir dir="${doc}"/> |
111 |
<javadoc use="Yes" |
112 |
destdir="${doc}" |
113 |
private="true" |
114 |
version="true" |
115 |
windowtitle="${ant.project.name}"> |
116 |
<classpath> |
117 |
<pathelement location="${bcprov}"/> |
118 |
</classpath> |
119 |
<packageset dir="src" defaultexcludes="yes"> |
120 |
<include name="**"/> |
121 |
</packageset> |
122 |
|
123 |
<doctitle><![CDATA[<h1>${packagename}</h1>]]></doctitle> |
124 |
<bottom><![CDATA[ |
125 |
<TABLE width="100%"> |
126 |
<TR><TD>${packagename} |
127 |
<TD>Mischa Sallé - msalle(AT)nikhef.nl |
128 |
</TR></TABLE> |
129 |
]]></bottom> |
130 |
|
131 |
</javadoc> |
132 |
</target> |
133 |
|
134 |
<!-- |
135 |
! Source zipfile |
136 |
--> |
137 |
<target name="zip"> |
138 |
<zip destfile="../${ant.project.name}_v${version}_src.zip" |
139 |
basedir=".." |
140 |
includes="nl.nikhef.slcshttps/src/** nl.nikhef.slcshttps/build.xml" |
141 |
excludes="**/.*.swp" |
142 |
/> |
143 |
</target> |
144 |
|
145 |
<!-- |
146 |
! Full zipfile |
147 |
--> |
148 |
<target name="fullzip" depends="release"> |
149 |
<zip destfile="../${ant.project.name}_v${version}_full.zip" |
150 |
basedir=".." |
151 |
includes="nl.nikhef.slcshttps/" |
152 |
excludes="nl.nikhef.slcshttps/extern/bcprov* **/.*.swp" |
153 |
/> |
154 |
</target> |
155 |
|
156 |
<!-- |
157 |
! Clean |
158 |
--> |
159 |
<target name="clean"> |
160 |
<delete includeemptydirs="true" failonerror="no" verbose="false"> |
161 |
<fileset dir="doc/"/> |
162 |
<fileset dir="bin/" includes="**/*.class"/> |
163 |
</delete> |
164 |
</target> |
165 |
|
166 |
<!-- |
167 |
! Distclean |
168 |
--> |
169 |
<target name="distclean"> |
170 |
<delete includeemptydirs="true" failonerror="no" verbose="false"> |
171 |
<fileset dir="doc/"/> |
172 |
<fileset dir="bin/"/> |
173 |
<fileset dir="." includes="${ant.project.name}*.jar"/> |
174 |
</delete> |
175 |
</target> |
176 |
|
177 |
<target name="run" depends="release"> |
178 |
<java classname="nl.nikhef.slcshttps.TestSURFCA" fork="yes"> |
179 |
<arg value="https://www.nikhef.nl/~msalle/cert/showcert.php?nohtml=1"/> |
180 |
<classpath> |
181 |
<pathelement location="${jar}"/> |
182 |
</classpath> |
183 |
</java> |
184 |
</target> |
185 |
|
186 |
</project> |