Initial commit of Sigil contribution. (FELIX-1142)


git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@793581 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/sigil/bld-ivy/test/dependence/dependee/build.xml b/sigil/bld-ivy/test/dependence/dependee/build.xml
new file mode 100644
index 0000000..925d95a
--- /dev/null
+++ b/sigil/bld-ivy/test/dependence/dependee/build.xml
@@ -0,0 +1,135 @@
+<?xml version="1.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
+  "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="dependee" default="run" xmlns:ivy="antlib:org.apache.ivy.ant">
+    <!-- some variables used -->
+    <property name="lib.dir" value="${basedir}/lib" />
+    <property name="build.dir" value="${basedir}/build" />
+    <property name="classes.dir" value="${build.dir}/classes" />
+    <property name="src.dir" value="${basedir}/src" />
+
+    <!-- ivy properties used -->
+    <property name="ivy.settings.dir" value="../settings" />
+    <property file="${ivy.settings.dir}/ivysettings.properties" />
+
+    <!-- paths used for compilation and run -->
+    <path id="lib.path.id">
+	<fileset dir="${lib.dir}" />
+    </path>
+    <path id="run.path.id">
+	<path refid="lib.path.id" />
+	<path location="${classes.dir}" />
+    </path>
+    
+    <property name="ivy.jar.file"
+	     value="/opt/apache-ivy-2.0.0/ivy-2.0.0.jar"/>
+
+    <!-- ================================= 
+          target: init
+         ================================= -->
+    <target name="init">
+      <taskdef resource="org/apache/ivy/ant/antlib.xml"
+		    uri="antlib:org.apache.ivy.ant"
+		    classpath="${ivy.jar.file}"/>
+      <ivy:settings file="${ivy.settings.dir}/ivysettings.xml" />
+
+	<taskdef name="sigil.bundle"
+	  classname="org.cauldron.bld.ant.BundleTask"
+	  classpath="${basedir}/../../../target/sigil-ivy-plugin.jar"/>
+    </target>
+
+    <!-- ================================= 
+          target: resolve              
+         ================================= -->
+    <target name="resolve" depends="init"
+    	description="--> resolve and retrieve dependencies with ivy">
+        <ivy:retrieve />
+    </target>
+
+    <!-- ================================= 
+          target: report              
+         ================================= -->
+    <target name="report" depends="resolve" description="--> generates a report of dependencies">
+        <ivy:report todir="${build.dir}"/>
+    </target>
+	
+    <!-- ================================= 
+          target: compile              
+         ================================= -->
+    <target name="compile" depends="resolve" description="--> description">
+        <mkdir dir="${classes.dir}" />
+        <javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="lib.path.id" />
+    </target>
+    
+    <!-- ================================= 
+          target: run
+         ================================= -->
+    <target name="run" depends="compile" description="--> compile and run the project">
+        <java classpathref="run.path.id" classname="standalone.Main"/>
+    </target>
+    
+    <!-- ================================= 
+          target: jar              
+         ================================= -->
+    <target name="jar" depends="compile" description="--> make a jar file for this project">
+        <propertyfile file="${classes.dir}/version.properties">
+	        <entry  key="version" type="int" operation="+" default="0" />
+		</propertyfile>
+        <property file="${classes.dir}/version.properties" />
+
+	<!--
+        <jar destfile="${build.dir}/${ant.project.name}.jar">
+            <fileset dir="${classes.dir}" />
+        </jar>
+	-->
+
+        <sigil.bundle destpattern="${build.dir}/[id].[ext]"
+		classpathref="run.path.id" />
+
+    </target>
+
+    <!-- ================================= 
+          target: publish              
+         ================================= -->
+    <target name="publish" depends="jar" description="--> publish this project in the ivy repository">
+        <property name="revision" value="${version}"/>
+        <delete file="${build.dir}/ivy.xml"/>
+		<ivy:publish artifactspattern="${build.dir}/[artifact].[ext]" 
+			resolver="projects"
+			pubrevision="${revision}" 
+			status="release"
+		/>
+        <echo message="project ${ant.project.name} released with version ${revision}" />
+    </target>
+
+
+    <!-- ================================= 
+          target: clean              
+         ================================= -->
+    <target name="clean" description="--> clean the project">
+        <delete includeemptydirs="true">
+            <fileset dir="${basedir}">
+            	<exclude name="src/**" />
+            	<exclude name="build.xml" />
+		    	<exclude name="ivy.xml" />
+		    	<exclude name="sigil.properties" />
+        	</fileset>
+    	</delete>
+    </target>
+</project>