ant update
ant4eclipse https://sourceforge.net/tracker/?func=detail&aid=2700937&group_id=176962&atid=879334
This commit is contained in:
parent
b7d5d32e4b
commit
fa145ada2e
|
@ -1,6 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/activemq-core-5.0.0.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/commons-net-1.4.0.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cron4j-2.2.1.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/payflow.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/ant.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/jpedal.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/commons-collections-3.1.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/junit.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/xercesImpl.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/jstl.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/Verisign.jar"/>
|
||||
|
@ -11,8 +19,6 @@
|
|||
<classpathentry exported="true" kind="lib" path="lib/iText-2.1.7.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/swingx-0.9.0.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/miglayout-3.7.1-swing.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/payflow.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cron4j-2.2.1.jar"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/log4j.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/activation.jar"/>
|
||||
|
|
|
@ -29,21 +29,15 @@ Bundle-ClassPath: tools.jar,
|
|||
lib/jfreechart-1.0.11.jar,
|
||||
lib/javaee.jar,
|
||||
lib/c3p0-0.9.1.2.jar,
|
||||
lib/activemq-core-5.0.0.jar,
|
||||
lib/ant-commons-net.jar,
|
||||
lib/ant-contrib-1.0b1.jar,
|
||||
lib/ant-launcher.jar,
|
||||
lib/ant.jar,
|
||||
lib/c3p0-oracle-thin-extras-0.9.1.2.jar,
|
||||
lib/cglib.jar,
|
||||
lib/commons-codec.jar,
|
||||
lib/commons-collections-3.1.jar,
|
||||
lib/commons-logging.jar,
|
||||
lib/commons-net-1.4.0.jar,
|
||||
lib/jgraph.jar,
|
||||
lib/jpedal.jar,
|
||||
lib/jsp-api.jar,
|
||||
lib/junit.jar,
|
||||
lib/logkit.jar,
|
||||
lib/looks-2.0.4.jar,
|
||||
lib/ocrs12.jar,
|
||||
|
@ -52,9 +46,15 @@ Bundle-ClassPath: tools.jar,
|
|||
lib/wizard.jar,
|
||||
lib/xjavadoc-1.1.jar,
|
||||
lib/xml-apis.jar,
|
||||
lib/xercesImpl.jar,
|
||||
lib/junit.jar,
|
||||
lib/commons-collections-3.1.jar,
|
||||
lib/ant.jar,
|
||||
lib/jpedal.jar,
|
||||
lib/activemq-core-5.0.0.jar,
|
||||
lib/commons-net-1.4.0.jar,
|
||||
lib/cron4j-2.2.1.jar,
|
||||
lib/payflow.jar,
|
||||
lib/xercesImpl.jar
|
||||
lib/payflow.jar
|
||||
Export-Package: Lib,
|
||||
Lib.email,
|
||||
Lib.encodings,
|
||||
|
@ -411,6 +411,7 @@ Export-Package: Lib,
|
|||
groovyjarjarasm.asm.signature,
|
||||
groovyjarjarasm.asm.tree;uses:="groovyjarjarasm.asm",
|
||||
groovyjarjarcommonscli,
|
||||
it.sauronsoftware.cron4j,
|
||||
javatests,
|
||||
javax.activation,
|
||||
javax.annotation,
|
||||
|
@ -512,6 +513,15 @@ Export-Package: Lib,
|
|||
javax.resource.spi.work;uses:="javax.resource,javax.transaction.xa",
|
||||
javax.script,
|
||||
javax.security.jacc;uses:="javax.servlet.http",
|
||||
javax.servlet,
|
||||
javax.servlet.http,
|
||||
javax.servlet.jsp,
|
||||
javax.servlet.jsp.el,
|
||||
javax.servlet.jsp.jstl.core,
|
||||
javax.servlet.jsp.jstl.fmt,
|
||||
javax.servlet.jsp.jstl.sql,
|
||||
javax.servlet.jsp.jstl.tlv,
|
||||
javax.servlet.jsp.tagext,
|
||||
javax.transaction;uses:="javax.transaction.xa",
|
||||
javax.transaction.xa,
|
||||
javax.xml.bind;
|
||||
|
@ -590,6 +600,12 @@ Export-Package: Lib,
|
|||
org.w3c.dom,
|
||||
javax.xml.ws,
|
||||
javax.xml.transform",
|
||||
junit.awtui,
|
||||
junit.extensions,
|
||||
junit.framework,
|
||||
junit.runner,
|
||||
junit.swingui,
|
||||
junit.textui,
|
||||
jxxload_help;uses:="org.python.core",
|
||||
net.miginfocom.layout,
|
||||
net.miginfocom.swing;uses:="net.miginfocom.layout",
|
||||
|
@ -704,6 +720,104 @@ Export-Package: Lib,
|
|||
oracle.jdbc.driver,
|
||||
oracle.sql.converter",
|
||||
oracle.sql.converter;uses:="oracle.jdbc.internal,oracle.i18n.text,oracle.i18n.text.converter",
|
||||
org.apache.activemq,
|
||||
org.apache.activemq.advisory,
|
||||
org.apache.activemq.blob,
|
||||
org.apache.activemq.broker,
|
||||
org.apache.activemq.broker.ft,
|
||||
org.apache.activemq.broker.jmx,
|
||||
org.apache.activemq.broker.region,
|
||||
org.apache.activemq.broker.region.cursors,
|
||||
org.apache.activemq.broker.region.group,
|
||||
org.apache.activemq.broker.region.policy,
|
||||
org.apache.activemq.broker.region.virtual,
|
||||
org.apache.activemq.broker.util,
|
||||
org.apache.activemq.broker.view,
|
||||
org.apache.activemq.camel,
|
||||
org.apache.activemq.camel.component,
|
||||
org.apache.activemq.camel.converter,
|
||||
org.apache.activemq.command,
|
||||
org.apache.activemq.filter,
|
||||
org.apache.activemq.jaas,
|
||||
org.apache.activemq.jndi,
|
||||
org.apache.activemq.kaha,
|
||||
org.apache.activemq.kaha.impl,
|
||||
org.apache.activemq.kaha.impl.async,
|
||||
org.apache.activemq.kaha.impl.container,
|
||||
org.apache.activemq.kaha.impl.data,
|
||||
org.apache.activemq.kaha.impl.index,
|
||||
org.apache.activemq.kaha.impl.index.hash,
|
||||
org.apache.activemq.kaha.impl.index.tree,
|
||||
org.apache.activemq.management,
|
||||
org.apache.activemq.memory,
|
||||
org.apache.activemq.memory.buffer,
|
||||
org.apache.activemq.memory.list,
|
||||
org.apache.activemq.network,
|
||||
org.apache.activemq.network.jms,
|
||||
org.apache.activemq.openwire,
|
||||
org.apache.activemq.openwire.tool,
|
||||
org.apache.activemq.openwire.v1,
|
||||
org.apache.activemq.openwire.v2,
|
||||
org.apache.activemq.openwire.v3,
|
||||
org.apache.activemq.pool,
|
||||
org.apache.activemq.proxy,
|
||||
org.apache.activemq.security,
|
||||
org.apache.activemq.selector,
|
||||
org.apache.activemq.spring,
|
||||
org.apache.activemq.state,
|
||||
org.apache.activemq.store,
|
||||
org.apache.activemq.store.amq,
|
||||
org.apache.activemq.store.jdbc,
|
||||
org.apache.activemq.store.jdbc.adapter,
|
||||
org.apache.activemq.store.journal,
|
||||
org.apache.activemq.store.kahadaptor,
|
||||
org.apache.activemq.store.memory,
|
||||
org.apache.activemq.thread,
|
||||
org.apache.activemq.transaction,
|
||||
org.apache.activemq.transport,
|
||||
org.apache.activemq.transport.discovery,
|
||||
org.apache.activemq.transport.discovery.multicast,
|
||||
org.apache.activemq.transport.discovery.rendezvous,
|
||||
org.apache.activemq.transport.discovery.simple,
|
||||
org.apache.activemq.transport.failover,
|
||||
org.apache.activemq.transport.fanout,
|
||||
org.apache.activemq.transport.mock,
|
||||
org.apache.activemq.transport.multicast,
|
||||
org.apache.activemq.transport.nio,
|
||||
org.apache.activemq.transport.peer,
|
||||
org.apache.activemq.transport.reliable,
|
||||
org.apache.activemq.transport.stomp,
|
||||
org.apache.activemq.transport.tcp,
|
||||
org.apache.activemq.transport.udp,
|
||||
org.apache.activemq.transport.vm,
|
||||
org.apache.activemq.usage,
|
||||
org.apache.activemq.util,
|
||||
org.apache.activemq.wireformat,
|
||||
org.apache.activemq.xbean,
|
||||
org.apache.commons.collections,
|
||||
org.apache.commons.collections.bag,
|
||||
org.apache.commons.collections.bidimap,
|
||||
org.apache.commons.collections.buffer,
|
||||
org.apache.commons.collections.collection,
|
||||
org.apache.commons.collections.comparators,
|
||||
org.apache.commons.collections.functors,
|
||||
org.apache.commons.collections.iterators,
|
||||
org.apache.commons.collections.keyvalue,
|
||||
org.apache.commons.collections.list,
|
||||
org.apache.commons.collections.map,
|
||||
org.apache.commons.collections.set,
|
||||
org.apache.commons.net,
|
||||
org.apache.commons.net.bsd,
|
||||
org.apache.commons.net.ftp,
|
||||
org.apache.commons.net.ftp.parser,
|
||||
org.apache.commons.net.io,
|
||||
org.apache.commons.net.nntp,
|
||||
org.apache.commons.net.ntp,
|
||||
org.apache.commons.net.pop3,
|
||||
org.apache.commons.net.smtp,
|
||||
org.apache.commons.net.telnet,
|
||||
org.apache.commons.net.tftp,
|
||||
org.apache.commons.net.util,
|
||||
org.apache.ecs;uses:="org.apache.ecs.xhtml",
|
||||
org.apache.ecs.filter;uses:="org.apache.ecs",
|
||||
org.apache.ecs.storage,
|
||||
|
@ -866,6 +980,31 @@ Export-Package: Lib,
|
|||
org.apache.taglibs.standard.tag.rt.xml;uses:="org.xml.sax,org.apache.taglibs.standard.tag.common.xml,javax.xml.transform",
|
||||
org.apache.taglibs.standard.tei;uses:="javax.servlet.jsp.tagext",
|
||||
org.apache.taglibs.standard.tlv;uses:="org.xml.sax,javax.servlet.jsp.tagext,org.xml.sax.helpers",
|
||||
org.apache.tools.ant,
|
||||
org.apache.tools.ant.filters,
|
||||
org.apache.tools.ant.filters.util,
|
||||
org.apache.tools.ant.helper,
|
||||
org.apache.tools.ant.input,
|
||||
org.apache.tools.ant.listener,
|
||||
org.apache.tools.ant.loader,
|
||||
org.apache.tools.ant.taskdefs,
|
||||
org.apache.tools.ant.taskdefs.compilers,
|
||||
org.apache.tools.ant.taskdefs.condition,
|
||||
org.apache.tools.ant.taskdefs.cvslib,
|
||||
org.apache.tools.ant.taskdefs.email,
|
||||
org.apache.tools.ant.taskdefs.rmic,
|
||||
org.apache.tools.ant.types,
|
||||
org.apache.tools.ant.types.mappers,
|
||||
org.apache.tools.ant.types.resolver,
|
||||
org.apache.tools.ant.types.selectors,
|
||||
org.apache.tools.ant.types.selectors.modifiedselector,
|
||||
org.apache.tools.ant.util,
|
||||
org.apache.tools.ant.util.facade,
|
||||
org.apache.tools.ant.util.regexp,
|
||||
org.apache.tools.bzip2,
|
||||
org.apache.tools.mail,
|
||||
org.apache.tools.tar,
|
||||
org.apache.tools.zip,
|
||||
org.apache.wml,
|
||||
org.apache.wml.dom,
|
||||
org.apache.xerces.dom,
|
||||
|
@ -1405,6 +1544,45 @@ Export-Package: Lib,
|
|||
org.jfree.ui.action;uses:="javax.swing",
|
||||
org.jfree.ui.tabbedui;uses:="javax.swing",
|
||||
org.jfree.util;uses:="org.jfree.base.config,org.jfree.ui,javax.swing",
|
||||
org.jpedal,
|
||||
org.jpedal.color,
|
||||
org.jpedal.examples,
|
||||
org.jpedal.examples.acroform,
|
||||
org.jpedal.examples.contentextractor,
|
||||
org.jpedal.examples.handlers,
|
||||
org.jpedal.examples.images,
|
||||
org.jpedal.examples.jpaneldemo,
|
||||
org.jpedal.examples.printing,
|
||||
org.jpedal.examples.simpleviewer,
|
||||
org.jpedal.examples.simpleviewer.gui,
|
||||
org.jpedal.examples.simpleviewer.gui.generic,
|
||||
org.jpedal.examples.simpleviewer.gui.popups,
|
||||
org.jpedal.examples.simpleviewer.gui.swing,
|
||||
org.jpedal.examples.simpleviewer.paper,
|
||||
org.jpedal.examples.simpleviewer.utils,
|
||||
org.jpedal.examples.text,
|
||||
org.jpedal.examples.text.extractheadlines,
|
||||
org.jpedal.exception,
|
||||
org.jpedal.external,
|
||||
org.jpedal.fonts,
|
||||
org.jpedal.fonts.glyph,
|
||||
org.jpedal.fonts.tt,
|
||||
org.jpedal.function,
|
||||
org.jpedal.grouping,
|
||||
org.jpedal.gui,
|
||||
org.jpedal.images,
|
||||
org.jpedal.io,
|
||||
org.jpedal.objects,
|
||||
org.jpedal.objects.acroforms,
|
||||
org.jpedal.objects.acroforms.listeners,
|
||||
org.jpedal.objects.outlines,
|
||||
org.jpedal.objects.structuredtext,
|
||||
org.jpedal.parser,
|
||||
org.jpedal.render,
|
||||
org.jpedal.storypad,
|
||||
org.jpedal.sun,
|
||||
org.jpedal.utils,
|
||||
org.jpedal.utils.repositories,
|
||||
org.postgresql;uses:="org.postgresql.largeobject,org.postgresql.fastpath,org.postgresql.copy",
|
||||
org.postgresql.copy;uses:="org.postgresql.core,org.postgresql",
|
||||
org.postgresql.core;uses:="org.postgresql.jdbc2,org.postgresql.copy,org.postgresql",
|
||||
|
@ -1471,4 +1649,5 @@ Export-Package: Lib,
|
|||
org.apache.tools.ant.types,
|
||||
org.python.core,
|
||||
jline",
|
||||
org.w3c.dom.html
|
||||
org.w3c.dom.html,
|
||||
paypal.payflow
|
||||
|
|
|
@ -24,23 +24,17 @@ bin.includes = META-INF/,\
|
|||
lib/jfreechart-1.0.11.jar,\
|
||||
lib/javaee.jar,\
|
||||
tools.jar,\
|
||||
lib/activemq-core-5.0.0.jar,\
|
||||
lib/ant-commons-net.jar,\
|
||||
lib/ant-contrib-1.0b1.jar,\
|
||||
lib/ant-launcher.jar,\
|
||||
lib/ant.jar,\
|
||||
lib/c3p0-0.9.1.2.jar,\
|
||||
lib/c3p0-oracle-thin-extras-0.9.1.2.jar,\
|
||||
lib/cglib.jar,\
|
||||
lib/commons-codec.jar,\
|
||||
lib/commons-collections-3.1.jar,\
|
||||
lib/commons-logging.jar,\
|
||||
lib/commons-net-1.4.0.jar,\
|
||||
lib/copyLibraries.bat,\
|
||||
lib/jgraph.jar,\
|
||||
lib/jpedal.jar,\
|
||||
lib/jsp-api.jar,\
|
||||
lib/junit.jar,\
|
||||
lib/logkit.jar,\
|
||||
lib/looks-2.0.4.jar,\
|
||||
lib/ocrs12.jar,\
|
||||
|
@ -49,6 +43,12 @@ bin.includes = META-INF/,\
|
|||
lib/wizard.jar,\
|
||||
lib/xjavadoc-1.1.jar,\
|
||||
lib/xml-apis.jar,\
|
||||
lib/xercesImpl.jar,\
|
||||
lib/junit.jar,\
|
||||
lib/commons-collections-3.1.jar,\
|
||||
lib/ant.jar,\
|
||||
lib/jpedal.jar,\
|
||||
lib/activemq-core-5.0.0.jar,\
|
||||
lib/commons-net-1.4.0.jar,\
|
||||
lib/cron4j-2.2.1.jar,\
|
||||
lib/payflow.jar,\
|
||||
lib/xercesImpl.jar
|
||||
lib/payflow.jar
|
||||
|
|
|
@ -21,6 +21,9 @@
|
|||
<!--<property environment="env"/>-->
|
||||
<import file="../utils_dev/properties.xml" />
|
||||
|
||||
<property name="bundle.name" value="org.adempiere.tools"/>
|
||||
<property name="bundle.version" value="0.0.0.2"/>
|
||||
|
||||
<!-- set path to include the necessary jar files for javac -->
|
||||
<path id="project.class.path">
|
||||
<pathelement path="${classpath}" />
|
||||
|
@ -67,7 +70,7 @@
|
|||
<!-- ============================================= -->
|
||||
<target name="toolsCompile" depends="toolsInit" unless="jars.uptodate">
|
||||
<!-- compile the java code from ${src} into ${build.dir}S -->
|
||||
<javac target="1.5" srcdir="${src}" destdir="${build.dir}" deprecation="on" debug="on">
|
||||
<javac target="1.6" srcdir="${src}" destdir="${build.dir}" deprecation="on" debug="on">
|
||||
<classpath refid="project.class.path" />
|
||||
</javac>
|
||||
<!-- copy all image & sound files from src to the build directory -->
|
||||
|
@ -229,6 +232,12 @@
|
|||
<zipfileset src="lib/Verisign.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/payflow.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/miglayout-3.7.1-swing.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/jpayment.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
|
@ -257,7 +266,7 @@
|
|||
<zipfileset src="lib/jpedal.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/itext-1.4.8.jar">
|
||||
<zipfileset src="lib/iText-2.1.7.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<!-- JFreeChart -->
|
||||
|
@ -309,6 +318,10 @@
|
|||
<zipfileset src="lib/xercesImpl.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<!-- cron job -->
|
||||
<zipfileset src="lib/cron4j-2.2.1.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
</jar>
|
||||
|
||||
</target>
|
||||
|
@ -371,6 +384,12 @@
|
|||
<zipfileset src="lib/Verisign.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/payflow.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/miglayout-3.7.1-swing.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/jpayment.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
|
@ -417,7 +436,7 @@
|
|||
<zipfileset src="lib/jpedal.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/itext-1.4.8.jar">
|
||||
<zipfileset src="lib/iText-2.1.7.jar">
|
||||
<patternset refid="manifest.exclude" />
|
||||
</zipfileset>
|
||||
<zipfileset src="lib/swingx-0.9.0.jar">
|
||||
|
@ -466,6 +485,66 @@
|
|||
|
||||
</target>
|
||||
|
||||
<target name="plugin">
|
||||
<jar destfile="${dist.dir}/plugins/${bundle.name}_${bundle.version}.jar" manifest="META-INF/MANIFEST.MF">
|
||||
<fileset dir="${basedir}">
|
||||
<include name="lib/jstl.jar"/>
|
||||
<include name="lib/Verisign.jar"/>
|
||||
<include name="lib/standard.jar"/>
|
||||
<include name="lib/barbecue-1.5-beta1.jar"/>
|
||||
<include name="lib/poi-3.0.1-FINAL-20070705.jar"/>
|
||||
<include name="lib/jnlp.jar"/>
|
||||
<include name="lib/iText-2.1.7.jar"/>
|
||||
<include name="lib/swingx-0.9.0.jar"/>
|
||||
<include name="lib/miglayout-3.7.1-swing.jar"/>
|
||||
<include name="lib/log4j.jar"/>
|
||||
<include name="lib/activation.jar"/>
|
||||
<include name="lib/mail.jar"/>
|
||||
<include name="lib/jpayment.jar"/>
|
||||
<include name="lib/bsh-2.0b5.jar"/>
|
||||
<include name="lib/script-api.jar"/>
|
||||
<include name="lib/bsh-engine.jar"/>
|
||||
<include name="lib/groovy-all-1.5.1.jar"/>
|
||||
<include name="lib/groovy-engine.jar"/>
|
||||
<include name="lib/jython.jar"/>
|
||||
<include name="lib/jython-engine.jar"/>
|
||||
<include name="lib/jcommon-1.0.14.jar"/>
|
||||
<include name="lib/jfreechart-1.0.11.jar"/>
|
||||
<include name="lib/javaee.jar"/>
|
||||
<include name="lib/activemq-core-5.0.0.jar"/>
|
||||
<include name="lib/ant-commons-net.jar"/>
|
||||
<include name="lib/ant-contrib-1.0b1.jar"/>
|
||||
<include name="lib/ant-launcher.jar"/>
|
||||
<include name="lib/ant.jar"/>
|
||||
<include name="lib/c3p0-0.9.1.2.jar"/>
|
||||
<include name="lib/c3p0-oracle-thin-extras-0.9.1.2.jar"/>
|
||||
<include name="lib/cglib.jar"/>
|
||||
<include name="lib/commons-codec.jar"/>
|
||||
<include name="lib/commons-collections-3.1.jar"/>
|
||||
<include name="lib/commons-logging.jar"/>
|
||||
<include name="lib/commons-net-1.4.0.jar"/>
|
||||
<include name="lib/copyLibraries.bat"/>
|
||||
<include name="lib/jgraph.jar"/>
|
||||
<include name="lib/jpedal.jar"/>
|
||||
<include name="lib/jsp-api.jar"/>
|
||||
<include name="lib/junit.jar"/>
|
||||
<include name="lib/logkit.jar"/>
|
||||
<include name="lib/looks-2.0.4.jar"/>
|
||||
<include name="lib/ocrs12.jar"/>
|
||||
<include name="lib/ojdbc14.jar"/>
|
||||
<include name="lib/postgresql.jar"/>
|
||||
<include name="lib/wizard.jar"/>
|
||||
<include name="lib/xjavadoc-1.1.jar"/>
|
||||
<include name="lib/xml-apis.jar"/>
|
||||
<include name="lib/cron4j-2.2.1.jar"/>
|
||||
<include name="lib/payflow.jar"/>
|
||||
<include name="lib/xercesImpl.jar"/>
|
||||
<include name="META-INF/**/*"/>
|
||||
<include name="plugin.xml"/>
|
||||
</fileset>
|
||||
</jar>
|
||||
</target>
|
||||
|
||||
|
||||
<!-- ============================================= -->
|
||||
<!-- Clean up -->
|
||||
|
|
|
@ -0,0 +1,195 @@
|
|||
<?xml version="1.0"?>
|
||||
<project name="a4e-jdt-macros" basedir="." xmlns:ant4eclipse="antlib:org.ant4eclipse">
|
||||
|
||||
<!-- define ant4eclipse tasks -->
|
||||
<taskdef uri="antlib:org.ant4eclipse" resource="org/ant4eclipse/antlib.xml" />
|
||||
|
||||
<!-- ===============================================================================================================
|
||||
macro: createCompilerOptionFile
|
||||
|
||||
Generates an option file used for the compilation process. Especially useful to generate preferences with
|
||||
default settings.
|
||||
|
||||
Parameters:
|
||||
- destination: the location where the file will be written to.
|
||||
- sourcelevel: the language level for the sources.
|
||||
- targetlevel: the level for the generated byte code.
|
||||
==============================================================================================================
|
||||
-->
|
||||
<macrodef name="createCompilerOptionFile">
|
||||
<attribute name="destination"/>
|
||||
<attribute name="sourcelevel" default="1.5"/>
|
||||
<attribute name="targetlevel" default="1.5"/>
|
||||
<sequential>
|
||||
<echo file="@{destination}">eclipse.preferences.version=1${line.separator}</echo>
|
||||
<echo file="@{destination}" append="true">org.eclipse.jdt.core.compiler.codegen.targetPlatform=@{targetlevel}${line.separator}</echo>
|
||||
<echo file="@{destination}" append="true">org.eclipse.jdt.core.compiler.compliance=@{targetlevel}${line.separator}</echo>
|
||||
<echo file="@{destination}" append="true">org.eclipse.jdt.core.compiler.source=@{sourcelevel}${line.separator}</echo>
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<!-- ===============================================================================================================
|
||||
macro: buildJdtProject
|
||||
|
||||
builds a single JDT-based eclipse project
|
||||
Parameters:
|
||||
- workspace: the root directory of the workspace that contains the JDT project
|
||||
- projectName: the name of the project that should be built (must exist in the workspace)
|
||||
- targetPlatformId (optional): the id of the target platform that should be used when working with pde-projects
|
||||
The following parameters control the source and target level:
|
||||
- defaultCompilerOptionsFile (optional): A file that is used to set default compiler options
|
||||
- targetLevel (optional): Specifies the class file version that should be generated by the compiler
|
||||
- sourceLevel (optional): Specifies language version of the source files. Defaults to targetLevel.
|
||||
Note: you only should set defaultCompilerOptionsFile *or* targetLevel/sourceLevel. If both are set,
|
||||
defaultCompilerOptionsFile 'wins', i.e. overrides the target/sourceLevel argument
|
||||
==============================================================================================================
|
||||
-->
|
||||
<macrodef name="buildJdtProject" description="builds a single JDT-based eclipse project">
|
||||
<attribute name="workspaceDirectory" />
|
||||
<attribute name="projectName" />
|
||||
<attribute name="targetPlatformId" default="" />
|
||||
<attribute name="defaultCompilerOptionsFile" default=""/>
|
||||
<attribute name="targetLevel" default=""/>
|
||||
<attribute name="sourceLevel" default="@{targetLevel}"/>
|
||||
|
||||
<!-- element definitions for lifecycle phases -->
|
||||
<element name="initialize"
|
||||
optional="true"
|
||||
description="Initialize build state, e.g. set properties or create directories." />
|
||||
<element name="generate-sources"
|
||||
optional="true"
|
||||
description="Generate any source code for inclusion in compilation." />
|
||||
<element name="generate-resources"
|
||||
optional="true"
|
||||
description="Generate resources for inclusion in the package." />
|
||||
<element name="pre-compile"
|
||||
optional="true"
|
||||
description="Execute additional steps before compilation." />
|
||||
<element name="post-compile"
|
||||
optional="true"
|
||||
description="Post-process the generated files from compilation, for example to do bytecode enhancement on Java classes." />
|
||||
<element name="post-copy-resources"
|
||||
optional="true"
|
||||
description="Post-process a source folder after resource have been copied to classes folder" />
|
||||
<element name="postprocess-output-directory"
|
||||
optional="true"
|
||||
description="Post-process an output folder after sources have been compiled resources have been copied. " />
|
||||
<element name="finish"
|
||||
optional="true"
|
||||
description="Finish the build process. This can be used to take further actions, like packaging the project" />
|
||||
|
||||
<sequential>
|
||||
|
||||
<echo>
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
* * * Building project @{projectName}
|
||||
* * * in workspace @{workspaceDirectory}
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
</echo>
|
||||
|
||||
<ant4eclipse:executeJdtProject workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}"
|
||||
prefix="buildJdtProject">
|
||||
<jdtClasspathContainerArgument key="target.platform"
|
||||
value="@{targetPlatformId}" />
|
||||
|
||||
|
||||
<ant4eclipse:forProject>
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 1: Initialize
|
||||
- Initialize build state, e.g. set properties or create directories.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- template element 'intialize' -->
|
||||
<initialize />
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 2: Generate-sources
|
||||
- Generate any source code for inclusion in compilation.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- template element 'generate-sources' -->
|
||||
<generate-sources />
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 3: Generate-resources
|
||||
- Generate resources for inclusion in the package.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- template element 'generate-resources' -->
|
||||
<generate-resources />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- Step 4: clean output directories -->
|
||||
<ant4eclipse:forEachOutputDirectory>
|
||||
<echo> * Cleaning output directory '${buildJdtProject.output.directory}'</echo>
|
||||
<delete dir="${buildJdtProject.output.directory}" quiet="true" />
|
||||
<mkdir dir="${buildJdtProject.output.directory}" />
|
||||
</ant4eclipse:forEachOutputDirectory>
|
||||
|
||||
<!-- Step 5: Compile the project using the eclipse java compiler (ejc) -->
|
||||
<ant4eclipse:forProject>
|
||||
|
||||
<!-- template element 'pre-compile' -->
|
||||
<pre-compile />
|
||||
|
||||
<echo>Compiling jdt project '${buildJdtProject.project.name}'</echo>
|
||||
<echo> - source directories -> ${buildJdtProject.source.directories}</echo>
|
||||
<echo> - output directories -> ${buildJdtProject.default.output.directory}</echo>
|
||||
<echo> - bootclasspath -> ${buildJdtProject.boot.classpath}</echo>
|
||||
<echo> - classpath -> ${buildJdtProject.classpath.absolute.compiletime}</echo>
|
||||
<javac
|
||||
compiler="org.ant4eclipse.ant.jdt.ecj.JDTCompilerAdapter"
|
||||
source="@{sourceLevel}" target="@{targetLevel}">
|
||||
<!-- let ejc read compiler settings from the project's '.settings' directory -->
|
||||
<compilerarg value="compiler.options.file=${buildJdtProject.project.directory}/.settings/org.eclipse.jdt.core.prefs"
|
||||
compiler="org.ant4eclipse.ant.jdt.ecj.JDTCompilerAdapter" />
|
||||
|
||||
<!-- Set default options if no project specific settings have been made -->
|
||||
<compilerarg value="default.compiler.options.file=@{defaultCompilerOptionsFile}"
|
||||
compiler="org.ant4eclipse.ant.jdt.ecj.JDTCompilerAdapter" />
|
||||
|
||||
<!-- Set Compiler Arguments from 'executeJdtProject' task (source folders, access restrictions) -->
|
||||
<compilerarg value="compiler.args.refid=buildJdtProject.compiler.args" compiler="org.ant4eclipse.ant.jdt.ecj.JDTCompilerAdapter" />
|
||||
|
||||
<!-- set the source folders that are passed in from 'fromProject' -->
|
||||
<src refid="buildJdtProject.source.directories.path" />
|
||||
|
||||
<!-- set the bootclasspath, i.e. the JRE we compile against -->
|
||||
<bootclasspath refid="buildJdtProject.boot.classpath.path" />
|
||||
|
||||
<!-- set our compile-time classpath -->
|
||||
<classpath refid="buildJdtProject.classpath.absolute.compiletime.path" />
|
||||
</javac>
|
||||
|
||||
<!-- template element 'post-compile' -->
|
||||
<post-compile />
|
||||
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- Step 6: Copy resources (non-java-files) from sourcedirectories to their output directories -->
|
||||
<ant4eclipse:forEachSourceDirectory>
|
||||
<echo>Copying resources from directory '${buildJdtProject.source.directory}' to '${buildJdtProject.output.directory}'</echo>
|
||||
<copy todir="${buildJdtProject.output.directory}">
|
||||
<fileset dir="${buildJdtProject.source.directory}">
|
||||
<exclude name="**/*.java" />
|
||||
</fileset>
|
||||
</copy>
|
||||
|
||||
<!-- Invoke 'post-copy-resources' template to allow customized processing -->
|
||||
<post-copy-resources />
|
||||
</ant4eclipse:forEachSourceDirectory>
|
||||
|
||||
<!-- Step 7: Post-Process output directories -->
|
||||
<ant4eclipse:forEachOutputDirectory>
|
||||
<postprocess-output-directory />
|
||||
</ant4eclipse:forEachOutputDirectory>
|
||||
|
||||
<!-- Step 8: Finish build process -->
|
||||
<ant4eclipse:forProject>
|
||||
<!-- Invoke 'finish' template -->
|
||||
<finish/>
|
||||
</ant4eclipse:forProject>
|
||||
</ant4eclipse:executeJdtProject>
|
||||
</sequential>
|
||||
</macrodef>
|
||||
</project>
|
|
@ -0,0 +1,852 @@
|
|||
<?xml version="1.0"?>
|
||||
<project name="build"
|
||||
basedir="."
|
||||
xmlns:ant4eclipse="antlib:org.ant4eclipse"
|
||||
xmlns:antcontrib="antlib:net.sf.antcontrib">
|
||||
|
||||
<!-- define antcontrib tasks -->
|
||||
<taskdef uri="antlib:net.sf.antcontrib"
|
||||
resource="net/sf/antcontrib/antlib.xml" />
|
||||
|
||||
<!-- define ant4eclipse tasks -->
|
||||
<taskdef uri="antlib:org.ant4eclipse"
|
||||
resource="org/ant4eclipse/ant/antlib.xml" />
|
||||
|
||||
<!--definition of directory properties -->
|
||||
<property name="a4e.plugins.directory" value="plugins" />
|
||||
<property name="a4e.features.directory" value="features" />
|
||||
<property name="a4e.temp.directory" value="temp" />
|
||||
<property name="a4e.self.directory" value="@dot" />
|
||||
|
||||
<!-- =================================
|
||||
target: buildPlugin
|
||||
================================= -->
|
||||
<macrodef name="buildPlugin" description="builds a single plug-in project.">
|
||||
<attribute name="workspaceDirectory" />
|
||||
<attribute name="projectName" />
|
||||
<attribute name="targetPlatformId" />
|
||||
<attribute name="destination" />
|
||||
<attribute name="packageAsJar" default="true" />
|
||||
<attribute name="buildSourceJar" default="true" />
|
||||
<attribute name="defaultCompilerOptionsFile" default="" />
|
||||
<attribute name="newBundleVersion" default="" />
|
||||
<attribute name="clean" default="true" />
|
||||
|
||||
<!-- element definitions for lifecycle phases -->
|
||||
<element name="validate"
|
||||
optional="true"
|
||||
description="Validate the project if it's correct and all necessary information is available." />
|
||||
<element name="initialize"
|
||||
optional="true"
|
||||
description="Initialize build state, e.g. set properties or create directories." />
|
||||
<element name="generate-sources"
|
||||
optional="true"
|
||||
description="Generate any source code for inclusion in compilation." />
|
||||
<element name="generate-resources"
|
||||
optional="true"
|
||||
description="Generate resources for inclusion in the package." />
|
||||
<element name="pre-compile"
|
||||
optional="true"
|
||||
description="Execute additional steps before compilation." />
|
||||
<element name="post-compile"
|
||||
optional="true"
|
||||
description="Post-process the generated files from compilation, for example to do bytecode enhancement on Java classes." />
|
||||
<element name="pre-package-library"
|
||||
optional="true"
|
||||
description="Execute additonal steps before packaging a library" />
|
||||
<element name="post-package-library"
|
||||
optional="true"
|
||||
description="Execute additonal steps after packaging a library" />
|
||||
<element name="prepare-package"
|
||||
optional="true"
|
||||
description="Copy the final package from the destination to aremote repository or whatever." />
|
||||
<element name="deploy"
|
||||
optional="true"
|
||||
description="Perform any operations necessary to prepare a package before the actual packaging." />
|
||||
|
||||
<sequential>
|
||||
|
||||
<ant4eclipse:executePluginProject workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}"
|
||||
prefix="buildPlugin">
|
||||
|
||||
<ant4eclipse:forProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 1: Set the bundle version
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<condition property="buildPlugin.newBundleVersion"
|
||||
value="${buildPlugin.bundle.resolved.version}"
|
||||
else="@{newBundleVersion}">
|
||||
<equals arg1="@{newBundleVersion}" arg2="" />
|
||||
</condition>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 2: Validate
|
||||
- Validate the project is correct and all necessary information is available.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- check project consistency -->
|
||||
<ant4eclipse:checkPluginProject workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}" />
|
||||
|
||||
<!-- template element 'validate' -->
|
||||
<validate />
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 3: Initialize
|
||||
- Initialize build state, e.g. set properties or create directories.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- try to create the target directory -->
|
||||
<mkdir dir="@{destination}" />
|
||||
|
||||
<!-- template element 'intialize' -->
|
||||
<initialize />
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 4: Generate-sources
|
||||
- Generate any source code for inclusion in compilation.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- template element 'generate-sources' -->
|
||||
<generate-sources />
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 5: Generate-resources
|
||||
- Generate resources for inclusion in the package.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- template element 'generate-resources' -->
|
||||
<generate-resources />
|
||||
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
</ant4eclipse:executePluginProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 6: Compile
|
||||
- Compiles the plug-in project (only in case that the project has the nature 'org.eclipse.jdt.core.javanature').
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<antcontrib:if>
|
||||
<ant4eclipse:hasNature workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}"
|
||||
nature="org.eclipse.jdt.core.javanature" />
|
||||
<antcontrib:then>
|
||||
|
||||
<!-- Execute the JDT project -->
|
||||
<ant4eclipse:executeJdtProject workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}"
|
||||
prefix="buildPlugin">
|
||||
|
||||
<jdtClasspathContainerArgument key="target.platform"
|
||||
value="@{targetPlatformId}" />
|
||||
|
||||
<!-- Step 6.1: Clean all output directories -->
|
||||
<ant4eclipse:forEachOutputDirectory if="@{clean}">
|
||||
<scrub-directory dir="${buildPlugin.output.directory}" />
|
||||
</ant4eclipse:forEachOutputDirectory>
|
||||
|
||||
<!-- Step 6.2: Compile the sources -->
|
||||
<ant4eclipse:forProject filter="(buildPlugin.source.directories=*)">
|
||||
|
||||
<!-- template element 'pre-compile' -->
|
||||
<pre-compile />
|
||||
|
||||
<echo>Compiling pde project '${buildPlugin.project.name}'</echo>
|
||||
<!-- <echo> - source directories -> ${buildPlugin.source.directories}</echo>
|
||||
<echo> - output directories -> ${buildPlugin.default.output.directory}</echo>
|
||||
<echo> - bootclasspath -> ${buildPlugin.boot.classpath}</echo>
|
||||
<echo> - classpath -> ${buildPlugin.classpath.absolute.compiletime}</echo> -->
|
||||
<mkdir dir="${buildPlugin.default.output.directory}" />
|
||||
<javac destdir="${buildPlugin.default.output.directory}"
|
||||
compiler="org.ant4eclipse.ant.jdt.ecj.JDTCompilerAdapter"
|
||||
source="1.5"
|
||||
target="1.5">
|
||||
|
||||
<src refid="buildPlugin.source.directories.path" />
|
||||
<bootclasspath refid="buildPlugin.boot.classpath.path" />
|
||||
<classpath refid="buildPlugin.classpath.absolute.compiletime.path" />
|
||||
|
||||
<!-- we have to pass in the reference to the additional compiler arguments -->
|
||||
<compilerarg value="compiler.args.refid=buildPlugin.compiler.args"
|
||||
compiler="org.ant4eclipse.ant.jdt.ecj.JDTCompilerAdapter" />
|
||||
|
||||
<!-- we also have to pass path of the compiler options file to support project specific compiler options -->
|
||||
<compilerarg value="compiler.options.file=${buildPlugin.project.directory}/.settings/org.eclipse.jdt.core.prefs"
|
||||
compiler="org.ant4eclipse.ant.jdt.ecj.JDTCompilerAdapter" />
|
||||
|
||||
<!-- pass the path of the default compiler options file -->
|
||||
<compilerarg value="default.compiler.options.file=@{defaultCompilerOptionsFile}"
|
||||
compiler="org.ant4eclipse.ant.jdt.ecj.JDTCompilerAdapter" />
|
||||
</javac>
|
||||
|
||||
<!-- template element 'post-compile' -->
|
||||
<post-compile />
|
||||
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- Step 6.3: Copy the resources -->
|
||||
<ant4eclipse:forEachSourceDirectory>
|
||||
<echo>Copying resources from directory '${buildPlugin.source.directory}' to '${buildPlugin.output.directory}'</echo>
|
||||
<copy todir="${buildPlugin.output.directory}">
|
||||
<fileset dir="${buildPlugin.source.directory}">
|
||||
<exclude name="**/*.java" />
|
||||
</fileset>
|
||||
</copy>
|
||||
</ant4eclipse:forEachSourceDirectory>
|
||||
|
||||
</ant4eclipse:executeJdtProject>
|
||||
</antcontrib:then>
|
||||
</antcontrib:if>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 7: Package the bundle
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:executePluginProject workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}"
|
||||
prefix="buildPlugin">
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 7.1: Pack all libraries except the 'self' library
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forEachPluginLibrary filter="(buildPlugin.library.isSelf=false)">
|
||||
|
||||
<echo>Packing library '${buildPlugin.library.name}'</echo>
|
||||
|
||||
<!-- template element 'pre-package-library' -->
|
||||
<pre-package-library />
|
||||
|
||||
<!-- copy the content of the library to a temporary folder -->
|
||||
<ant4eclipse:executePluginLibrary workspace="@{workspaceDirectory}"
|
||||
projectname="${buildPlugin.project.name}"
|
||||
libraryname="${buildPlugin.library.name}">
|
||||
|
||||
<ant4eclipse:forEachOutputDirectory>
|
||||
<echo>Copying resources from directory '${executePluginLibrary.output.directory}' to '@{destination}/${a4e.temp.directory}/${buildPlugin.library.name}'</echo>
|
||||
<copy todir="@{destination}/${a4e.temp.directory}/${buildPlugin.library.name}">
|
||||
<fileset dir="${executePluginLibrary.output.directory}" />
|
||||
</copy>
|
||||
</ant4eclipse:forEachOutputDirectory>
|
||||
|
||||
<ant4eclipse:forEachSourceDirectory>
|
||||
<echo>Copying resources from directory '${executePluginLibrary.source.directory}' to '@{destination}/${a4e.temp.directory}/${buildPlugin.library.name}'</echo>
|
||||
<copy todir="@{destination}/${a4e.temp.directory}/${buildPlugin.library.name}"
|
||||
overwrite="true">
|
||||
<fileset dir="${executePluginLibrary.source.directory}">
|
||||
<exclude name="**/*.java" />
|
||||
</fileset>
|
||||
</copy>
|
||||
</ant4eclipse:forEachSourceDirectory>
|
||||
|
||||
</ant4eclipse:executePluginLibrary>
|
||||
|
||||
<!--delete the library file if on exists -->
|
||||
<delete file="@{destination}/${a4e.plugins.directory}/${buildPlugin.library.name}/${buildPlugin.library.name}"
|
||||
quiet="true" />
|
||||
<mkdir dir="@{destination}/${a4e.plugins.directory}/${buildPlugin.library.name}" />
|
||||
|
||||
<!-- jar the library file if on exists -->
|
||||
<jar destfile="@{destination}/${a4e.plugins.directory}/${buildPlugin.library.name}/${buildPlugin.library.name}"
|
||||
basedir="@{destination}/${a4e.temp.directory}/${buildPlugin.library.name}" />
|
||||
|
||||
<!-- move the jar file to the pde project folder project -->
|
||||
<move file="@{destination}/${a4e.plugins.directory}/${buildPlugin.library.name}/${buildPlugin.library.name}"
|
||||
todir="${buildPlugin.project.directory}" />
|
||||
|
||||
<!-- finally delete the temp file -->
|
||||
<delete dir="@{destination}/${a4e.plugins.directory}/${buildPlugin.library.name}" />
|
||||
<delete dir="@{destination}/${a4e.temp.directory}/" />
|
||||
|
||||
<!-- template element 'post-package-library' -->
|
||||
<post-package-library />
|
||||
|
||||
</ant4eclipse:forEachPluginLibrary>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 7.2: Package the 'self' library
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forEachPluginLibrary filter="(buildPlugin.library.isSelf=true)">
|
||||
<echo>Packing library '.'</echo>
|
||||
|
||||
<!-- template element 'pre-package-library' -->
|
||||
<pre-package-library />
|
||||
|
||||
<!-- just copy everything to the 'self' directory -->
|
||||
<ant4eclipse:executePluginLibrary workspaceDirectory="@{workspaceDirectory}"
|
||||
projectname="${buildPlugin.project.name}"
|
||||
libraryname="${buildPlugin.library.name}">
|
||||
|
||||
<ant4eclipse:forEachOutputDirectory>
|
||||
<echo>Copying resources from directory '${executePluginLibrary.output.directory}' to '${buildPlugin.project.directory}/${a4e.self.directory}'</echo>
|
||||
<copy todir="${buildPlugin.project.directory}/${a4e.self.directory}">
|
||||
<fileset dir="${executePluginLibrary.output.directory}" />
|
||||
</copy>
|
||||
</ant4eclipse:forEachOutputDirectory>
|
||||
|
||||
<ant4eclipse:forEachSourceDirectory>
|
||||
<echo>Copying resources from directory '${executePluginLibrary.source.directory}' to '${buildPlugin.project.directory}/${a4e.self.directory}'</echo>
|
||||
<copy todir="${buildPlugin.project.directory}/${a4e.self.directory}">
|
||||
<fileset dir="${executePluginLibrary.source.directory}">
|
||||
<exclude name="**/*.java" />
|
||||
</fileset>
|
||||
</copy>
|
||||
</ant4eclipse:forEachSourceDirectory>
|
||||
|
||||
</ant4eclipse:executePluginLibrary>
|
||||
|
||||
<!-- template element 'post-package-library' -->
|
||||
<post-package-library />
|
||||
|
||||
</ant4eclipse:forEachPluginLibrary>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 7.3: Package the bundle
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject>
|
||||
|
||||
<!-- template element 'prepare-package' -->
|
||||
<prepare-package />
|
||||
|
||||
<!-- copy the (in the build.properties) specified content to the destination directory -->
|
||||
<copy todir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}_${buildPlugin.newBundleVersion}"
|
||||
overwrite="true">
|
||||
|
||||
<!-- file set defined by the projects build properties -->
|
||||
<ant4eclipse:pdeProjectFileSet workspaceDirectory="@{workspaceDirectory}"
|
||||
projectname="@{projectName}" />
|
||||
</copy>
|
||||
|
||||
<!-- delete the (temporary) self-directory -->
|
||||
<delete dir="${buildPlugin.project.directory}/${a4e.self.directory}"
|
||||
quiet="true" />
|
||||
|
||||
<!-- 'patch' the manifest with the resolved bundle version -->
|
||||
<manifest file="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}_${buildPlugin.newBundleVersion}/META-INF/MANIFEST.MF"
|
||||
mode="update">
|
||||
<attribute name="Bundle-Version"
|
||||
value="${buildPlugin.newBundleVersion}" />
|
||||
</manifest>
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- if bundle should be packaged as a jar file (the default),
|
||||
- we have to jar the bundle.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject if="@{packageAsJar}">
|
||||
<jar destfile="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}_${buildPlugin.newBundleVersion}.jar"
|
||||
basedir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}_${buildPlugin.newBundleVersion}"
|
||||
manifest="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}_${buildPlugin.newBundleVersion}/META-INF/MANIFEST.MF" />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<ant4eclipse:forProject if="@{packageAsJar}">
|
||||
<delete dir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}_${buildPlugin.newBundleVersion}"
|
||||
quiet="true"
|
||||
deleteonexit="true" />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<ant4eclipse:forProject>
|
||||
<!-- template element 'deploy' -->
|
||||
<deploy />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 8: Build the source bundle
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject if="@{buildSourceJar}">
|
||||
<buildSourceBundle workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}"
|
||||
destination="@{destination}"
|
||||
newBundleVersion="@{newBundleVersion}" />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 9: Cleaning up
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject>
|
||||
<!-- the property has been set, so we need to remove it otherwise it cannot be altered -->
|
||||
<!-- by subsequent calls of this macro. -->
|
||||
<antcontrib:var unset="true" name="buildPlugin.newBundleVersion" />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
</ant4eclipse:executePluginProject>
|
||||
|
||||
|
||||
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<!-- =================================
|
||||
target: buildSourceBundle
|
||||
Builds a source bundle for a given eclipse plug-in project.
|
||||
================================= -->
|
||||
<macrodef name="buildSourceBundle"
|
||||
description="builds a source bundle for a given plug-in project.">
|
||||
<attribute name="workspaceDirectory" />
|
||||
<attribute name="projectName" />
|
||||
<attribute name="destination" />
|
||||
<attribute name="newBundleVersion" default="" />
|
||||
<sequential>
|
||||
|
||||
<ant4eclipse:executePluginProject workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}"
|
||||
prefix="buildPlugin">
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 1: Set the bundle version
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject>
|
||||
<condition property="buildPlugin.newBundleVersion"
|
||||
value="@{newBundleVersion}"
|
||||
else="${buildPlugin.bundle.resolved.version}">
|
||||
<isset property="@{newBundleVersion}" />
|
||||
</condition>
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 2: Copy the source of the 'self' library to the
|
||||
- destination location
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forEachPluginLibrary filter="(buildPlugin.library.isSelf=true)">
|
||||
|
||||
<ant4eclipse:executePluginLibrary workspaceDirectory="@{workspaceDirectory}"
|
||||
projectname="${buildPlugin.project.name}"
|
||||
libraryname="${buildPlugin.library.name}">
|
||||
|
||||
<ant4eclipse:forEachSourceDirectory>
|
||||
<copy todir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}/">
|
||||
<fileset dir="${executePluginLibrary.source.directory}" />
|
||||
</copy>
|
||||
</ant4eclipse:forEachSourceDirectory>
|
||||
|
||||
</ant4eclipse:executePluginLibrary>
|
||||
</ant4eclipse:forEachPluginLibrary>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 3: Package the source of all the library source (except
|
||||
- the 'self' library ) to the destination location
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forEachPluginLibrary filter="(buildPlugin.library.isSelf=false)">
|
||||
|
||||
<ant4eclipse:executePluginLibrary workspaceDirectory="@{workspaceDirectory}"
|
||||
projectname="${buildPlugin.project.name}"
|
||||
libraryname="${buildPlugin.library.name}">
|
||||
|
||||
<ant4eclipse:forEachSourceDirectory>
|
||||
<copy todir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}/${buildPlugin.library.name}.src">
|
||||
<fileset dir="${executePluginLibrary.source.directory}" />
|
||||
</copy>
|
||||
</ant4eclipse:forEachSourceDirectory>
|
||||
|
||||
</ant4eclipse:executePluginLibrary>
|
||||
</ant4eclipse:forEachPluginLibrary>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 4: Copy all 'non-library' resources to the destination
|
||||
- location and create the manifest file
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject>
|
||||
|
||||
<!-- copy the (in the build.properties) specified content to the destination directory -->
|
||||
<copy todir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}"
|
||||
overwrite="true">
|
||||
|
||||
<!-- file set defined by the projects build properties -->
|
||||
<ant4eclipse:pdeProjectFileSet workspaceDirectory="@{workspaceDirectory}"
|
||||
projectname="@{projectName}"
|
||||
excludeLibraries="true"
|
||||
sourceBundle="true" />
|
||||
</copy>
|
||||
|
||||
<mkdir dir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}/META-INF" />
|
||||
|
||||
<!-- create the bundle manifest -->
|
||||
<manifest file="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}/META-INF/MANIFEST.MF">
|
||||
<attribute name="Bundle-ManifestVersion" value="2" />
|
||||
<attribute name="Bundle-Version"
|
||||
value="${buildPlugin.newBundleVersion}" />
|
||||
<attribute name="Bundle-SymbolicName"
|
||||
value="${buildPlugin.bundle.symbolicname}.source" />
|
||||
<attribute name="Eclipse-SourceBundle"
|
||||
value="${buildPlugin.bundle.symbolicname};version="${buildPlugin.newBundleVersion}";roots:="${buildPlugin.build.librarysourceroots}"" />
|
||||
</manifest>
|
||||
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 5: create the jar file
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject>
|
||||
<jar destfile="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}.jar"
|
||||
basedir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}"
|
||||
manifest="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}/META-INF/MANIFEST.MF" />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 6: delete the (temporary) bundle directory
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject>
|
||||
<delete dir="@{destination}/${a4e.plugins.directory}/${buildPlugin.bundle.symbolicname}.source_${buildPlugin.newBundleVersion}"
|
||||
quiet="true"
|
||||
deleteonexit="true" />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
- Step 7: Cleaning up
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<ant4eclipse:forProject>
|
||||
<!-- the property has been set, so we need to remove it otherwise it cannot be altered -->
|
||||
<!-- by subsequent calls of this macro. -->
|
||||
<antcontrib:var unset="true" name="buildPlugin.newBundleVersion" />
|
||||
</ant4eclipse:forProject>
|
||||
|
||||
</ant4eclipse:executePluginProject>
|
||||
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<!-- ~~~ PRIVATE ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
||||
<!-- Clears a directory under a certain condition. -->
|
||||
<!-- -->
|
||||
<!-- @param dir The directory which has to be cleaned. -->
|
||||
<!-- @param condition The condition which decides whether the cleanup takes place or not. -->
|
||||
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
||||
<macrodef name="scrub-directory">
|
||||
<attribute name="dir" />
|
||||
<attribute name="condition" default="true" />
|
||||
<sequential>
|
||||
<antcontrib:if>
|
||||
<antcontrib:istrue value="@{condition}" />
|
||||
<antcontrib:then>
|
||||
<echo>Scrubbing directory '@{dir}'</echo>
|
||||
<delete dir="@{dir}" quiet="true" />
|
||||
<mkdir dir="@{dir}" />
|
||||
</antcontrib:then>
|
||||
</antcontrib:if>
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<!-- =================================
|
||||
macro : buildProduct
|
||||
description : Builds an eclipse product. Each contained plug-in project will be build.
|
||||
================================= -->
|
||||
<macrodef name="buildProduct">
|
||||
|
||||
<attribute name="workspaceDirectory" />
|
||||
<attribute name="productfile" />
|
||||
<attribute name="targetPlatformId" />
|
||||
<attribute name="destination" />
|
||||
<attribute name="os" default="win32" />
|
||||
<attribute name="clearDestination" default="false" />
|
||||
<attribute name="defaultCompilerOptionsFile" default="" />
|
||||
<attribute name="packageAsJar" default="false" />
|
||||
<attribute name="commandline" default="false" />
|
||||
<attribute name="packageSources" default="true" />
|
||||
|
||||
<!-- element definitions for lifecycle phases -->
|
||||
<element name="validate"
|
||||
optional="true"
|
||||
description="Validate the project if it's correct and all necessary information is available. Scope: forProduct." />
|
||||
|
||||
<element name="deploy"
|
||||
optional="true"
|
||||
description="Perform any operations necessary to prepare a package before the actual packaging. Scope: forProduct." />
|
||||
|
||||
<sequential>
|
||||
|
||||
<ant4eclipse:executeProduct workspaceDirectory="@{workspaceDirectory}"
|
||||
targetPlatformId="@{targetPlatformId}"
|
||||
product="@{productfile}"
|
||||
os="@{os}">
|
||||
|
||||
<ant4eclipse:forProduct>
|
||||
<echo>Building product ${executeProduct.product.name} version ${executeProduct.product.version}</echo>
|
||||
</ant4eclipse:forProduct>
|
||||
|
||||
<ant4eclipse:forProduct>
|
||||
<validate />
|
||||
</ant4eclipse:forProduct>
|
||||
|
||||
<!-- Step 1: Scrub destination directory if requested -->
|
||||
<ant4eclipse:forProduct if="@{clearDestination}">
|
||||
<echo>Scrubbing directory '@{destination}'</echo>
|
||||
<delete dir="@{destination}" quiet="true" />
|
||||
</ant4eclipse:forProduct>
|
||||
|
||||
<!-- Step 2: Assure a necessary structure. -->
|
||||
<ant4eclipse:forProduct>
|
||||
<mkdir dir="@{destination}/configuration" />
|
||||
</ant4eclipse:forProduct>
|
||||
|
||||
<!-- Step 3: Build features or plugins -->
|
||||
|
||||
<!-- Step 3a: Build included features if this product is based on features -->
|
||||
<ant4eclipse:forEachFeature>
|
||||
<antcontrib:if>
|
||||
<istrue value="${executeProduct.product.basedonfeatures}" />
|
||||
<then>
|
||||
<echo> -> Building included feature '${executeProduct.feature.id}' - '${executeProduct.feature.version}'</echo>
|
||||
<buildFeature workspaceDirectory="@{workspaceDirectory}"
|
||||
featureId="${executeProduct.feature.id}"
|
||||
featureVersion="${executeProduct.feature.version}"
|
||||
targetPlatformId="@{targetPlatformId}"
|
||||
destination="@{destination}"
|
||||
packageAsJar="@{packageAsJar}"
|
||||
packagePluginsAsJar="@{packageAsJar}"
|
||||
packagePluginSourcesAsJar="@{packageSources}"
|
||||
defaultCompilerOptionsFile="@{defaultCompilerOptionsFile}" />
|
||||
</then>
|
||||
</antcontrib:if>
|
||||
</ant4eclipse:forEachFeature>
|
||||
|
||||
<!-- Step 3b: Build included plugins if this product is based on plugins -->
|
||||
<ant4eclipse:forEachPlugin filter="(executeProduct.plugin.isSource=true)">
|
||||
<antcontrib:if>
|
||||
<isfalse value="${executeProduct.product.basedonfeatures}" />
|
||||
<then>
|
||||
<echo> -> Building included plugin '${executeProduct.plugin.id}' from project: ${executeProduct.plugin.projectName}</echo>
|
||||
<buildPlugin projectName="${executeProduct.plugin.projectName}"
|
||||
workspaceDirectory="@{workspaceDirectory}"
|
||||
targetPlatformId="@{targetPlatformId}"
|
||||
packageAsJar="@{packageAsJar}"
|
||||
destination="@{destination}"
|
||||
defaultCompilerOptionsFile="@{defaultCompilerOptionsFile}"
|
||||
buildSourceJar="@{packageSources}" />
|
||||
</then>
|
||||
</antcontrib:if>
|
||||
</ant4eclipse:forEachPlugin>
|
||||
|
||||
<!-- Step 3c: Copy plugins from the target platform -->
|
||||
<ant4eclipse:forEachPlugin filter="(executeProduct.plugin.isSource=false)">
|
||||
<antcontrib:if>
|
||||
<isfalse value="${executeProduct.product.basedonfeatures}" />
|
||||
<then>
|
||||
<echo>Copying bundle '${executeProduct.plugin.file} (${executeProduct.plugin.id})' </echo>
|
||||
<copy todir="@{destination}/${a4e.plugins.directory}">
|
||||
<filelist refid="executeProduct.plugin.filelist" />
|
||||
</copy>
|
||||
</then>
|
||||
</antcontrib:if>
|
||||
</ant4eclipse:forEachPlugin>
|
||||
|
||||
<!-- Step 4: Generate artifacts -->
|
||||
<ant4eclipse:forProduct>
|
||||
|
||||
<!-- create the .eclipseproduct file -->
|
||||
<echo file="@{destination}/.eclipseproduct">version=1.0.0 </echo>
|
||||
<echo file="@{destination}/.eclipseproduct" append="true">name=${executeProduct.product.name} </echo>
|
||||
<echo file="@{destination}/.eclipseproduct" append="true">id=${executeProduct.product.id} </echo>
|
||||
|
||||
<!-- create the ini file for the launcher -->
|
||||
<antcontrib:if>
|
||||
<equals arg1="" arg2="${executeProduct.product.vmargs}" />
|
||||
<then>
|
||||
<!-- no arguments to set -->
|
||||
<echo file="@{destination}/${executeProduct.product.launchername}.ini">
|
||||
</echo>
|
||||
</then>
|
||||
<else>
|
||||
<!-- set vm arguments -->
|
||||
<echo file="@{destination}/${executeProduct.product.launchername}.ini">-vmargs </echo>
|
||||
<antcontrib:for param="vmarg"
|
||||
list="${executeProduct.product.vmargs}"
|
||||
delimiter=" "
|
||||
trim="true">
|
||||
<sequential>
|
||||
<echo file="@{destination}/${executeProduct.product.launchername}.ini"
|
||||
append="true">@{vmarg} </echo>
|
||||
</sequential>
|
||||
</antcontrib:for>
|
||||
</else>
|
||||
</antcontrib:if>
|
||||
|
||||
<antcontrib:if>
|
||||
<and>
|
||||
<not>
|
||||
<equals arg1="" arg2="${executeProduct.product.configini}" />
|
||||
</not>
|
||||
<available file="${executeProduct.product.configini}"
|
||||
type="file" />
|
||||
</and>
|
||||
<then>
|
||||
<!-- copy the config.ini provided by the product configuration. -->
|
||||
<copy file="${executeProduct.product.configini}"
|
||||
todir="@{destination}/configuration"
|
||||
overwrite="true" />
|
||||
</then>
|
||||
<else>
|
||||
<!-- generate a default config.ini which just starts the workbench. -->
|
||||
<echo file="@{destination}/configuration/config.ini" append="false"># Product Runtime Configuration File</echo>
|
||||
<echo file="@{destination}/configuration/config.ini" append="true">eclipse.application=${executeProduct.product.applicationid}</echo>
|
||||
<echo file="@{destination}/configuration/config.ini" append="true">osgi.bundles.defaultStartLevel=4</echo>
|
||||
<echo file="@{destination}/configuration/config.ini" append="true">eclipse.product=${executeProduct.product.id}</echo>
|
||||
<echo file="@{destination}/configuration/config.ini" append="true">osgi.splashPath=platform:/base/plugins/org.eclipse.platform</echo>
|
||||
<echo file="@{destination}/configuration/config.ini" append="true">osgi.bundles=org.eclipse.core.runtime@start,org.eclipse.osgi@start,org.eclipse.equinox.common@2:start,org.eclipse.update.configurator@3:start</echo>
|
||||
</else>
|
||||
</antcontrib:if>
|
||||
|
||||
<antcontrib:if>
|
||||
<istrue value="@{commandline}" />
|
||||
<then>
|
||||
<copy file="${executeProduct.product.cmdexe}"
|
||||
tofile="@{destination}/${executeProduct.product.launchername}.exe"
|
||||
overwrite="true" />
|
||||
</then>
|
||||
<else>
|
||||
<copy file="${executeProduct.product.guiexe}"
|
||||
tofile="@{destination}/${executeProduct.product.launchername}.exe"
|
||||
overwrite="true" />
|
||||
<copy file="${executeProduct.product.cmdexe}"
|
||||
tofile="@{destination}/${executeProduct.product.launchername}c.exe"
|
||||
overwrite="true" />
|
||||
</else>
|
||||
</antcontrib:if>
|
||||
|
||||
</ant4eclipse:forProduct>
|
||||
|
||||
<ant4eclipse:forProduct>
|
||||
<!-- template element 'deploy' -->
|
||||
<deploy />
|
||||
</ant4eclipse:forProduct>
|
||||
|
||||
<ant4eclipse:forProduct>
|
||||
<echo>Building product ${executeProduct.product.name} successfully build.</echo>
|
||||
</ant4eclipse:forProduct>
|
||||
|
||||
</ant4eclipse:executeProduct>
|
||||
|
||||
</sequential>
|
||||
|
||||
</macrodef>
|
||||
|
||||
<!-- =================================
|
||||
target : buildFeature
|
||||
description : Builds an eclipse feature project. Each contained plug-in project will be build.
|
||||
================================= -->
|
||||
<macrodef name="buildFeature">
|
||||
|
||||
<attribute name="workspaceDirectory" />
|
||||
<attribute name="projectName" default="" />
|
||||
<attribute name="featureId" default="" />
|
||||
<attribute name="featureVersion" default="" />
|
||||
<attribute name="targetPlatformId" />
|
||||
<attribute name="destination" />
|
||||
<attribute name="clearDestination" default="false" />
|
||||
<attribute name="skipBuildFeature" default="false" />
|
||||
<attribute name="packageAsJar" default="true" />
|
||||
<attribute name="packagePluginsAsJar" default="true" />
|
||||
<attribute name="packagePluginSourcesAsJar" default="true" />
|
||||
<attribute name="defaultCompilerOptionsFile" default="" />
|
||||
<attribute name="cleanPluginBuild" default="true" />
|
||||
<sequential>
|
||||
|
||||
<!-- executes the defined feature -->
|
||||
<ant4eclipse:executeFeature workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="@{projectName}"
|
||||
featureId="@{featureId}"
|
||||
featureVersion="@{featureVersion}"
|
||||
targetPlatformId="@{targetPlatformId}">
|
||||
|
||||
<ant4eclipse:forRootFeature>
|
||||
<echo>Building feature '${executeFeature.feature.id}_${executeFeature.feature.version}'</echo>
|
||||
<echo> - feature.isSource: '${executeFeature.feature.isSource}'</echo>
|
||||
</ant4eclipse:forRootFeature>
|
||||
|
||||
<!-- Step 1: Scrub destination directory -->
|
||||
<ant4eclipse:forRootFeature if="@{clearDestination}">
|
||||
<echo>Scrubbing directory '@{destination}'</echo>
|
||||
<delete dir="@{destination}" quiet="true" />
|
||||
<mkdir dir="@{destination}" />
|
||||
</ant4eclipse:forRootFeature>
|
||||
|
||||
<!-- Step 2: Build included features -->
|
||||
<ant4eclipse:forEachIncludedFeature>
|
||||
<echo> -> Building included feature '${executeFeature.feature.id}'</echo>
|
||||
<buildFeature workspaceDirectory="@{workspaceDirectory}"
|
||||
featureId="${executeFeature.feature.id}"
|
||||
featureVersion="${executeFeature.feature.resolved.version}"
|
||||
targetPlatformId="@{targetPlatformId}"
|
||||
destination="@{destination}"
|
||||
packageAsJar="@{packageAsJar}" />
|
||||
</ant4eclipse:forEachIncludedFeature>
|
||||
|
||||
<!-- Step 3: Build the plug-ins -->
|
||||
<!-- Step 3.1: Build the plug-ins -->
|
||||
<ant4eclipse:forEachPlugin filter="(executeFeature.plugin.isSource=true)">
|
||||
<echo>Building plug-in project '${executeFeature.plugin.filename} (${executeFeature.plugin.id}_${executeFeature.plugin.resolvedversion})' </echo>
|
||||
<buildPlugin workspaceDirectory="@{workspaceDirectory}"
|
||||
projectName="${executeFeature.plugin.filename}"
|
||||
targetplatformid="@{targetPlatformId}"
|
||||
destination="@{destination}"
|
||||
packageAsJar="@{packagePluginsAsJar}"
|
||||
buildSourceJar="@{packagePluginSourcesAsJar}"
|
||||
defaultCompilerOptionsFile="@{defaultCompilerOptionsFile}"
|
||||
clean="@{cleanPluginBuild}" />
|
||||
</ant4eclipse:forEachPlugin>
|
||||
|
||||
<!-- Step 3.2: Copy plug-ins -->
|
||||
<ant4eclipse:forEachPlugin filter="(executeFeature.plugin.isSource=false)">
|
||||
<echo>Copying bundle '${executeFeature.plugin.file} (${executeFeature.plugin.id}_${executeFeature.plugin.resolvedversion})' </echo>
|
||||
<copy todir="@{destination}/${a4e.plugins.directory}">
|
||||
<filelist refid="executeFeature.plugin.filelist" />
|
||||
</copy>
|
||||
</ant4eclipse:forEachPlugin>
|
||||
|
||||
<!-- Step 4: Build feature itself -->
|
||||
<ant4eclipse:forRootFeature unless="@{skipBuildFeature}"
|
||||
filter="(executeFeature.feature.isSource=true)">
|
||||
|
||||
<echo>Building feature project '${executeFeature.feature.file.name} (${executeFeature.feature.id}_${executeFeature.feature.resolved.version})' </echo>
|
||||
|
||||
<!-- Step 4.1: Copy all files defined in the build.properties to the destination directory -->
|
||||
<copy todir="@{destination}/${a4e.features.directory}/${executeFeature.feature.id}_${executeFeature.feature.resolved.version}"
|
||||
overwrite="true">
|
||||
|
||||
<!-- file set defined by the projects build properties -->
|
||||
<ant4eclipse:pdeProjectFileSet workspaceDirectory="@{workspaceDirectory}"
|
||||
projectname="${executeFeature.feature.file.name}" />
|
||||
</copy>
|
||||
|
||||
<!-- Step 4.2: Patch the feature.xml -->
|
||||
<ant4eclipse:patchFeatureManifest featureXmlFile="@{destination}/features/${executeFeature.feature.id}_${executeFeature.feature.resolved.version}/feature.xml"
|
||||
pluginVersions="${executeFeature.feature.plugins.resolved.versions}" />
|
||||
|
||||
<!-- Step 4.3: Package the feature as a jar -->
|
||||
<!-- skip this step if 'packageAsJar' is 'false' -->
|
||||
<antcontrib:if>
|
||||
<istrue value="@{packageAsJar}" />
|
||||
<antcontrib:then>
|
||||
|
||||
<!-- jar the feature -->
|
||||
<jar destfile="@{destination}/${a4e.features.directory}/${executeFeature.feature.id}_${executeFeature.feature.resolved.version}.jar"
|
||||
basedir="@{destination}/${a4e.features.directory}/${executeFeature.feature.id}_${executeFeature.feature.resolved.version}" />
|
||||
|
||||
<!-- delete the base directory -->
|
||||
<delete dir="@{destination}/${a4e.features.directory}/${executeFeature.feature.id}_${executeFeature.feature.resolved.version}" />
|
||||
</antcontrib:then>
|
||||
</antcontrib:if>
|
||||
|
||||
</ant4eclipse:forRootFeature>
|
||||
|
||||
<!-- if feature is already built, we only have to copy the jar / directory -->
|
||||
<ant4eclipse:forRootFeature unless="@{skipBuildFeature}"
|
||||
filter="(executeFeature.feature.isSource=false)">
|
||||
|
||||
<echo>Copying feature '${executeFeature.feature.file} (${executeFeature.feature.id}_${executeFeature.feature.resolved.version})' </echo>
|
||||
|
||||
<copy todir="@{destination}/${a4e.features.directory}">
|
||||
<filelist refid="executeFeature.feature.filelist" />
|
||||
</copy>
|
||||
|
||||
</ant4eclipse:forRootFeature>
|
||||
|
||||
<ant4eclipse:forRootFeature>
|
||||
<echo>Feature '${executeFeature.feature.id}_${executeFeature.feature.version}' successfully built.</echo>
|
||||
</ant4eclipse:forRootFeature>
|
||||
|
||||
</ant4eclipse:executeFeature>
|
||||
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
</project>
|
|
@ -0,0 +1,29 @@
|
|||
<?xml version="1.0"?>
|
||||
<project name="build"
|
||||
basedir="."
|
||||
xmlns:ant4eclipse="antlib:org.ant4eclipse"
|
||||
xmlns:antcontrib="antlib:net.sf.antcontrib">
|
||||
|
||||
<taskdef uri="antlib:net.sf.antcontrib"
|
||||
resource="net/sf/antcontrib/antlib.xml" />
|
||||
|
||||
<taskdef uri="antlib:org.ant4eclipse"
|
||||
resource="org/ant4eclipse/antlib.xml" />
|
||||
|
||||
<!-- =================================
|
||||
target: cvsGetProjectSet
|
||||
================================= -->
|
||||
<macrodef name="cvsGetProjectSet">
|
||||
<attribute name="workspace" />
|
||||
<attribute name="projectset" />
|
||||
<attribute name="cvsUser" />
|
||||
<attribute name="cvsPwd" />
|
||||
<attribute name="command" />
|
||||
|
||||
<sequential>
|
||||
|
||||
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
</project>
|
Loading…
Reference in New Issue