source: java/build.xml @ 0100d7b

abac0-leakabac0-meimei-idmei-rt0-nmei_rt0tvf-new-xml
Last change on this file since 0100d7b was fe71561, checked in by Ted Faber <faber@…>, 11 years ago

Test case for GENIPrivCredential Parsing

  • Property mode set to 100644
File size: 6.6 KB
Line 
1<!--
2  Project file for ant to build java ABAC library and test cases. 
3  Requires Jung and bouncycastle.
4
5  Targets:
6    all: clean then compile and make docs
7    compile: build the library and test programs
8    run-test: run a simple test program in GraphTest.java (params in target)
9    run-dump: run a program to dump a certificate in ASN1 (params in target)
10    jar: build jabac.jar in build/jar/jabac.jar
11    doc: greate API javadocs in ./doc
12    dev-doc: create developer API javadocs in ./dev-doc (includes
13            package/private/protected functions)
14    clean: remove created files (includes .der and .pem in this directory)
15-->
16
17<project name="jabac" default="all">
18
19  <property name="src.dir" value="."/>
20  <property name="lib.dir" value="jar"/>
21  <property name="build.dir" value="build"/>
22  <property name="classes.dir" value="${build.dir}/classes"/>
23  <property name="example.dir" value="${src.dir}/example"/>
24  <property name="regression.dir" value="${src.dir}/regression"/>
25  <property name="jar.dir" value="${build.dir}/jar"/>
26  <property name="doc.dir" value="./doc"/>
27  <property name="devdoc.dir" value="./dev-doc"/>
28  <property name="main.class" value="GraphTest"/>
29  <property name="dump.class" value="Dumper"/>
30  <property name="read.class" value="Reader"/>
31  <property name="write.class" value="Writer"/>
32  <property name="example.class" value="CreateExample"/>
33  <property name="version" value="1.4"/>
34
35  <path id="compile.classpath">
36    <fileset dir="${lib.dir}" includes="**/*.jar"/>
37  </path>
38
39  <target name="all" depends="clean, compile, jar, doc, dev-doc"
40    description="Clean then build" />
41
42  <target name="clean">
43    <delete dir="${build.dir}"/>
44    <delete dir="${doc.dir}"/>
45    <delete dir="${devdoc.dir}"/>
46    <delete dir="${example.dir}"/>
47  </target>
48
49
50  <target name="compile" description="Compile the source">
51    <mkdir dir="${classes.dir}" />
52    <javac srcdir="${src.dir}" destdir="${classes.dir}" 
53      classpathref="compile.classpath" includeAntRuntime="no"/>
54  </target>
55
56  <target name="jar" depends="compile" description="Make a jar">
57    <mkdir dir="${jar.dir}"/>
58    <jar destfile="${jar.dir}/jabac-${version}.jar" basedir="${classes.dir}"
59      excludes="**/GraphTest.class **/Dumper.class">
60      <manifest>
61        <attribute name="Class-Path" value="${classpath}" />
62      </manifest>
63    </jar>
64  </target>
65
66  <target name="doc" description="Generate API documentation">
67    <mkdir dir="${doc.dir}"/>
68    <javadoc sourcepath="${src.dir}" destdir="${doc.dir}"
69      classpathref="compile.classpath" access="public"
70      noqualifier="java.lang:java.io:java.util:java.security:java.security.cert"/>
71  </target>
72
73  <target name="dev-doc" description="Generate developer API documentation">
74    <mkdir dir="${doc.dir}"/>
75    <javadoc sourcepath="${src.dir}" destdir="${devdoc.dir}" access="private"
76      classpathref="compile.classpath" 
77      noqualifier="java.lang:java.io:java.util:java.security:java.security.cert"/>
78  </target>
79
80  <target name="run-test-default" depends="compile,run-create-default" description="run test query on default example">
81    <java classname="${main.class}" fork="true" >
82      <classpath>
83        <path refid="compile.classpath"/>
84        <pathelement path="${classes.dir}"/>
85      </classpath>
86      <arg file="./example/default"/>
87      <arg value="Acme.experiment_create"/>
88      <arg value="Bob"/>
89    </java>
90  </target>
91
92  <target name="run-test-x509" depends="compile,run-create-x509" description="run test query on X.509 example">
93    <java classname="${main.class}" fork="true" >
94      <classpath>
95        <path refid="compile.classpath"/>
96        <pathelement path="${classes.dir}"/>
97      </classpath>
98      <arg file="./example/X509Credential"/>
99      <arg value="Acme.experiment_create"/>
100      <arg value="Bob"/>
101    </java>
102  </target>
103
104  <target name="run-test-geni" depends="compile,run-create-geni" description="run test query on GENI example">
105    <java classname="${main.class}" fork="true" >
106      <classpath>
107        <path refid="compile.classpath"/>
108        <pathelement path="${classes.dir}"/>
109      </classpath>
110      <arg file="./example/GENICredential"/>
111      <arg value="Acme.experiment_create"/>
112      <arg value="Bob"/>
113    </java>
114  </target>
115
116  <target name="run-test-priv" depends="compile,run-create-priv" description="run test query on GENI priv example">
117    <java classname="${main.class}" fork="true" >
118      <classpath>
119        <path refid="compile.classpath"/>
120        <pathelement path="${classes.dir}"/>
121      </classpath>
122      <arg file="./example/priv"/>
123      <arg value="Acme.experiment_create"/>
124      <arg value="Bob"/>
125    </java>
126  </target>
127
128  <target name="run-test" depends="run-test-default,run-test-x509,run-test-geni,run-test-priv" description="Run all the test queries"/>
129
130  <target name="run-dump" depends="compile" description="run dumper">
131    <java classname="${dump.class}" fork="true" >
132      <classpath>
133        <path refid="compile.classpath"/>
134        <pathelement path="${classes.dir}"/>
135      </classpath>
136      <arg file="attr0.der"/>
137    </java>
138  </target>
139
140  <target name="run-create-default" depends="compile" description="Create example certs in default format">
141    <java classname="${example.class}" fork="true" >
142      <classpath>
143        <path refid="compile.classpath"/>
144        <pathelement path="${classes.dir}"/>
145      </classpath>
146      <arg value="default"/>
147    </java>
148  </target>
149
150  <target name="run-create-geni" depends="compile" description="Create example certs in GENI format">
151    <java classname="${example.class}" fork="true" >
152      <classpath>
153        <path refid="compile.classpath"/>
154        <pathelement path="${classes.dir}"/>
155      </classpath>
156      <arg value="net.deterlab.abac.GENICredential"/>
157    </java>
158  </target>
159
160  <target name="run-create-priv" depends="compile" description="Create example certs in GENI priv format">
161    <delete dir="${example.dir}/priv"/>
162    <mkdir dir="${example.dir}/priv"/>
163    <copy file="${regression.dir}/priv.xml" 
164        tofile="${example.dir}/priv/priv.xml"/>
165    <copy file="${regression.dir}/owner_ID.pem" 
166        tofile="${example.dir}/priv/owner_ID.pem"/>
167    <copy file="${regression.dir}/issuer_ID.pem" 
168        tofile="${example.dir}/priv/issuer_ID.pem"/>
169    <copy file="${regression.dir}/target_ID.pem" 
170        tofile="${example.dir}/priv/target_ID.pem"/>
171  </target>
172
173  <target name="run-create-x509" depends="compile" description="Create example certs in X.509 format">
174    <java classname="${example.class}" fork="true" >
175      <classpath>
176        <path refid="compile.classpath"/>
177        <pathelement path="${classes.dir}"/>
178      </classpath>
179      <arg value="net.deterlab.abac.X509Credential"/>
180    </java>
181  </target>
182
183  <target name="run-create" depends="run-create-default,run-create-x509,run-create-geni" description="Create all the examples"/>
184</project>
Note: See TracBrowser for help on using the repository browser.