You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by hi...@apache.org on 2008/04/17 16:35:01 UTC

svn commit: r649129 - in /ant/ivy/ivyde/trunk: ./ builder/ builder/component/ builder/maps/ org.apache.ivyde.eclipse/ org.apache.ivyde.eclipse/META-INF/ org.apache.ivyde.feature/

Author: hibou
Date: Thu Apr 17 07:34:55 2008
New Revision: 649129

URL: http://svn.apache.org/viewvc?rev=649129&view=rev
Log:
IVYDE-88 : Add new target to build.xml to build the plugin with Ant
 - as discussed on the mailing list, IvyDE is 2.0 now
 - introduce a root build.xml that build everything ready to be deployed in an eclipse install

Added:
    ant/ivy/ivyde/trunk/build.xml   (with props)
    ant/ivy/ivyde/trunk/builder/
    ant/ivy/ivyde/trunk/builder/.project
    ant/ivy/ivyde/trunk/builder/component/
    ant/ivy/ivyde/trunk/builder/component/allElements.xml   (with props)
    ant/ivy/ivyde/trunk/builder/component/build.properties   (with props)
    ant/ivy/ivyde/trunk/builder/component/customTargets.xml   (with props)
    ant/ivy/ivyde/trunk/builder/maps/
    ant/ivy/ivyde/trunk/builder/maps/ivyde.map
    ant/ivy/ivyde/trunk/org.apache.ivyde.feature/
    ant/ivy/ivyde/trunk/org.apache.ivyde.feature/.project
    ant/ivy/ivyde/trunk/org.apache.ivyde.feature/build.properties   (with props)
    ant/ivy/ivyde/trunk/org.apache.ivyde.feature/feature.xml   (with props)
Modified:
    ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/CHANGES.txt
    ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/META-INF/MANIFEST.MF

Added: ant/ivy/ivyde/trunk/build.xml
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/build.xml?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/build.xml (added)
+++ ant/ivy/ivyde/trunk/build.xml Thu Apr 17 07:34:55 2008
@@ -0,0 +1,80 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<project name="ivyde" basedir="." default="build">
+
+    <target name="eclipse-startup-check">
+        <fail message="An Eclipse install is needed to run the build. Set your Eclipse install dir into the baseLocation property." unless="baseLocation" />
+
+        <condition property="eclipse.startup">
+            <available file="${baseLocation}/startup.jar" />
+        </condition>
+    </target>
+
+    <target name="eclipse-startup-classpath" depends="eclipse-startup-check" if="eclipse.startup">
+        <property name="eclipse.classpath" value="${baseLocation}/startup.jar" />
+    </target>
+
+    <target name="eclipse-launcher-classpath" depends="eclipse-startup-check" unless="eclipse.startup">
+        <!-- store path to newest launcher JAR in path id 'newest.equinox.launcher.path.id' -->
+        <path id="newest.equinox.launcher.path.id">
+            <first count="1">
+                <sort>
+                    <fileset dir="${baseLocation}/plugins" includes="**/org.eclipse.equinox.launcher_*.jar" />
+                    <!-- Seems the default order is oldest > newest so we must reverse it.
+	                   The 'reverse' and 'date' comparators are in the internal antlib
+	                   org.apache.tools.ant.types.resources.comparators.
+	                -->
+                    <reverse xmlns="antlib:org.apache.tools.ant.types.resources.comparators">
+                        <!-- 'date' inherits 'reverse's namespace -->
+                        <date />
+                    </reverse>
+                </sort>
+            </first>
+        </path>
+
+        <!-- turn the path into a property -->
+        <property name="equinox.launcher.jar.location" refid="newest.equinox.launcher.path.id" />
+        <!-- you can now reference the jar through the property ${equinox.launcher.jar.location} -->
+        <echo message="Using equinox launcher jar: ${equinox.launcher.jar.location}" />
+
+        <property name="eclipse.classpath" value="${equinox.launcher.jar.location}" />
+    </target>
+
+    <target name="build" depends="eclipse-startup-classpath,eclipse-launcher-classpath">
+        <tstamp />
+        <java classpath="${eclipse.classpath}" classname="org.eclipse.core.launcher.Main" fork="true" failonerror="true">
+            <arg value="-clean" />
+            <arg line="-application org.eclipse.pde.build.Build" />
+            <arg line="-DbaseLocation=${baseLocation}" />
+            <arg line="-Dbuilder=${basedir}/builder/component" />
+            <arg line="-DmapsPath=${basedir}/builder/maps" />
+            <arg line="-DbuildDirectory=${basedir}/work" />
+            <arg line="-DDSTAMP=${DSTAMP}" />
+            <arg line="-DTSTAMP=${TSTAMP}" />
+        </java>
+        <echo>
+Zip archive can be found here:
+  ${basedir}/work/${DSTAMP}${TSTAMP}/org.apache.ivyde.feature-${DSTAMP}${TSTAMP}.zip
+        </echo>
+    </target>
+
+    <target name="clean">
+        <delete dir="${basedir}/work" />
+    </target>
+</project>

Propchange: ant/ivy/ivyde/trunk/build.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/ivy/ivyde/trunk/build.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: ant/ivy/ivyde/trunk/build.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: ant/ivy/ivyde/trunk/builder/.project
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/builder/.project?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/builder/.project (added)
+++ ant/ivy/ivyde/trunk/builder/.project Thu Apr 17 07:34:55 2008
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>builder</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>

Added: ant/ivy/ivyde/trunk/builder/component/allElements.xml
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/builder/component/allElements.xml?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/builder/component/allElements.xml (added)
+++ ant/ivy/ivyde/trunk/builder/component/allElements.xml Thu Apr 17 07:34:55 2008
@@ -0,0 +1,46 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<project name="allElements Delegator">
+	
+ 	<!-- ===================================================================== -->
+ 	<!-- Run a given ${target} on all elements being built                     -->
+ 	<!-- Replace element.id with the id of the top level element being built.    -->
+	<!-- If element.id does not exist in ${buildDirectory}/features/element.id   -->
+	<!-- or ${baseLocation}/features/element.id, then you must provide the       -->
+	<!-- location by setting the property "pluginPath"                           -->
+ 	<!-- Add on <ant> task for each top level element being built.             -->
+ 	<!-- ===================================================================== -->
+ 	<target name="allElementsDelegator">
+ 		<ant antfile="${genericTargets}" target="${target}">
+	 		<property name="type" value="feature" />
+	 		<property name="id" value="org.apache.ivyde.feature" />
+ 		</ant>
+ 	</target>
+ 
+ 	<!-- ===================================================================== -->
+ 	<!-- Targets to assemble the built elements for particular configurations  -->
+ 	<!-- These generally call the generated assemble scripts (named in         -->
+ 	<!-- ${assembleScriptName}) but may also add pre and post processing       -->
+ 	<!-- Add one target for each root element and each configuration           -->
+ 	<!-- Replace element.id with the id of the top level element being built   -->
+ 	<!-- ===================================================================== -->
+ 	<target name="assemble.element.id[.config.spec]">
+ 		<ant antfile="${assembleScriptName}" dir="${buildDirectory}"/>
+ 	</target>
+</project>

Propchange: ant/ivy/ivyde/trunk/builder/component/allElements.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/ivy/ivyde/trunk/builder/component/allElements.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: ant/ivy/ivyde/trunk/builder/component/allElements.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: ant/ivy/ivyde/trunk/builder/component/build.properties
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/builder/component/build.properties?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/builder/component/build.properties (added)
+++ ant/ivy/ivyde/trunk/builder/component/build.properties Thu Apr 17 07:34:55 2008
@@ -0,0 +1,210 @@
+#	 ***************************************************************
+#	 * Licensed to the Apache Software Foundation (ASF) under one
+#	 * or more contributor license agreements.  See the NOTICE file
+#	 * distributed with this work for additional information
+#	 * regarding copyright ownership.  The ASF licenses this file
+#	 * to you under the Apache License, Version 2.0 (the
+#	 * "License"); you may not use this file except in compliance
+#	 * with the License.  You may obtain a copy of the License at
+#	 * 
+#	 *   http://www.apache.org/licenses/LICENSE-2.0
+#	 * 
+#	 * Unless required by applicable law or agreed to in writing,
+#	 * software distributed under the License is distributed on an
+#	 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#	 * KIND, either express or implied.  See the License for the
+#	 * specific language governing permissions and limitations
+#	 * under the License.
+#	 ***************************************************************
+
+runPackager=true
+
+# The prefix that will be used in the generated archive.
+archivePrefix=eclipse
+
+# The location underwhich all of the build output will be collected.
+collectingFolder=${archivePrefix}
+
+# The list of {os, ws, arch} configurations to build.  This 
+# value is a '&' separated list of ',' separate triples.  For example, 
+#     configs=win32,win32,x86 & linux,motif,x86
+# By default the value is *,*,*
+configs = *, *, *
+#configs=win32, win32, x86 & \
+#	linux, gtk, ppc &\
+# linux, gtk, x86 & \
+#	linux, gtk, x86_64 & \
+#	linux, motif, x86 & \
+#	solaris, motif, sparc & \
+#	solaris, gtk, sparc & \
+#	aix, motif, ppc & \
+#	hpux, motif, PA_RISC & \
+#	macosx, carbon, ppc
+
+# By default PDE creates one archive (result) per entry listed in the configs property.
+# Setting this value to try will cause PDE to only create one output containing all 
+# artifacts for all the platforms listed in the configs property.
+#groupConfigurations=true
+
+#The format of the archive. By default a zip is created using antZip.
+#The list can only contain the configuration for which the desired format is different than zip.
+#archivesFormat=win32, win32, x86 - antZip& \
+#	linux, gtk, ppc - antZip &\
+#    linux, gtk, x86 - antZip& \
+#	linux, gtk, x86_64 - antZip& \
+# linux, motif, x86 - antZip& \
+#	solaris, motif, sparc - antZip& \
+#	solaris, gtk, sparc - antZip& \
+#	aix, motif, ppc - antZip& \
+#	hpux, motif, PA_RISC - antZip& \
+#	macosx, carbon, ppc - antZip
+	
+#Set to true if you want the output to be ready for an update jar (no site.xml generated)
+outputUpdateJars = true
+
+#Set to true for Jnlp generation
+#codebase should be a URL that will be used as the root of all relative URLs in the output.
+#generateJnlp=false
+#jnlp.codebase=<codebase url>
+#jnlp.j2se=<j2se version>
+#jnlp.locale=<a locale>
+#jnlp.generateOfflineAllowed=true or false generate <offlineAllowed/> attribute in the generated features
+#jnlp.configs=${configs}			#uncomment to filter the content of the generated jnlp files based on the configuration being built
+
+#Set to true if you want to sign jars
+#signJars=false
+#sign.alias=<alias>
+#sign.keystore=<keystore location>
+#sign.storepass=<keystore password>
+
+#Arguments to send to the zip executable
+zipargs=
+
+#Arguments to send to the tar executable
+tarargs=
+
+#Control the creation of a file containing the version included in each configuration - on by default 
+#generateVersionsLists=false
+
+############## BUILD NAMING CONTROL ################
+
+# Type of build.  Used in naming the build output.  Typically this value is
+# one of I, N, M, S, ...
+buildType=I
+
+# ID of the build.  Used in naming the build output.
+buildId=${DSTAMP}${TSTAMP}
+
+# Label for the build.  Used in naming the build output
+buildLabel=${DSTAMP}${TSTAMP}
+
+#The value to be used for the qualifier of a plugin or feature when you want to override the value computed by pde.
+#The value will only be applied to plugin or features indicating build.properties, qualifier = context 
+forceContextQualifier=${DSTAMP}${TSTAMP}
+
+#Enable / disable the generation of a suffix for the features that use .qualifier. 
+#The generated suffix is computed according to the content of the feature   
+generateFeatureVersionSuffix=true
+
+############# BASE CONTROL #############
+# Settings for the base Eclipse components and Java class libraries 
+# against which you are building.
+# Base location for anything the build needs to compile against.  For example,
+# in most RCP app or a plug-in,  the baseLocation should be the location of a previously
+# installed Eclipse against which the application or plug-in code will be compiled and the RCP delta pack.
+
+#Os/Ws/Arch/nl of the eclipse specified by baseLocation
+baseos=win32
+basews=win32
+basearch=x86
+
+#this property indicates whether you want the set of plug-ins and features to be considered during the build to be limited to the ones reachable from the features / plugins being built
+filteredDependencyCheck=false
+
+#this property indicates whether the resolution should be done in development mode (i.e. ignore multiple bundles with singletons)
+resolution.devMode=false
+
+#pluginPath is a list of locations in which to find plugins and features.  This list is separated by the platform file separator (; or :)
+#a location is one of:  
+#- the location of the jar or folder that is the plugin or feature : /path/to/foo.jar or /path/to/foo
+#- a directory that contains a /plugins or /features subdirectory
+#- the location of a feature.xml, or for 2.1 style plugins, the plugin.xml or fragment.xml
+#pluginPath=
+
+skipBase=true
+eclipseURL=<url for eclipse download site>
+eclipseBuildId=<Id of Eclipse build to get>
+eclipseBaseURL=${eclipseURL}/eclipse-platform-${eclipseBuildId}-win32.zip
+
+
+############# MAP FILE CONTROL ################
+# This section defines CVS tags to use when fetching the map files from the repository.
+# If you want to fetch the map file from repository / location, change the getMapFiles target in the customTargets.xml
+
+#skipMaps=true
+mapsRepo=:pserver:anonymous@example.com/path/to/repo
+mapsRoot=path/to/maps
+mapsCheckoutTag=HEAD
+
+#tagMaps=true
+mapsTagTag=v${buildId}
+
+
+############ REPOSITORY CONTROL ###############
+# This section defines properties parameterizing the repositories where plugins, fragments
+# bundles and features are being obtained from. 
+
+# The tags to use when fetching elements to build.
+# By default thebuilder will use whatever is in the maps.  
+# This value takes the form of a comma separated list of repository identifier (like used in the map files) and the 
+# overriding value
+# For example fetchTag=CVS=HEAD, SVN=v20050101
+fetchTag=COPY=${buildDirectory}/../
+#skipFetch=true
+
+
+############# JAVA COMPILER OPTIONS ##############
+# The location of the Java jars to compile against.  Typically the rt.jar for your JDK/JRE
+#bootclasspath=${java.home}/lib/rt.jar
+
+# specific JRE locations to compile against. These values are used to compile bundles specifying a 
+# Bundle-RequiredExecutionEnvironment. Uncomment and set values for environments that you support
+#CDC-1.0/Foundation-1.0= /path/to/rt.jar
+#CDC-1.1/Foundation-1.1=
+#OSGi/Minimum-1.0=
+#OSGi/Minimum-1.1=
+#JRE-1.1=
+#J2SE-1.2=
+#J2SE-1.3=
+#J2SE-1.4=
+#J2SE-1.5=
+#JavaSE-1.6=
+#PersonalJava-1.1=
+#PersonalJava-1.2=
+#CDC-1.0/PersonalBasis-1.0=
+#CDC-1.0/PersonalJava-1.0=
+#CDC-1.1/PersonalBasis-1.1=
+#CDC-1.1/PersonalJava-1.1=
+
+# Specify the output format of the compiler log when eclipse jdt is used
+logExtension=.log
+
+# Whether or not to include debug info in the output jars
+javacDebugInfo=false 
+
+# Whether or not to fail the build if there are compiler errors
+javacFailOnError=true
+
+# Enable or disable verbose mode of the compiler
+javacVerbose=true
+
+# Extra arguments for the compiler. These are specific to the java compiler being used.
+#compilerArg=
+
+# Default value for the version of the source code. This value is used when compiling plug-ins that do not set the Bundle-RequiredExecutionEnvironment or set javacSource in build.properties
+javacSource=1.4
+
+# Default value for the version of the byte code targeted. This value is used when compiling plug-ins that do not set the Bundle-RequiredExecutionEnvironment or set javacTarget in build.properties.
+javacTarget=1.4
+
+

Propchange: ant/ivy/ivyde/trunk/builder/component/build.properties
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/ivy/ivyde/trunk/builder/component/build.properties
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Added: ant/ivy/ivyde/trunk/builder/component/customTargets.xml
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/builder/component/customTargets.xml?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/builder/component/customTargets.xml (added)
+++ ant/ivy/ivyde/trunk/builder/component/customTargets.xml Thu Apr 17 07:34:55 2008
@@ -0,0 +1,184 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<project name="Build specific targets and properties" default="noDefault">
+
+    <!-- ===================================================================== -->
+    <!-- Run a given ${target} on all elements being built -->
+    <!-- Add on <ant> task for each top level element being built. -->
+    <!-- ===================================================================== -->
+    <property name="allElementsFile" value="${builder}/allElements.xml" />
+    <import file="${allElementsFile}" />
+    <target name="allElements">
+        <antcall target="allElementsDelegator" />
+    </target>
+
+    <target name="assemble.org.apache.ivyde.feature">
+        <ant antfile="${assembleScriptName}" dir="${buildDirectory}" />
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- ===================================================================== -->
+    <target name="getBaseComponents" depends="checkLocalBase" unless="skipBase">
+        <get src="${eclipseBaseURL}" dest="${buildDirectory}/../temp-base.zip" />
+        <unzip dest="${base}" overwrite="true" src="${buildDirectory}/../temp-base.zip" />
+    </target>
+
+    <target name="checkLocalBase">
+        <available file="${base}" property="skipBase" />
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Check out map files from correct repository -->
+    <!-- Replace values for mapsCheckoutTag as desired. -->
+    <!-- ===================================================================== -->
+    <target name="getMapFiles" depends="checkLocalMaps" unless="skipMaps">
+        <copy todir="${buildDirectory}/maps">
+            <fileset dir="${mapsPath}" includes="*.map" />
+        </copy>
+    </target>
+
+    <target name="checkLocalMaps">
+        <available property="skipMaps" file="${buildDirectory}/maps" />
+    </target>
+
+    <target name="tagMapFiles" if="tagMaps">
+        <!--cvs dest="${buildDirectory}/maps/${mapsRoot}" command="tag ${mapsTagTag}" /-->
+    </target>
+
+    <!-- ===================================================================== -->
+
+    <target name="clean" unless="noclean">
+        <antcall target="allElements">
+            <param name="target" value="cleanElement" />
+        </antcall>
+    </target>
+
+    <target name="gatherLogs">
+        <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
+        <antcall target="allElements">
+            <param name="target" value="gatherLogs" />
+        </antcall>
+        <unzip dest="${buildDirectory}/${buildLabel}/compilelogs" overwrite="true">
+            <fileset dir="${buildDirectory}/features">
+                <include name="**/*.log.zip" />
+            </fileset>
+        </unzip>
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do before setup -->
+    <!-- ===================================================================== -->
+    <target name="preSetup">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do after setup but before starting the build proper -->
+    <!-- ===================================================================== -->
+    <target name="postSetup">
+        <antcall target="getBaseComponents" />
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do before fetching the build elements -->
+    <!-- ===================================================================== -->
+    <target name="preFetch">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do after fetching the build elements -->
+    <!-- ===================================================================== -->
+    <target name="postFetch">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do before generating the build scripts. -->
+    <!-- ===================================================================== -->
+    <target name="preGenerate">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do after generating the build scripts. -->
+    <!-- ===================================================================== -->
+    <target name="postGenerate">
+        <antcall target="clean" />
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do before running the build.xmls for the elements being built. -->
+    <!-- ===================================================================== -->
+    <target name="preProcess">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do after running the build.xmls for the elements being built. -->
+    <!-- ===================================================================== -->
+    <target name="postProcess">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do before running assemble. -->
+    <!-- ===================================================================== -->
+    <target name="preAssemble">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do after  running assemble. -->
+    <!-- ===================================================================== -->
+    <target name="postAssemble">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do before running package. -->
+    <!-- ===================================================================== -->
+    <target name="prePackage">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do after  running package. -->
+    <!-- ===================================================================== -->
+    <target name="postPackage">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do after the build is done. -->
+    <!-- ===================================================================== -->
+    <target name="postBuild">
+        <antcall target="gatherLogs" />
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do to test the build results -->
+    <!-- ===================================================================== -->
+    <target name="test">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Steps to do to publish the build results -->
+    <!-- ===================================================================== -->
+    <target name="publish">
+    </target>
+
+    <!-- ===================================================================== -->
+    <!-- Default target                                                        -->
+    <!-- ===================================================================== -->
+    <target name="noDefault">
+        <echo message="You must specify a target when invoking this file" />
+    </target>
+
+</project>

Propchange: ant/ivy/ivyde/trunk/builder/component/customTargets.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/ivy/ivyde/trunk/builder/component/customTargets.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: ant/ivy/ivyde/trunk/builder/component/customTargets.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: ant/ivy/ivyde/trunk/builder/maps/ivyde.map
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/builder/maps/ivyde.map?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/builder/maps/ivyde.map (added)
+++ ant/ivy/ivyde/trunk/builder/maps/ivyde.map Thu Apr 17 07:34:55 2008
@@ -0,0 +1,20 @@
+#	 ***************************************************************
+#	 * Licensed to the Apache Software Foundation (ASF) under one
+#	 * or more contributor license agreements.  See the NOTICE file
+#	 * distributed with this work for additional information
+#	 * regarding copyright ownership.  The ASF licenses this file
+#	 * to you under the Apache License, Version 2.0 (the
+#	 * "License"); you may not use this file except in compliance
+#	 * with the License.  You may obtain a copy of the License at
+#	 * 
+#	 *   http://www.apache.org/licenses/LICENSE-2.0
+#	 * 
+#	 * Unless required by applicable law or agreed to in writing,
+#	 * software distributed under the License is distributed on an
+#	 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#	 * KIND, either express or implied.  See the License for the
+#	 * specific language governing permissions and limitations
+#	 * under the License.
+#	 ***************************************************************
+plugin@org.apache.ivyde.eclipse=COPY,.,org.apache.ivyde.eclipse
+feature@org.apache.ivyde.feature=COPY,.,org.apache.ivyde.feature

Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/CHANGES.txt
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/CHANGES.txt?rev=649129&r1=649128&r2=649129&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/CHANGES.txt (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/CHANGES.txt Thu Apr 17 07:34:55 2008
@@ -11,6 +11,7 @@
 - IMPROVE: enable 'Resolve all' action (IVYDE-42) (thanks to Thomas FRIOL)
 - IMPROVE: Support javadoc and sources even in modules where they are not declared (IVYDE-46)
 - IMPROVE: Simplify the resolve process (IVYDE-64) (thanks to Nicolas Lalevée) 
+- IMPROVE: Add new target to build.xml to build the plugin with Ant (IVYDE-88)
 
 - FIX: IvyDE resolve also evicted artifacts (IVYDE-76) (thanks to Nicolas Lalevée)
 - FIX: IvyDE is using some internal classes of Eclipse (IVYDE-68) (thanks to Nicolas Lalevée) 

Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/META-INF/MANIFEST.MF?rev=649129&r1=649128&r2=649129&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/META-INF/MANIFEST.MF (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/META-INF/MANIFEST.MF Thu Apr 17 07:34:55 2008
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: IvyDE Eclipse Plug-in
 Bundle-SymbolicName: org.apache.ivyde.eclipse; singleton:=true
-Bundle-Version: 1.3.0.20071219120000
+Bundle-Version: 2.0.0.qualifier
 Bundle-ClassPath: ivyde-eclipse.jar
 Bundle-Activator: org.apache.ivyde.eclipse.IvyPlugin
 Bundle-Vendor: Apache Software Foundation

Added: ant/ivy/ivyde/trunk/org.apache.ivyde.feature/.project
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.feature/.project?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.feature/.project (added)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.feature/.project Thu Apr 17 07:34:55 2008
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.apache.ivyde.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>

Added: ant/ivy/ivyde/trunk/org.apache.ivyde.feature/build.properties
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.feature/build.properties?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.feature/build.properties (added)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.feature/build.properties Thu Apr 17 07:34:55 2008
@@ -0,0 +1,19 @@
+#	 ***************************************************************
+#	 * Licensed to the Apache Software Foundation (ASF) under one
+#	 * or more contributor license agreements.  See the NOTICE file
+#	 * distributed with this work for additional information
+#	 * regarding copyright ownership.  The ASF licenses this file
+#	 * to you under the Apache License, Version 2.0 (the
+#	 * "License"); you may not use this file except in compliance
+#	 * with the License.  You may obtain a copy of the License at
+#	 * 
+#	 *   http://www.apache.org/licenses/LICENSE-2.0
+#	 * 
+#	 * Unless required by applicable law or agreed to in writing,
+#	 * software distributed under the License is distributed on an
+#	 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#	 * KIND, either express or implied.  See the License for the
+#	 * specific language governing permissions and limitations
+#	 * under the License.
+#	 ***************************************************************
+bin.includes = feature.xml

Propchange: ant/ivy/ivyde/trunk/org.apache.ivyde.feature/build.properties
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/ivy/ivyde/trunk/org.apache.ivyde.feature/build.properties
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Added: ant/ivy/ivyde/trunk/org.apache.ivyde.feature/feature.xml
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.feature/feature.xml?rev=649129&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.feature/feature.xml (added)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.feature/feature.xml Thu Apr 17 07:34:55 2008
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<feature
+      id="org.apache.ivyde.feature"
+      label="Feature Feature"
+      version="2.0.0.qualifier">
+
+   <description url="http://ant.apache.org/ivy/ivyde">
+      Eclipse plugins for Ivy
+   </description>
+
+   <license url="http://www.apache.org/licenses/LICENSE-2.0">
+      Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+&quot;License&quot;); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+&quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+   </license>
+
+   <plugin
+         id="org.apache.ivyde.eclipse"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"/>
+
+   <plugin
+         id="org.apache.ivy"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>

Propchange: ant/ivy/ivyde/trunk/org.apache.ivyde.feature/feature.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/ivy/ivyde/trunk/org.apache.ivyde.feature/feature.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: ant/ivy/ivyde/trunk/org.apache.ivyde.feature/feature.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml