Project

General

Profile

Download (4.03 KB) Statistics
| Branch: | Tag: | Revision:
1
<!--
2

    
3
	Edit_CDM ANT build script.
4

    
5
-->
6

    
7
<project name="cmd" default="compile" basedir=".">
8

    
9
    <!-- ################################################################## -->
10
    <!-- ################## Property definitions ########################## -->
11
    <!-- ################################################################## -->
12

    
13
 	<!-- Name of project and version, used to create filenames -->
14
	<property name="name" value="Taxonomic Common Data Model"/>
15
	<property name="name2" value="cdmLibrary"/>
16
	<property name="version.major" value="1"/>
17
	<property name="version.minor" value="0"/>
18
	<property name="version.micro" value="0"/>
19
    <property name="version.full" value="${version.major}.${version.minor}.${version.micro}"/>
20
    <property name="version.major_minor" value="${version.major}.${version.minor}"/>
21
    <property name="fullname" value="${name}-${version.full}"/>
22

    
23
    <!-- Various SCM-controlled directories -->
24
    <property name="dir.src" value="src" />
25
    <property name="dir.test" value="test" />
26
    <property name="dir.etc" value="etc" />
27
    <property name="dir.lib" value="lib" />
28
    <property name="dir.jdbc" value="lib" />
29
	<property name="dir.doc" value="doc"/>
30
	<property name="dir.doc.api" value="${dir.doc}/api"/>
31
	<property name="dir.doc.ref" value="${dir.doc}/reference"/>
32
    <property name="dir.build" value="bin"/>
33
	
34
	<!-- Distribution -->
35
	<property name="dist.dir" value="dist" />
36
	<property name="dist.zip" value="${dist.dir}/zip" />
37
	<property name="dist.jar" value="${dist.dir}/jar" />
38
	<property name="jar.name" value="${name2}"/>
39
	
40
	<!-- Configs -->
41
	<property name="hibernate.cfg" value="editCdm.hibernate.cfg.xml"/>
42
	<property name="spring.cfg" value="editCdm.spring.cfg.xml"/>
43
	<property name="log4j.prop" value="log4j.properties"/>
44

    
45
	
46
    <!-- Classpath declaration -->
47
    <path id="project.classpath">
48
        <fileset dir="${dir.lib}">
49
            <include name="**/*.jar"/>
50
            <include name="**/*.zip"/>
51
        </fileset>
52
    </path>
53
	
54

    
55
    <!-- Useful shortcuts -->
56
    <patternset id="meta.files">
57
       	<exclude name="**/org/bgbm/berlinmodel/hibernate/*.xml"/> <!-- by Andreas can be deleted-->
58
    	<include name="**/*.xml"/>
59
        <include name="**/*.properties"/>
60
    </patternset>
61
    
62
<!-- xxxxxxxxxxxx  TARGETS xxxxxxxxxxxxxxxxxxxxxxxxxxx -->	
63
	
64
    <!-- Clean up -->
65
    <target name="clean" description="Clean the build directory">
66
        <delete dir="${dir.build}"/>
67
        <mkdir dir="${dir.build}"/>
68
    </target>
69
	
70

    
71
    <!-- Compile Java source -->
72
    <target name="compile" depends="copyConfigFiles" 
73
    		description="compile all classes">
74
        <mkdir dir="${dir.build}"/>
75
        <javac debug="true" srcdir="${dir.src}" 
76
               destdir="${dir.build}"
77
               classpathref="project.classpath"/>
78
    </target> 
79
	
80
	<!-- Copy metadata to build classpath -->
81
	<target name="copyMetaFiles">
82
		<mkdir dir="${dir.build}"/>
83
	    <copy todir="${dir.build}">
84
	    	<fileset dir="${dir.src}">
85
	        	<patternset refid="meta.files"/>
86
	        </fileset>
87
	    </copy>
88
	</target>
89
	
90
	<!-- Copy configuration files to build classpath -->
91
	<target name="copyConfigFiles">
92
		<mkdir dir="${dir.build}"/>
93
		<copy file="${hibernate.cfg}" todir="${dir.build}"/>
94
		<copy file="${log4j.prop}" todir="${dir.build}"/>
95
		<copy file="${spring.cfg}" todir="${dir.build}"/>
96
	</target>
97
	
98
	<!-- Distribute as ZIP-File -->
99
	<target name="distAsZip" depends="compile" 
100
		           description="Builds an zip file containing jar and lib-directory. classpathes must be set in manifest.txt
101
								jar is executable">
102
		<delete file="${jar.name}.jar"/>
103
	    <delete file="${dist.zip}/${jar.name}.zip"/>
104
	    <mkdir dir="${dist.zip}" />
105
	    <jar jarfile="${jar.name}.jar"
106
	         basedir="${dir.build}"
107
	         manifest="zipManifest.txt" />
108
	    <zip destfile="${dist.zip}/${jar.name}.zip">
109
	      <fileset dir="." includes="${dir.lib}/*" />
110
	      <fileset dir="." includes="${jar.name}.jar" />
111
	    </zip>
112
	</target>
113

    
114
</project>
(3-3/7)