source: 1dwg/branches/v1.1/java/ant-eclipse/build.xml @ 304

Last change on this file since 304 was 304, checked in by prjemian, 7 years ago
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Rev Id Url
File size: 6.0 KB
Line 
1<?xml version="1.0" ?>
2
3<!--
4 ########### SVN repository information ###################
5 # $Date$
6 # $Author$
7 # $Revision$
8 # $URL$
9 # $Id$
10 ########### SVN repository information ###################
11-->
12
13<project name="cansas1d" default="jar">
14        <description>
15                The Java binding for the canSAS 1D XML standard
16                for small-angle scattering data
17        </description>
18
19        <!-- set global properties for this build -->
20        <property name="version" value="1.1" />
21        <property name="src.dir" location="src" />
22        <property name="bin.dir" location="bin" />
23        <property name="lib.dir" location="lib" />
24        <property name="lic.dir" location="LICENSES" />
25        <property name="dist.dir" location="dist" />
26        <property name="doc.dir" location="doc" />
27        <property name="res.dir" location="resources" />
28        <property name="src.tests" location="tests" />
29        <property name="bin.tests" location="bin-tests" />
30
31        <property name="project.master" value="org.cansas"/>
32        <property name="project.name.full" 
33                value="${project.master}.${ant.project.name}"/>
34        <property name="project.main.class" 
35                value="${project.name.full}.demo.Reader"/>
36        <property name="javac.debug.attrs" 
37                value="lines,vars,source"/>
38        <property name="target.jar.root" 
39                value="${dist.dir}/${ant.project.name}"/>
40
41        <path id="compile.classpath">
42          <fileset dir="lib">
43            <include name="*.jar"/>
44          </fileset>
45        </path>
46        <property name="compile.classpath.contents" 
47                refid="compile.classpath" />
48        <path id="ant.run.classpath">
49                <path refid="compile.classpath" />
50                <path path="${bin.dir}" />
51        </path>
52
53        <!-- =================================
54          target:        init
55         ================================= -->
56        <target name="init" description="first step">
57                <echo>Initializing ...</echo>
58                <tstamp />
59                <!-- Create the time stamp -->
60                <mkdir dir="${bin.dir}" />
61                <mkdir dir="${dist.dir}" />
62                <mkdir dir="${doc.dir}" />
63        </target>
64
65        <!-- =================================
66          target:       buildnumber
67         ================================= -->
68        <target name="buildnumber" 
69                description="Increment build number">
70                <echo>Incrementing build number ...</echo>
71                <buildnumber />
72                <propertyfile file="build.number" />
73                <echo>New build number: ${build.number}</echo>
74                <!-- echoproperties / -->
75        </target>
76
77        <!-- =================================
78          target:       libraries
79         ================================= -->
80        <target name="libraries" 
81                description="Install all libraries" 
82                depends="init">
83                <echo>Installing libraries ...</echo>
84                <unzip dest="${bin.dir}">
85                        <fileset dir="${lib.dir}" id="id">
86                                <include name="**/*.jar" />
87                        </fileset>
88                        <patternset>
89                                <exclude name="META-INF/" />
90                        </patternset>
91                </unzip>
92        </target>
93
94        <!-- =================================
95          target:       licenses
96         ================================= -->
97        <target name="licenses" 
98                description="Copy all software licenses" 
99                depends="init">
100                <echo>Copying licenses ...</echo>
101                <copy file="README.txt" todir="${bin.dir}" verbose="false" />
102                <copy todir="${bin.dir}/LICENSES/" verbose="true">
103                        <fileset dir="${lic.dir}" excludes="**/.svn" />
104                </copy>
105        </target>
106
107        <!-- =================================
108          target:        resources
109         ================================= -->
110        <target name="resources" 
111                description="Copy all resources" 
112                depends="licenses">
113                <echo>Copying resources ...</echo>
114                <copy todir="${bin.dir}/resources/" verbose="true">
115                        <fileset dir="${res.dir}" excludes="**/.svn" />
116                </copy>
117        </target>
118
119        <!-- =================================
120          target:        compile
121         ================================= -->
122        <target name="compile" 
123                description="Compilation target" 
124                depends="init, libraries, resources, buildnumber">
125                <echo>Compiling ...</echo>
126                <javac 
127                        srcdir="${src.dir}" 
128                        destdir="${bin.dir}"
129                        debug="true"
130                        debuglevel="${javac.debug.attrs}"
131                        verbose="false">
132                        <classpath path="${compile.classpath.contents}" />
133                </javac>
134        </target>
135
136        <!-- =================================
137          target:        jar
138         ================================= -->
139        <target name="jar" 
140                description="Packaging" 
141                depends="compile, resources, libraries, licenses">
142                <echo>Packaging ...</echo>
143                <property name="target.jar" 
144                        value="${target.jar.root}-${version}.jar"/>
145                <jar jarfile="${target.jar}" 
146                        basedir="${bin.dir}" 
147                        index="true">
148                        <manifest>
149                                <attribute 
150                                        name="Main-Class" 
151                                        value="${project.main.class}" />
152                        </manifest>
153                </jar>
154                <!-- <echoproperties /> -->
155        </target>
156
157        <!-- =================================
158          target:        javadoc
159         ================================= -->
160        <target name="javadoc" description="Documentation" depends="init">
161
162                <echo>Documentation ...</echo>
163                <javadoc sourcepath="${src.dir}" destdir="${doc.dir}">
164                        <classpath refid="compile.classpath" />
165                </javadoc>
166                <property name="target.jar.javadoc" 
167                        value="${target.jar.root}-${version}-javadoc.jar"/>
168                <jar jarfile="${target.jar.javadoc}" basedir="${doc.dir}" />
169        </target>
170
171        <!-- =================================
172          target:        sources
173         ================================= -->
174        <target name="sources" description="source package" depends="init">
175                <echo>Source Packaging ...</echo>
176                <property name="target.jar.sources" 
177                        value="${target.jar.root}-${version}-sources.jar"/>
178                <jar jarfile="${target.jar.sources}" basedir="${src.dir}" />
179        </target>
180
181        <!-- =================================
182          target:        clean
183         ================================= -->
184        <target name="clean" description="clean up">
185                <echo>Cleaning ...</echo>
186                <!-- Delete the ${build}, ${dist}, and ${docs} directory trees -->
187                <delete dir="${bin.dir}" />
188                <delete dir="${dist.dir}" />
189                <delete dir="${doc.dir}" />
190        </target>
191
192        <!-- =================================
193          target:        all
194         ================================= -->
195        <target name="all" description="build jar, docs, and sources" 
196                depends="jar, javadoc, sources" />
197
198        <!-- =================================
199          target:        rebuild
200         ================================= -->
201        <target name="rebuild" description="rebuild everything" 
202                depends="clean, all" />
203
204</project>
Note: See TracBrowser for help on using the repository browser.