forked from IBMStreams/streamsx.jdbc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.xml
129 lines (113 loc) · 4.48 KB
/
build.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<!--
// *******************************************************************************
// * Copyright (C)2015, International Business Machines Corporation and *
// * others. All Rights Reserved. *
// *******************************************************************************
-->
<project name="streamsx.jdbc" default="all" basedir=".">
<description>
Build file for streamsx.jdbc project, built the toolkits and samples.
</description>
<!-- set global properties for this build -->
<property environment="env" />
<property name="streams.install" value="${env.STREAMS_INSTALL}" />
<property name="toolkit" location="com.ibm.streamsx.jdbc" />
<property name="tmp" location="tmp" />
<target name="all" depends="toolkit,samples" />
<target name="setcommitversion">
<!-- Create the time stamp -->
<tstamp />
<!-- Extract the git commit hash -->
<exec executable="git" outputproperty="commithash">
<arg value="rev-parse" />
<arg value="--short" />
<arg value="HEAD" />
</exec>
<!-- Update the info.xml -->
<replace file="${toolkit}/info.xml" token="__dev__" value="commit_${commithash}" summary="yes" />
<!-- Extract info from the toolkit's info.xml -->
<xmlproperty file="${toolkit}/info.xml" prefix="tkinfo" keepRoot="no" />
<echo message="Toolkit Version: ${tkinfo.info:identity.info:version}" />
<echo message="Git Hash: ${commithash}" />
</target>
<target name="revertversion">
<exec executable="git">
<arg value="checkout" />
<arg value="--" />
<arg value="${toolkit}/info.xml" />
</exec>
</target>
<target name="clean" depends="cleansamples" description="clean up">
<ant dir="${toolkit}" target="clean" />
<delete dir="${tmp}" />
</target>
<target name="toolkit" description="Build any code and index the toolkit.">
<ant dir="${toolkit}" target="all" />
</target>
<target name="toolkitIndexOnly" description="Index the toolkit.">
<ant dir="${toolkit}" target="toolkit" />
</target>
<target name="spldoc" depends="spldoc_work, revertversion" />
<target name="spldoc_work" depends="setcommitversion, samples">
<antcall target="spldoctoolkit">
<param name="tkdir" value="${toolkit}" />
<param name="tktitle" value="IBMStreams ${tkinfo.info:identity.info:name} Toolkit" />
</antcall>
<subant target="spldoctoolkit" genericantfile="${basedir}/build.xml">
<dirset dir="samples" includes="*" />
</subant>
</target>
<target name="samples" depends="toolkit">
<subant target="indextoolkit" genericantfile="${basedir}/build.xml">
<dirset dir="samples" includes="*" />
</subant>
</target>
<target name="cleansamples">
<subant target="cleantoolkit" genericantfile="${basedir}/build.xml">
<dirset dir="samples" includes="*" />
</subant>
</target>
<!-- Targets called on samples -->
<target name="indextoolkit">
<echo message="Tookit to index: ${basedir}" />
<exec executable="${streams.install}/bin/spl-make-toolkit">
<arg value="--directory" />
<arg value="${basedir}" />
</exec>
</target>
<target name="cleantoolkit">
<echo message="Tookit to clean: ${basedir}" />
<exec executable="${streams.install}/bin/spl-make-toolkit">
<arg value="--clean" />
<arg value="--directory" />
<arg value="${basedir}" />
</exec>
</target>
<target name="spldoctoolkit">
<property name="tkdir" value="${basedir}" />
<echo message="Tookit to SPLDOC: ${tkdir}" />
<exec executable="${streams.install}/bin/spl-make-doc">
<arg value="--include-composite-operator-diagram" />
<arg value="--author" />
<arg value="IBMStreams Open Source Community at GitHub - https://github.com/IBMStreams/${ant.project.name}" />
<arg value="--doc-title" />
<arg value="${tktitle}" />
<arg value="--directory" />
<arg value="${tkdir}" />
<arg value="--copy-image-files" />
</exec>
</target>
<!-- Targets to build releases -->
<target name="release" depends="clean, all, spldoc, toolkitIndexOnly">
<mkdir dir="${tmp}" />
<property name="releasefilename" value="${tmp}/streamsx.jdbc.toolkits-${tkinfo.info:identity.info:version}-${DSTAMP}-${TSTAMP}.tgz" />
<tar compression="gzip" longfile="gnu"
destfile="${releasefilename}"
basedir="${basedir}"
includes="${tkinfo.info:identity.info:name}/** samples/** samples/**/.settings/**"
excludes="**/.gitignore **/.project **/.classpath ${tkinfo.info:identity.info:name}/.settings/**"
/>
<checksum file="${releasefilename}" />
<checksum algorithm="sha1" file="${releasefilename}" />
</target>
</project>