]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - features/org.simantics.scl.feature/build.xml
foobaz2
[simantics/platform.git] / features / org.simantics.scl.feature / build.xml
diff --git a/features/org.simantics.scl.feature/build.xml b/features/org.simantics.scl.feature/build.xml
new file mode 100644 (file)
index 0000000..7b1858a
--- /dev/null
@@ -0,0 +1,228 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="org.simantics.scl" default="build.update.jar" basedir=".">
+
+       <target name="init">
+               <property name="feature.temp.folder" value="${basedir}/feature.temp.folder"/>
+               <property name="feature.destination" value="${basedir}"/>
+               <property name="p2.build.repo" value="file:${buildDirectory}/buildRepo"/>
+               <condition property="p2.publish.parts" value="true"             >
+                       <istrue value="${p2.gathering}"/>
+               </condition>
+       </target>
+
+       <target name="all.plugins" depends="init">
+               <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.runtime" target="${target}">
+                       <property name="os" value="win32"/>
+                       <property name="ws" value="win32"/>
+                       <property name="arch" value="x86_64"/>
+               </ant>
+               <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.compiler" target="${target}">
+                       <property name="os" value="win32"/>
+                       <property name="ws" value="win32"/>
+                       <property name="arch" value="x86_64"/>
+               </ant>
+               <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.osgi" target="${target}">
+                       <property name="os" value="win32"/>
+                       <property name="ws" value="win32"/>
+                       <property name="arch" value="x86_64"/>
+               </ant>
+               <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.data" target="${target}">
+                       <property name="os" value="win32"/>
+                       <property name="ws" value="win32"/>
+                       <property name="arch" value="x86_64"/>
+               </ant>
+               <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.reflection" target="${target}">
+                       <property name="os" value="win32"/>
+                       <property name="ws" value="win32"/>
+                       <property name="arch" value="x86_64"/>
+               </ant>
+               <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.expressions" target="${target}">
+                       <property name="os" value="win32"/>
+                       <property name="ws" value="win32"/>
+                       <property name="arch" value="x86_64"/>
+               </ant>
+               <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.commands" target="${target}">
+                       <property name="os" value="win32"/>
+                       <property name="ws" value="win32"/>
+                       <property name="arch" value="x86_64"/>
+               </ant>
+               <ant antfile="build.xml" dir="../../bundles/org.simantics.scl.db" target="${target}">
+                       <property name="os" value="win32"/>
+                       <property name="ws" value="win32"/>
+                       <property name="arch" value="x86_64"/>
+               </ant>
+       </target>
+       <target name="all.features" depends="init">
+       </target>
+       <target name="update.feature" depends="init">
+       </target>
+
+       <target name="all.children" depends="init,all.features,all.plugins,update.feature">
+       </target>
+
+       <target name="children" if="include.children">
+               <antcall target="all.children"/>
+       </target>
+
+       <target name="build.jars" depends="init" description="Build all the jars for the feature: org.simantics.scl.">
+               <antcall target="all.children">
+                       <param name="target" value="build.jars"/>
+               </antcall>
+       </target>
+
+       <target name="build.sources" depends="init">
+               <antcall target="all.children">
+                       <param name="target" value="build.sources"/>
+               </antcall>
+       </target>
+
+       <target name="build.zips" depends="init">
+               <antcall target="all.children">
+                       <param name="target" value="build.zips"/>
+               </antcall>
+       </target>
+
+       <target name="build.update.jar" depends="init" description="Build the feature jar of: org.simantics.scl for an update site.">
+               <antcall target="all.children">
+                       <param name="target" value="build.update.jar"/>
+               </antcall>
+               <property name="feature.base" value="${feature.temp.folder}"/>
+               <delete dir="${feature.temp.folder}"/>
+               <mkdir dir="${feature.temp.folder}"/>
+               <mkdir dir="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537"/>
+               <antcall target="gather.bin.parts" inheritAll="false">
+                       <param name="feature.base" value="${feature.temp.folder}"/>
+                       <param name="updateJar.omitRootfiles" value="true"/>
+                       <param name="arch" value="*"/>
+                       <param name="os" value="*"/>
+                       <param name="ws" value="*"/>
+                       <param name="nl" value="*"/>
+               </antcall>
+               <jar destfile="${feature.destination}/org.simantics.scl_1.1.0.201810081537.jar" basedir="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537"/>
+               <delete dir="${feature.temp.folder}"/>
+       </target>
+
+       <target name="publish.bin.parts" depends="init" if="p2.publish.parts">
+               <mkdir dir="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537"/>
+               <copy todir="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537" failonerror="true" overwrite="true">
+                       <fileset dir="${basedir}">
+                               <include name="feature.xml"/>
+                       </fileset>
+               </copy>
+               <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,"/>
+               <eclipse.gatherFeature 
+                  metadataRepository="${p2.build.repo}"
+                  artifactRepository="${p2.build.repo}"
+                  buildResultFolder="${feature.temp.folder}/features/org.simantics.scl_1.1.0.201810081537"
+                  baseDirectory="${basedir}"
+               />
+       </target>
+
+       <target name="gather.bin.parts" depends="init" if="feature.base">
+               <mkdir dir="${feature.base}/features/org.simantics.scl_1.1.0.201810081537"/>
+               <antcall target="children">
+                       <param name="target" value="gather.bin.parts"/>
+                       <param name="destination.temp.folder" value="${feature.base}/plugins"/>
+               </antcall>
+               <copy todir="${feature.base}/features/org.simantics.scl_1.1.0.201810081537" failonerror="true" overwrite="false">
+                       <fileset dir="${basedir}">
+                               <include name="feature.xml"/>
+                       </fileset>
+               </copy>
+               <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,"/>
+               <antcall target="rootFiles">
+                       <param name="rootTarget" value="rootFiles${os}_${ws}_${arch}"/>
+               </antcall>
+       </target>
+       <target name="rootFiles" unless="updateJar.omitRootfiles">
+               <antcall target="${rootTarget}"/>
+       </target>
+
+       <target name="rootFileswin32_win32_x86_64">
+       </target>
+       <target name="rootFilesgroup_group_group">
+               <antcall target="rootFileswin32_win32_x86_64"/>
+       </target>
+
+       <target name="zip.distribution" depends="init" description="Create a zip containing all the plug-ins and features for the feature: org.simantics.scl.">
+               <delete dir="${feature.temp.folder}"/>
+               <mkdir dir="${feature.temp.folder}"/>
+               <antcall target="gather.bin.parts">
+                       <param name="include.children" value="true"/>
+                       <param name="feature.base" value="${feature.temp.folder}"/>
+                       <param name="arch" value="*"/>
+                       <param name="os" value="*"/>
+                       <param name="ws" value="*"/>
+                       <param name="nl" value="*"/>
+               </antcall>
+               <zip destfile="${feature.destination}/org.simantics.scl_1.1.0.201810081537.bin.dist.zip" basedir="${feature.temp.folder}" filesonly="false" whenempty="skip" update="false"/>
+               <delete dir="${feature.temp.folder}"/>
+       </target>
+
+       <target name="zip.sources" depends="init">
+               <delete dir="${feature.temp.folder}"/>
+               <mkdir dir="${feature.temp.folder}"/>
+               <antcall target="all.children">
+                       <param name="include.children" value="true"/>
+                       <param name="target" value="gather.sources"/>
+                       <param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.simantics.scl.source_1.1.0.201810081537/src"/>
+               </antcall>
+               <zip destfile="${feature.destination}/org.simantics.scl_1.1.0.201810081537.src.zip" basedir="${feature.temp.folder}" filesonly="true" whenempty="skip" update="false"/>
+               <delete dir="${feature.temp.folder}"/>
+       </target>
+
+       <target name="zip.logs" depends="init">
+               <delete dir="${feature.temp.folder}"/>
+               <mkdir dir="${feature.temp.folder}"/>
+               <condition property="logExtension.param" value="logExtension" else="logExtension.param"         >
+                       <isset property="logExtension"/>
+               </condition>
+               <antcall target="all.children" inheritAll="false">
+                       <param name="include.children" value="true"/>
+                       <param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
+                       <param name="${logExtension.param}" value="${logExtension}"/>
+                       <param name="target" value="gather.logs"/>
+               </antcall>
+               <zip destfile="${feature.destination}/org.simantics.scl_1.1.0.201810081537.log.zip" basedir="${feature.temp.folder}" filesonly="true" whenempty="skip" update="false"/>
+               <delete dir="${feature.temp.folder}"/>
+       </target>
+
+       <target name="clean" depends="init" description="Clean the feature: org.simantics.scl of all the zips, jars and logs created.">
+               <delete file="${feature.destination}/org.simantics.scl_1.1.0.201810081537.jar"/>
+               <delete file="${feature.destination}/org.simantics.scl_1.1.0.201810081537.bin.dist.zip"/>
+               <delete file="${feature.destination}/org.simantics.scl_1.1.0.201810081537.log.zip"/>
+               <delete file="${feature.destination}/org.simantics.scl_1.1.0.201810081537.src.zip"/>
+               <delete dir="${feature.temp.folder}"/>
+               <antcall target="all.children">
+                       <param name="target" value="clean"/>
+               </antcall>
+       </target>
+
+       <target name="refresh" depends="init" if="eclipse.running" description="Refresh this folder.">
+               <eclipse.convertPath fileSystemPath="C:/Work/workspace/psaas/git/features/org.simantics.scl.feature/" property="resourcePath"/>
+               <eclipse.refreshLocal resource="${resourcePath}" depth="infinite"/>
+               <antcall target="all.children">
+                       <param name="target" value="refresh"/>
+               </antcall>
+       </target>
+       <target name="gather.sources">
+               <antcall target="children">
+                       <param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.simantics.scl.source_1.1.0.201810081537/src"/>
+                       <param name="target" value="gather.sources"/>
+               </antcall>
+       </target>
+
+       <target name="gather.logs" depends="init">
+               <mkdir dir="${feature.temp.folder}/plugins"/>
+               <property name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
+               <condition property="logExtension.param" value="logExtension" else="logExtension.param"         >
+                       <isset property="logExtension"/>
+               </condition>
+               <antcall target="all.children" inheritAll="false">
+                       <param name="${logExtension.param}" value="${logExtension}"/>
+                       <param name="target" value="gather.logs"/>
+                       <param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
+               </antcall>
+       </target>
+
+</project>