]> gerrit.simantics Code Review - simantics/platform.git/blob - features/org.simantics.scl.feature/build.xml
7b1858a20e4bc74a54f61175a7faa8fe61819ba7
[simantics/platform.git] / features / org.simantics.scl.feature / build.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project name="org.simantics.scl" default="build.update.jar" basedir=".">
3
4         <target name="init">
5                 <property name="feature.temp.folder" value="${basedir}/feature.temp.folder"/>
6                 <property name="feature.destination" value="${basedir}"/>
7                 <property name="p2.build.repo" value="file:${buildDirectory}/buildRepo"/>
8                 <condition property="p2.publish.parts" value="true"             >
9                         <istrue value="${p2.gathering}"/>
10                 </condition>
11         </target>
12
13         <target name="all.plugins" depends="init">
14                 <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.runtime" target="${target}">
15                         <property name="os" value="win32"/>
16                         <property name="ws" value="win32"/>
17                         <property name="arch" value="x86_64"/>
18                 </ant>
19                 <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.compiler" target="${target}">
20                         <property name="os" value="win32"/>
21                         <property name="ws" value="win32"/>
22                         <property name="arch" value="x86_64"/>
23                 </ant>
24                 <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.osgi" target="${target}">
25                         <property name="os" value="win32"/>
26                         <property name="ws" value="win32"/>
27                         <property name="arch" value="x86_64"/>
28                 </ant>
29                 <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.data" target="${target}">
30                         <property name="os" value="win32"/>
31                         <property name="ws" value="win32"/>
32                         <property name="arch" value="x86_64"/>
33                 </ant>
34                 <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.reflection" target="${target}">
35                         <property name="os" value="win32"/>
36                         <property name="ws" value="win32"/>
37                         <property name="arch" value="x86_64"/>
38                 </ant>
39                 <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.expressions" target="${target}">
40                         <property name="os" value="win32"/>
41                         <property name="ws" value="win32"/>
42                         <property name="arch" value="x86_64"/>
43                 </ant>
44                 <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.commands" target="${target}">
45                         <property name="os" value="win32"/>
46                         <property name="ws" value="win32"/>
47                         <property name="arch" value="x86_64"/>
48                 </ant>
49                 <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.db" target="${target}">
50                         <property name="os" value="win32"/>
51                         <property name="ws" value="win32"/>
52                         <property name="arch" value="x86_64"/>
53                 </ant>
54         </target>
55         <target name="all.features" depends="init">
56         </target>
57         <target name="update.feature" depends="init">
58         </target>
59
60         <target name="all.children" depends="init,all.features,all.plugins,update.feature">
61         </target>
62
63         <target name="children" if="include.children">
64                 <antcall target="all.children"/>
65         </target>
66
67         <target name="build.jars" depends="init" description="Build all the jars for the feature: org.simantics.scl.">
68                 <antcall target="all.children">
69                         <param name="target" value="build.jars"/>
70                 </antcall>
71         </target>
72
73         <target name="build.sources" depends="init">
74                 <antcall target="all.children">
75                         <param name="target" value="build.sources"/>
76                 </antcall>
77         </target>
78
79         <target name="build.zips" depends="init">
80                 <antcall target="all.children">
81                         <param name="target" value="build.zips"/>
82                 </antcall>
83         </target>
84
85         <target name="build.update.jar" depends="init" description="Build the feature jar of: org.simantics.scl for an update site.">
86                 <antcall target="all.children">
87                         <param name="target" value="build.update.jar"/>
88                 </antcall>
89                 <property name="feature.base" value="${feature.temp.folder}"/>
90                 <delete dir="${feature.temp.folder}"/>
91                 <mkdir dir="${feature.temp.folder}"/>
92                 <mkdir dir="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537"/>
93                 <antcall target="gather.bin.parts" inheritAll="false">
94                         <param name="feature.base" value="${feature.temp.folder}"/>
95                         <param name="updateJar.omitRootfiles" value="true"/>
96                         <param name="arch" value="*"/>
97                         <param name="os" value="*"/>
98                         <param name="ws" value="*"/>
99                         <param name="nl" value="*"/>
100                 </antcall>
101                 <jar destfile="${feature.destination}/org.simantics.scl_1.1.0.201810081537.jar" basedir="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537"/>
102                 <delete dir="${feature.temp.folder}"/>
103         </target>
104
105         <target name="publish.bin.parts" depends="init" if="p2.publish.parts">
106                 <mkdir dir="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537"/>
107                 <copy todir="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537" failonerror="true" overwrite="true">
108                         <fileset dir="${basedir}">
109                                 <include name="feature.xml"/>
110                         </fileset>
111                 </copy>
112                 <eclipse.idReplacer featureFilePath="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537/feature.xml"  selfVersion="1.1.0.201810081537" featureIds="" pluginIds="org.antlr.runtime:0.0.0,3.5.2,gnu.trove3:0.0.0,3.0.3,org.simantics.scl.compiler:0.0.0,0.6.1.201810081537,org.simantics.scl.runtime:0.0.0,0.4.0.201810081537,org.simantics.scl.reflection:0.0.0,1.0.0.201810081537,org.simantics.scl.expressions:0.0.0,1.0.0.201810081537,org.simantics.scl.db:0.0.0,0.1.3.201810081537,org.simantics.scl.osgi:0.0.0,1.0.4.201810081537,org.simantics.scl.commands:0.0.0,1.0.0.201810081537,org.simantics.scl.data:0.0.0,1.0.0.201810081537,org.jdom2:0.0.0,2.0.6.b0001,jaxen:0.0.0,1.1.6,org.objectweb.asm:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.analysis:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.commons:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.tree:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.util:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.xml:0.0.0,5.2.0.v20170126-0011,com.fasterxml.jackson.core.jackson-core:0.0.0,2.8.8,com.fasterxml.jackson.core.jackson-annotations:0.0.0,2.8.8,com.fasterxml.jackson.core.jackson-databind:0.0.0,2.8.8,"/>
113                 <eclipse.gatherFeature 
114                    metadataRepository="${p2.build.repo}"
115                    artifactRepository="${p2.build.repo}"
116                    buildResultFolder="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537"
117                    baseDirectory="${basedir}"
118                 />
119         </target>
120
121         <target name="gather.bin.parts" depends="init" if="feature.base">
122                 <mkdir dir="${feature.base}/features/org.simantics.scl_1.1.0.201810081537"/>
123                 <antcall target="children">
124                         <param name="target" value="gather.bin.parts"/>
125                         <param name="destination.temp.folder" value="${feature.base}/plugins"/>
126                 </antcall>
127                 <copy todir="${feature.base}/features/org.simantics.scl_1.1.0.201810081537" failonerror="true" overwrite="false">
128                         <fileset dir="${basedir}">
129                                 <include name="feature.xml"/>
130                         </fileset>
131                 </copy>
132                 <eclipse.idReplacer featureFilePath="${feature.base}/features/org.simantics.scl_1.1.0.201810081537/feature.xml"  selfVersion="1.1.0.201810081537" featureIds="" pluginIds="org.antlr.runtime:0.0.0,3.5.2,gnu.trove3:0.0.0,3.0.3,org.simantics.scl.compiler:0.0.0,0.6.1.201810081537,org.simantics.scl.runtime:0.0.0,0.4.0.201810081537,org.simantics.scl.reflection:0.0.0,1.0.0.201810081537,org.simantics.scl.expressions:0.0.0,1.0.0.201810081537,org.simantics.scl.db:0.0.0,0.1.3.201810081537,org.simantics.scl.osgi:0.0.0,1.0.4.201810081537,org.simantics.scl.commands:0.0.0,1.0.0.201810081537,org.simantics.scl.data:0.0.0,1.0.0.201810081537,org.jdom2:0.0.0,2.0.6.b0001,jaxen:0.0.0,1.1.6,org.objectweb.asm:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.analysis:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.commons:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.tree:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.util:0.0.0,5.2.0.v20170126-0011,org.objectweb.asm.xml:0.0.0,5.2.0.v20170126-0011,com.fasterxml.jackson.core.jackson-core:0.0.0,2.8.8,com.fasterxml.jackson.core.jackson-annotations:0.0.0,2.8.8,com.fasterxml.jackson.core.jackson-databind:0.0.0,2.8.8,"/>
133                 <antcall target="rootFiles">
134                         <param name="rootTarget" value="rootFiles${os}_${ws}_${arch}"/>
135                 </antcall>
136         </target>
137         <target name="rootFiles" unless="updateJar.omitRootfiles">
138                 <antcall target="${rootTarget}"/>
139         </target>
140
141         <target name="rootFileswin32_win32_x86_64">
142         </target>
143         <target name="rootFilesgroup_group_group">
144                 <antcall target="rootFileswin32_win32_x86_64"/>
145         </target>
146
147         <target name="zip.distribution" depends="init" description="Create a zip containing all the plug-ins and features for the feature: org.simantics.scl.">
148                 <delete dir="${feature.temp.folder}"/>
149                 <mkdir dir="${feature.temp.folder}"/>
150                 <antcall target="gather.bin.parts">
151                         <param name="include.children" value="true"/>
152                         <param name="feature.base" value="${feature.temp.folder}"/>
153                         <param name="arch" value="*"/>
154                         <param name="os" value="*"/>
155                         <param name="ws" value="*"/>
156                         <param name="nl" value="*"/>
157                 </antcall>
158                 <zip destfile="${feature.destination}/org.simantics.scl_1.1.0.201810081537.bin.dist.zip" basedir="${feature.temp.folder}" filesonly="false" whenempty="skip" update="false"/>
159                 <delete dir="${feature.temp.folder}"/>
160         </target>
161
162         <target name="zip.sources" depends="init">
163                 <delete dir="${feature.temp.folder}"/>
164                 <mkdir dir="${feature.temp.folder}"/>
165                 <antcall target="all.children">
166                         <param name="include.children" value="true"/>
167                         <param name="target" value="gather.sources"/>
168                         <param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.simantics.scl.source_1.1.0.201810081537/src"/>
169                 </antcall>
170                 <zip destfile="${feature.destination}/org.simantics.scl_1.1.0.201810081537.src.zip" basedir="${feature.temp.folder}" filesonly="true" whenempty="skip" update="false"/>
171                 <delete dir="${feature.temp.folder}"/>
172         </target>
173
174         <target name="zip.logs" depends="init">
175                 <delete dir="${feature.temp.folder}"/>
176                 <mkdir dir="${feature.temp.folder}"/>
177                 <condition property="logExtension.param" value="logExtension" else="logExtension.param"         >
178                         <isset property="logExtension"/>
179                 </condition>
180                 <antcall target="all.children" inheritAll="false">
181                         <param name="include.children" value="true"/>
182                         <param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
183                         <param name="${logExtension.param}" value="${logExtension}"/>
184                         <param name="target" value="gather.logs"/>
185                 </antcall>
186                 <zip destfile="${feature.destination}/org.simantics.scl_1.1.0.201810081537.log.zip" basedir="${feature.temp.folder}" filesonly="true" whenempty="skip" update="false"/>
187                 <delete dir="${feature.temp.folder}"/>
188         </target>
189
190         <target name="clean" depends="init" description="Clean the feature: org.simantics.scl of all the zips, jars and logs created.">
191                 <delete file="${feature.destination}/org.simantics.scl_1.1.0.201810081537.jar"/>
192                 <delete file="${feature.destination}/org.simantics.scl_1.1.0.201810081537.bin.dist.zip"/>
193                 <delete file="${feature.destination}/org.simantics.scl_1.1.0.201810081537.log.zip"/>
194                 <delete file="${feature.destination}/org.simantics.scl_1.1.0.201810081537.src.zip"/>
195                 <delete dir="${feature.temp.folder}"/>
196                 <antcall target="all.children">
197                         <param name="target" value="clean"/>
198                 </antcall>
199         </target>
200
201         <target name="refresh" depends="init" if="eclipse.running" description="Refresh this folder.">
202                 <eclipse.convertPath fileSystemPath="C:/Work/workspace/psaas/git/features/org.simantics.scl.feature/" property="resourcePath"/>
203                 <eclipse.refreshLocal resource="${resourcePath}" depth="infinite"/>
204                 <antcall target="all.children">
205                         <param name="target" value="refresh"/>
206                 </antcall>
207         </target>
208         <target name="gather.sources">
209                 <antcall target="children">
210                         <param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.simantics.scl.source_1.1.0.201810081537/src"/>
211                         <param name="target" value="gather.sources"/>
212                 </antcall>
213         </target>
214
215         <target name="gather.logs" depends="init">
216                 <mkdir dir="${feature.temp.folder}/plugins"/>
217                 <property name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
218                 <condition property="logExtension.param" value="logExtension" else="logExtension.param"         >
219                         <isset property="logExtension"/>
220                 </condition>
221                 <antcall target="all.children" inheritAll="false">
222                         <param name="${logExtension.param}" value="${logExtension}"/>
223                         <param name="target" value="gather.logs"/>
224                         <param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
225                 </antcall>
226         </target>
227
228 </project>